Рубрика «Системы обмена сообщениями» - 21

Как Discord обрабатывает более 1 000 000 push-запросов в минуту с помощью Elixir GenStage - 1
Discord

Discord испытал небывалый рост. Чтобы справиться с ним, нашему отделу разработки досталась приятная проблема — искать способ масштабирования сервисов бэкенда.

В этом деле мы добились большого успеха с помощью одной технологии, которая называется Elixir GenStage.

Идеальный шторм: Overwatch и Pokémon GO

Этим летом наша система мобильных push-уведомлений стала скрипеть от нагрузки. Чат /r/Overwatch перевалил за 25 000 одновременных пользователей, а чат-группы Pokémon GO возникали повсеместно, так что внезапные всплески потока уведомлений стали серьёзной проблемой.
Читать полностью »

Об авторе: Филиппо Валсорда занимается криптографией и TLS, называет себя «послом urandon», входит в криптогруппу компании Cloudflare, поднял известный сервис для тестирования на уязвимость Heartbleed. Вы могли встречать его на конференциях по криптографии и компьютерной безопасности или под ником @FiloSottile на Github и в твиттере

Я отказался от PGP - 1Спустя годы мучений с GnuPG с различным уровнем энтузиазма я пришёл к выводу, что оно не стоит того, и я сдаюсь. По крайней мере относительно концепции долговременных ключей PGP.

Речь не о самой программе gpg и не о криптографических инструментах в принципе. Многие писали на эту тему. Я говорю о модели долговременных ключей PGP, будь она гарантирована сетью доверия, отпечатками открытых ключей или моделью TOFU — неважно. Я говорю о том, что она не подходит для меня лично.
Читать полностью »

Некоторое время назад я обещал «специалистам» службы поддержки Skype/Microsoft опубликовать данную статью. А обещания, как известно, надо исполнять, потому —

Полгода назад мною был написан бот для Skype (само по себе создание бота не было лишено трудностей благодаря неполной документации Microsoft, см. мою статью об этом).

Читать полностью »

Здравствуйте, уважаемые читатели!

В этой статье для новичков, я покажу вам, как легко и просто создать своего бота для Telegram. Писать будем на языке C#. Бот будет коллекционировать картинки, и выдавать их по первому требованию пользователя. Мой вариант бота будет хранить картинки мемов и название у него будет соответствующее.

Кому стало интересно, прошу пожаловать под кат.
Склад мемов или Бот для Telegram — Часть 1 - 1
Читать полностью »

ICQ: 20 лет — не предел - 1

Год назад мы вспоминали, как от релиза к релизу Аська подвергалась пластическим операциям и фейслифтингу. Но сегодня юбилей — ICQ исполняется 20 лет, это не кот чихнул! Вот уже целое поколение выросло вместе с прародительницей мессенджеров. И в честь такого события мы решили посмотреть в ретроспективе, какие технологии применялись в ICQ на протяжении двух десятилетий.
Читать полностью »

Протокол QUIC (название расшифровывается как Quick UDP Internet Connections) — совершенно новый способ передачи информации в интернете, построенный поверх протокола UDP, вместо общепринятого ранее использования TCP. Некоторые люди называют его (в шутку) TCP/2. Переход к UDP — наиболее интересная и мощная особенность протокола, из которой следуют некоторые другие особенности.

Сегодняшний Web построен на протоколе TCP, который был выбран за его надёжность и гарантированность доставки пакетов. Для открытия TCP-соединения используется так называемое «трёхкратное рукопожатие». Это означает дополнительные циклы отправки-приёма сообщений для каждого нового соединения, что увеличивает задержки.

image

Если вы захотите установить защищённое TLS-соединение, придётся переслать ещё больше пакетов.

image

Некоторые инновации, вроде TCP Fast Open, улучшат некоторые аспекты ситуации, но эта технология пока не очень широко распространена.

Протокол UDP, с другой стороны, построен на идее «отправить пакет и забыть о нём». Сообщение, отправленное по UDP, будет доставлено получателю (не гарантированно, с некоторой вероятностью успеха). Яркое преимущество здесь в меньшем времени установки соединения, такой же яркий недостаток — негарантированность доставки или порядка прихода пакетов получателю. Это означает, что для обеспечения надёжности придётся построить некоторый механизм поверх UDP, который гарантирует доставку пакетов.

И здесь на сцену выходит QUIC от Google.
Читать полностью »

Создание машины времени возможно. Эксперименты со временем. Теоретическая часть - 1

Буквально на днях, после прочтения статьи Путешествия во времени и программирование я загорелся идеей об экспериментальных исследованиях, которые позволили бы получить практические ответы на вопросы о перемещении во времени. Но прежде чем переходить к экспериментам, требуется разработать теоретическое обоснование о возможности преодоления времени между прошлым и будущим. Чем собственно я занимался в течении последних дней. Исследование основано на теории относительности Эйнштейна и релятивистских эффектах, попутно затрагивая также квантовую механику и теорию суперструн. Думаю мне удалось получить положительные ответы на поставленные вопросы, подробно рассмотреть скрытые измерения и попутно получить объяснение некоторых явлений, например, природу корпускулярно-волнового дуализма. А также рассмотреть практические способы передачи информации между настоящим и будущем. Если вас тоже волнуют эти вопросы то добро пожаловать под кат.Читать полностью »

Привет! Достаточно часто разработчики и системные администраторы сталкиваются с необходимостью присылать уведомления, например об ошибках или отчёт о работе таска, а у кого-то это финансовый отчёт за день. Тут всё ограничено фантазией и поставленными задачами. Каждый сам выбирает удобный инструмент или пишет что-то своё.

Мне подобная задача встречается практически на всех проектах, с которыми работаю в последние годы. Решил упростить себе жизнь — найти или сделать удобный инструмент для уведомлений.

Определил требования:

  • бесплатно (плату за трафик не учитываем)
  • работает на большинстве популярных платформ
  • групповые и индивидуальные уведомления
  • простая реализация отправки

Читать полностью »

Не откладывайте в почтовый ящик: b2c-мессенджер 2ГИС - 1

В сентябре на 2gis.ru появилась новая фича — b2c-мессенджер для общения с организациями. Чат очень удобен при поиске товара или услуги: можно написать сразу в несколько компаний, не нужно слушать голоса роботов-автоответчиков или ожидать на линии, пока оператор уточнит цену или остаток нужного товара. Выберите компанию, нажмите на иконку сообщения на карточке компании, и откроется чат.

Чтобы сделать мессенджер, нам пришлось немного поразбираться с тем, как вообще работают чаты и что под капотом у «больших братьев» типа WhatsApp или Telegram. Оказалось, всё не так страшно.
Читать полностью »

— Синоним к слову «своенравный»? — раздался голос жены из соседней комнаты.

Треск клавиатуры стих и кот, воспользовавшись паузой, решительно заявил о своем жалком полуголодном существовании, видимо надеясь, что вот сейчас уж точно хозяева наконец-то оторвут свой зад от кресла и покормят несчастного.

— Дык посмотри у этого… как его…
— Да-да, я тоже забыла. Ну так что, скажешь мне синоним?

Но увы, я не ходячая энциклопедия, и даже не ее сидячий вариант, поэтому я не нашел ничего лучше, чем отправить жену гуглить словарь.

Telegram боты: в помощь редактору - 1

Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js