Details

Title Реализация асинхронного выполнения событий в высоконагруженном распределенном веб-приложении: выпускная квалификационная работа магистра: направление 09.04.04 «Программная инженерия» ; образовательная программа 09.04.04_01 «Технология разработки и сопровождения качественного программного продукта»
Creators Тузов Григорий Дмитриевич
Scientific adviser Воинов Никита Владимирович
Other creators Локшина Екатерина Геннадиевна
Organization Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint Санкт-Петербург, 2020
Collection Выпускные квалификационные работы; Общая коллекция
Subjects отложенное выполнение событий; асинхронное выполнение событий; сериализация; высоконагруженная система; распределенная система; веб-приложение; очередь сообщений; социальная сеть; кодогенерация; delayed event execution; asynchronous event; execution; serialization; highload; distributed system; web-application; event queue; social network; code generation
Document type Master graduation qualification work
File type PDF
Language Russian
Level of education Master
Speciality code (FGOS) 09.04.04
Speciality group (FGOS) 090000 - Информатика и вычислительная техника
Links Отзыв руководителя; Рецензия; Отчет о проверке на объем и корректность внешних заимствований
DOI 10.18720/SPBPU/3/2020/vr/vr20-907
Rights Доступ по паролю из сети Интернет (чтение, печать, копирование)
Record key ru\spstu\vkr\7178
Record create date 7/23/2020

Allowed Actions

Action 'Read' will be available if you login or access site from another network

Action 'Download' will be available if you login or access site from another network

Group Anonymous
Network Internet

Тема выпускной квалификационной работы: «Реализация асинхронного выполнения событий в высоконагруженном распределенном веб-приложении». Данная работа посвящена реализации отложенного выполнения событий в большом, высоконагруженном и значимом для рунета проекте — Одноклассники, на основе хорошо показавших себя практик из отрасли. Задачи, которые решались в ходе работы: Анализ существующих решений. Исследовались как внешние конкуренты, так и конкуренты во внутренней кодовой базе Одноклассников. Реализация своего решения, интегрированного в кодовую базу и инфраструктуру Одноклассников. Запуск решения на продакшене. Работа проведена в ООО «Mail.ru Group». Было произведено командное тестирование на разных стадиях запуска разработанного решения. Получены результаты в виде статистики по использованию решения для выполнения запросов пользователей социальной сети. В результате было разработано решение, которое использует эффективное хранилище очередей для передачи информации между узлами распределенной системы, хранилище данных, основанное на Cassandra 2.0 для хранения кодогенерированных сериализаторов данных. Получившееся решение решает проблему с сериализацией / десериализацией данных, когда версии передаваемых классов на разных узлах системы разные, а также превосходит старых внутри проектных конкурентов, главным образом, с точки зрения производительности и удобства использования разработчиками.

The subject of the graduate qualification work is implementation of asynchronous event execution in high-loaded distributed web-application. The given study is denoted to an implementation of a delayed event execution in Odnoklassniki [1] – a huge, high-loaded and fundamental project to Runet. The solution was developed based on the best-practices in industry. The paper set following goals: Analyzing of the existing solutions to a problem. Both external competitors and competitors in the internal code base of Odnoklassniki were investigated; Carring out the solution implementation inside the infrastructure of Odnoklassniki; Launching of the solution in production. The work was fulfilled inside Ltd «Mail.ru Group». The team testing of a developed solution on different steps of its lifecycle was carried out. The results were obtained in the form of statistics on using the solution to handle social network users requests. As a result, the data storage based on Cassandra 2.0 and used for an efficient queue storage to transfer information between the nodes of a distributed system was applied in order to store data serializers. It uses code generation for convenient serialization / deserialization of information, transmitted to perform events. The developed solution also solves the problem of data serialization / deserialization, when the versions of the transmitted classes on different nodes of the distributed system are different. It also beats old inner solutions, mainly, in terms of performance and convenience of usage for developers.

Network User group Action
ILC SPbPU Local Network All
Read Print Download
Internet Authorized users SPbPU
Read Print Download
Internet Anonymous

Access count: 24 
Last 30 days: 0

Detailed usage statistics