• A
  • A
  • A
  • ABC
  • ABC
  • ABC
  • А
  • А
  • А
  • А
  • А
Regular version of the site

Implementation of Kafka Message Broker Driver in Userver Framework

Student: Fyodor Osetrov

Supervisor: Borevskiy Andrey

Faculty: Faculty of Computer Science

Educational Programme: Applied Mathematics and Information Science (Bachelor)

Final Grade: 10

Year of Graduation: 2024

Many modern services are implemented in the concept of microservice architecture: the application functionality is divided into parts, for each of which a separate service component is created. On the one hand, in comparison with a monolithic architecture, microservice brings a lot of convenience to the development and support of services, but on the other hand, this approach requires powerful infrastructure tools: libraries and protocols for interaction between any two parts of the service, monitoring the status of each of its components, as well as services for asynchronous event processing, produced by microservices (for example, logs, task launch requests, or events related to user actions). To deal with the latter, message queues or, more generally, platforms for streaming data processing are often used. At the moment, the most widely used service for streaming data processing is Apache Kafka. Kafka provides two main independent entities through which interaction between users and a reliable storage of distributed append-only logs takes place: producers who can send arbitrary messages to various topics, and consumers who can subscribe to read a specific set of topics. This paper will describe the implementation of the driver for Apache Kafka in userver. userver is a high-performance asynchronous Open Source C++ framework used to write microservices in Yandex.Go, as well as some services not in Yandex.

Full text (added May 20, 2024)

Student Theses at HSE must be completed in accordance with the University Rules and regulations specified by each educational programme.

Summaries of all theses must be published and made freely available on the HSE website.

The full text of a thesis can be published in open access on the HSE website only if the authoring student (copyright holder) agrees, or, if the thesis was written by a team of students, if all the co-authors (copyright holders) agree. After a thesis is published on the HSE website, it obtains the status of an online publication.

Student theses are objects of copyright and their use is subject to limitations in accordance with the Russian Federation’s law on intellectual property.

In the event that a thesis is quoted or otherwise used, reference to the author’s name and the source of quotation is required.

Search all student theses