Тюним производительность взаимодействия

Проблемы с производительностью традиционно принято решать тюнингом, но что обычно мы тюним? Схему и запросы к БД, бизнес-логику или (для SPA) код на клиенте, так? Однако мы обычно забываем о скорости механизма обмена сообщениями, который используется в наших приложениях – что, если «узкое место» находится именно там? И что, если код, который мы вынуждены писать, выглядит громоздко и даже уродливо, если его тяжело поддерживать, модифицируя и расширяя? На этом уровне мы обычно используем JMS, XML/SOAP и REST/JSON, но насколько они быстры, надёжны и оптимальны для используемых каналов связи? В этом докладе речь пойдёт о тюнинге систем обмена сообщениями – о современных компактных форматах, таких как MsgPack и CBOR, как альтернатив JSON`у и XML/SOAP`у, современных альтернативах JMS: Rabbit, Active, ZeroMQ и Apache Kafka. Мы увидим на реальном примере, как можно просто и удобно использовать их из нового Java 8 Stream API, что бы наш код сохранял лаконичность, простоту, модифицируемость и расширяемость.

Доклад ориентирован прежде всего на разработчиков проектов в сфере интеграции, однако будет интересен и всем остальным разработчикам систем класса Enterprise.


Вячеслав Лапин, EPAM

Более 10 лет в IT, в таких областях, как интеграция, автоматизация бизнес-процессов, телеком и Internet-проекты. Предмет профессиональной страсти – системы обмена сообщениями. Так же интересуюсь функциональными ЯП, особенно Clojure`ом, базами NoSQL, предпочитаю Agile-практики в разработке.