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

 
0
 
Python
ava
Aleksey1987 | 17.03.2013, 23:26
Всем привет. Хочу написать чат для локальной сети. Не могу продумать логику поведения приложения, да и просто привык на бумажке сначала проектировать, а потом уже кодить. В прикрепленном архиве документ MS Word с картинками-схемами как я это себе представляю. Сильно не смейтесь. Я подобную программу первый раз пишу.
Kommentare (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
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
advanced
Absenden