Тема: Миттєві повідомлення. Який принцип роботи ?

Привіт привіт. Давно мене зацікавила тема обміну миттєвими повідомленнями, ну як наприклад у facebook чи vk.
Мені більш менш все ясно, крім одного. Як реалізована система у клієнта, наприклад тільки юзер А написав повідомлення юзеру Б, то в юзера Б воно зразу ж з’явилося. За рахунок чого реалізована така система ?

2

Re: Миттєві повідомлення. Який принцип роботи ?

Почитайте

Подякували: Адріян Ігорович1

3

Re: Миттєві повідомлення. Який принцип роботи ?

принцип в лоб наприклад без оптимізації. Кожну секунду іде запит на сервак і опитується чи є нове повідомлення)

4

Re: Миттєві повідомлення. Який принцип роботи ?

Правильна відповідь websocket`и

Re: Миттєві повідомлення. Який принцип роботи ?

funivan написав:

принцип в лоб наприклад без оптимізації. Кожну секунду іде запит на сервак і опитується чи є нове повідомлення)

В мене була така ідея, проте такий метод - неефективний.

6

Re: Миттєві повідомлення. Який принцип роботи ?

funivan написав:

принцип в лоб наприклад без оптимізації. Кожну секунду іде запит на сервак і опитується чи є нове повідомлення)

Ляжете після сотні користувачів)

Singularity написав:

Правильна відповідь websocket`и

Неправильна. При чому тут протокол, коли Вас питають про реалізацію? Та і не всі браузери підтримують.

Ця система набагато складніша ніж здається ззовні) Тут потрібно асинхронно обробляти\зберігати повідомлення користувачів з розрахунком на навантаження.

Чесно кажучи, РНР для цього не дуже підходить. Для пхп є Ratchet, який кажуть не погано веде себ під навантаженням з libevent. Але тут тільки вебсокети.

Для пітона є Торнадо, прекрасно тримає нагрузку.
Ну і nodeJS. Здається xmpp ВК реалізований з його використанням.

Задача клієнта тут проста - получати повідомлення і відправляти їх назад. Вся жара на бекенді)

pew pew :D
Блоґ
Подякували: Адріян Ігорович1

7

Re: Миттєві повідомлення. Який принцип роботи ?

Ляжете після сотні користувачів)

памятаю дивився конференцію highload чувак каже "які умови" =) отже тут в умовах не було що 100 користувачів ;)
А так я згідний xmpp протокол класна штука і залишилось знайти тілкьи його реалізацію на відповідній мові ;)

8 Востаннє редагувалося miroslav.chandler (05.12.2013 12:23:30)

Re: Миттєві повідомлення. Який принцип роботи ?

funivan написав:

Ляжете після сотні користувачів)

памятаю дивився конференцію highload чувак каже "які умови" =) отже тут в умовах не було що 100 користувачів ;)
А так я згідний xmpp протокол класна штука і залишилось знайти тілкьи його реалізацію на відповідній мові ;)

я образно)
Хоча як які користувачі і яке залізо)

pew pew :D
Блоґ

9

Re: Миттєві повідомлення. Який принцип роботи ?

Я теж задавався питанням реалізації миттєвих повідомлень. Прийшов до сокетів, і навіть зробив приклад простенького чату, але далі діло не пішло.

По-перше, поки що не зміг сходу реалізувати websockets в себе за допомогою веб-серваків Apache, Nginx. Лише для теста спробував це діло, поставивши собі платний Java веб-сервер. Досить цікаво, але покищо не дуже доступно...

По-друге, особливої потреби це реалізовувати (враховуючи складність) я не побачив.

P.S. А взагалі є навіть спец.сайт

10

Re: Миттєві повідомлення. Який принцип роботи ?

я би копав в сторону xmpp, там потім і звук і відео при потребі можна підключити.