особенности построения собственной полнофункциональной Im сети

1,294 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,294
On SlideShare
0
From Embeds
0
Number of Embeds
507
Actions
Shares
0
Downloads
23
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

особенности построения собственной полнофункциональной Im сети

  1. 1. Особенности построения собственной полнофункциональной IM -сети Ермаков Игорь
  2. 2. Зачем нужен собственный IM? <ul><li>Уникальный функционал, востребованный на рынке </li></ul><ul><li>Удобный доступ к сервисам портала </li></ul><ul><li>Привязка к собственному сервису </li></ul><ul><li>Дополнительные возможности обратной связи </li></ul>
  3. 3. Уникальный функционал <ul><li>Обмен сообщениями </li></ul><ul><li>Контакт-лист </li></ul><ul><li>Статусы друзей </li></ul><ul><li>Поиск пользователей </li></ul><ul><li>Передача файлов </li></ul><ul><li>Голосовые звонки </li></ul><ul><li>Видео звонки </li></ul>
  4. 4. Варианты <ul><li>XMPP - открытость, универсальность, следование стандартам, готовые парсеры. </li></ul><ul><li>Собственный протокол – гибкость, скорость </li></ul><ul><li>У обоих – отсутствие полноценного масштабируемого решения. </li></ul>
  5. 5. Протокол MRAP <ul><li>Простой бинарный протокол </li></ul><ul><li>Высокая скорость парсинга, </li></ul><ul><li>Простота обработки, </li></ul><ul><li>Низкая вероятность ошибок </li></ul>Type Dlen Magic Данные 44 bytes
  6. 6. Серверная архитектура <ul><li>Монолитный многопоточный автомат </li></ul><ul><li>Одноранговые сервера, соединенные друг с другом </li></ul><ul><li>Авторизация через базу данных </li></ul><ul><li>Постоянное соединение с клиентом </li></ul><ul><li>Хранение сообщений в почтовом ящике </li></ul>
  7. 7. Возможности <ul><li>Авторизация </li></ul><ul><li>Статусы (Presence) </li></ul><ul><li>Сообщения </li></ul><ul><li>Почтовые уведомления </li></ul><ul><li>Поиск Друзей </li></ul><ul><li>SMS </li></ul><ul><li>VOIP . GIPS </li></ul><ul><li>Передача файлов </li></ul><ul><li>ICQ </li></ul><ul><li>Игры </li></ul><ul><li>Аватары </li></ul><ul><li>Скины </li></ul><ul><li>Продвинутый статус </li></ul><ul><li>Ignore и Invisible </li></ul><ul><li>Интеграция с вебом </li></ul><ul><li>Поиск друзей </li></ul>
  8. 8. Mail.Ru Agent Перенаправление Авторизация <ul><li>Контакты , </li></ul><ul><li>Emails, </li></ul><ul><li>Настройки </li></ul>Users DB MySQL Soft Load Balancer Mail.Ru Storage MRIM server MRIM server MRIM server MRIM server Кластер серверов
  9. 9. Mail.Ru Agent типы серверов <ul><li>Софтверный балансировщик </li></ul><ul><li>Передача Видео. Flash Media Server </li></ul><ul><li>Авторизаци. Mysql </li></ul><ul><li>Поиск. Поисковые сервера gogo </li></ul><ul><li>SMS </li></ul>Сервера в кластере <ul><li>Сервер обмена сообщениями </li></ul><ul><li>Сервер WEB -агента </li></ul><ul><li>Сервер веб-статусов </li></ul><ul><li>File proxy </li></ul><ul><li>Voice proxy </li></ul><ul><li>Все сервера имеют постоянное соединение. </li></ul><ul><li>Хранят контакт листы, знание о всех онлайн пользователях в кластере, обратные контакт-листы. </li></ul>Вспомогательные сервера
  10. 10. Поиск пользователей <ul><li>Онлайн-статус </li></ul><ul><li>Регион ( Страна / Город ) </li></ul><ul><li>Пол </li></ul><ul><li>Возраст </li></ul><ul><li>День рождения </li></ul><ul><li>Анкета (Имя, Фамилия, Ник) </li></ul><ul><li>Email </li></ul><ul><li>Знак зодиака </li></ul>
  11. 11. Поиск. Вариант с БД <ul><li>Таблица с большим количеством полей </li></ul><ul><li>Индексы на каждое поле </li></ul><ul><li>Композитные индексы </li></ul><ul><li>Дублирующие таблицы в памяти </li></ul><ul><li>Дублирующие разгружающие реплики </li></ul><ul><li>Большое количество изменений </li></ul><ul><li>Огромное количество выборок </li></ul>
  12. 12. Поиск. Наш вариант MySQL Анкетные данные <ul><li>Users ID </li></ul><ul><li>Найденные анкеты </li></ul>MRIM server MRIM server Кластер серверов Анкетные данные Статистика поиска <ul><li>25 М Доступных записей </li></ul><ul><li>12 М Поисковых запросов </li></ul><ul><li>3 М Запросов онлайн </li></ul>
  13. 13. Mail.Ru Agent . Статистика. Число активных пользователей ( М ) Число сообщений в сутки ( М ) Более 1 миллиона подключений
  14. 14. Спасибо за внимание . Ермаков Игорь yermakov @ corp.mail.ru Ваши вопросы ?

×