Корпоративный чат на Python

 
0
 
Python
ava
Aleksey1987 | 17.03.2013, 23:26
Всем привет. Хочу написать чат для локальной сети. Не могу продумать логику поведения приложения, да и просто привык на бумажке сначала проектировать, а потом уже кодить. В прикрепленном архиве документ MS Word с картинками-схемами как я это себе представляю. Сильно не смейтесь. Я подобную программу первый раз пишу.
Comments (5)
ava
ilnur | 18.03.2013, 07:09 #
привет. я тоже не спец.
но тоже когда то хотел написать чат, аську и т.п. для отдела на работе. но дальше идеи дело не пошло.

я бы тоже так сделал. вот только до демона не додумался бы.
smile
ava
Aleksey1987 | 18.03.2013, 09:02 #
Да я тоже не сам если честно. Где-то наткнулся на такую идею про переключение серверов. Только там про демон не говорилось, а просто сервера опрашивали друг друга. Но мне показалось так проще сделать smile
ava
qoq | 20.03.2013, 00:29 #
Aleksey1987, это в десять раз проще написать на erlang. Клиенты, я надеюсь веб? Транспорт websockets? Берите cowboy, экзампл из репозитория, накидайте pub-sub, или возьмите dps.
ava
bilbobagginz | 20.03.2013, 22:46 #
Ваша архитектура (по рисунку) использует базу данных как средство хранения сообщений.

Вам придется для каждого сообщения создавать запись в БД, и потом пересылать его адресату.
т.е. если бд накрылась тазиком, чата нет.

Потом, когда вы поймете, что это дороговато, вы начнете дублировать пересылку сообщения с клиента А на БД + клиенту Б.
И в конце концов придете к реализациии Peer-to-Peer.
(и зас*ет вам это БД).

Задача реализации и формального описания архитектуры асинхронной системы быстрых сообщений - задача не из простых.
Рекомендую поковырять реализации сервера и клиента xmpp, и если очень чешутся руки, реализовать самому.

Если же интересует результат, рекоменую взять готовую или полусырую реализацию, создать удобный интерфейс, и иметь работающий чат (за пару недель).

Если интересует результат, но в рамках ограниченного времени, вероятно что продуктивнее будет взять обертки готовых библиотеки сервера xmpp и напр. питоновую обертку для libpurple, и фокусироваться на разработке удобного интерфейса и стабильных компонентов.

ava
Aleksey1987 | 21.03.2013, 01:22 #
Цитата (bilbobagginz @ 20.3.2013,  22:46)
Ваша архитектура (по рисунку) использует базу данных как средство хранения сообщений.



Вам придется для каждого сообщения создавать запись в БД, и потом пересылать его адресату.

т.е. если бд накрылась тазиком, чата нет.



Потом, когда вы поймете, что это дороговато, вы начнете дублировать пересылку сообщения с клиента А на БД + клиенту Б.

И в конце концов придете к реализациии Peer-to-Peer.

(и зас*ет вам это БД).



Задача реализации и формального описания архитектуры асинхронной системы быстрых сообщений - задача не из простых.

Рекомендую поковырять реализации сервера и клиента xmpp, и если очень чешутся руки, реализовать самому.



Если же интересует результат, рекоменую взять готовую или полусырую реализацию, создать удобный интерфейс, и иметь работающий чат (за пару недель).



Если интересует результат, но в рамках ограниченного времени, вероятно что продуктивнее будет взять обертки готовых библиотеки сервера xmpp и напр. питоновую обертку для libpurple, и фокусироваться на разработке удобного интерфейса и стабильных компонентов.

Спасибо за развернутый ответ. Учту обязательно. Прям глаза открылись smile
Please register or login to write.
Firm of day
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Contributors
advanced
Submit