title: ÐÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ðµ ÑÐ¾Ð±ÑÑÐ¸Ð¹Ð½Ð¾Ð³Ð¾ Ð¿Ð¾Ð´Ñ Ð¾Ð´Ð° Ð² Ð¼Ð¸ÐºÑÐ¾ÑÐµÑÐ²Ð¸ÑÐ½Ð¾Ð¹ Ð°ÑÑ Ð¸ÑÐµÐºÑÑÑÐµ Ð¿ÑÐ¸ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐµ Ð·Ð°ÑÐ¸ÑÐµÐ½Ð½Ð¾Ð¹ ÑÐ¸ÑÑÐµÐ¼Ñ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð¾ÐºÑÐ¼ÐµÐ½ÑÐ°Ð¼Ð¸
title: Ð²ÑÐ¿ÑÑÐºÐ½Ð°Ñ ÐºÐ²Ð°Ð»Ð¸ÑÐ¸ÐºÐ°ÑÐ¸Ð¾Ð½Ð½Ð°Ñ ÑÐ°Ð±Ð¾ÑÐ° Ð¼Ð°Ð³Ð¸ÑÑÑÐ°
titleType: Subtitle
title: The application of event management approaches within a microservice architecture to develop a Protected Document Management System
Creators: name: ÐÐ¼Ð¸ÑÑÐ¸ÐµÐ²Ð°, ÐÐµÑÐ°
Publisher: name: Ð¡Ð°Ð½ÐºÑ-ÐÐµÑÐµÑÐ±ÑÑÐ³ÑÐºÐ¸Ð¹ Ð¿Ð¾Ð»Ð¸ÑÐµÑÐ½Ð¸ÑÐµÑÐºÐ¸Ð¹ ÑÐ½Ð¸Ð²ÐµÑÑÐ¸ÑÐµÑ ÐÐµÑÑÐ° ÐÐµÐ»Ð¸ÐºÐ¾Ð³Ð¾
Year: 2024
Subjects: ÐÑÑÐ¸ÑÐ»Ð¸ÑÐµÐ»ÑÐ½ÑÐµ Ð¼Ð°ÑÐ¸Ð½Ñ ÑÐ»ÐµÐºÑÑÐ¾Ð½Ð½ÑÐµ Ð¿ÐµÑÑÐ¾Ð½Ð°Ð»ÑÐ½ÑÐµ
ÑÐ¾Ð±ÑÑÐ¸Ð¹Ð½Ð¾-Ð¾ÑÐ¸ÐµÐ½ÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð½Ð°Ñ Ð°ÑÑ Ð¸ÑÐµÐºÑÑÑÐ°
Ð¼Ð¸ÐºÑÐ¾ÑÐµÑÐ²Ð¸ÑÑ
event-driven architecture
microservices

description: Ð Ð´Ð°Ð½Ð½Ð¾Ð¹ Ð´Ð¸ÑÑÐµÑÑÐ°ÑÐ¸Ð¸ ÑÐ°ÑÑÐ¼Ð°ÑÑÐ¸Ð²Ð°ÐµÑÑÑ Ð¿ÑÐ¸Ð¼ÐµÐ½ÐµÐ½Ð¸Ðµ ÑÐ¾Ð±ÑÑÐ¸Ð¹Ð½Ð¾-Ð¾ÑÐ¸ÐµÐ½ÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð½Ð¾Ð³Ð¾ Ð¿Ð¾Ð´ÑÐ¾Ð´Ð° Ð² ÑÐ°Ð¼ÐºÐ°Ñ Ð¼Ð¸ÐºÑÐ¾ÑÐµÑÐ²Ð¸ÑÐ½Ð¾Ð¹ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÑ Ð´Ð»Ñ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸ Ð·Ð°ÑÐ¸ÑÐµÐ½Ð½Ð¾Ð¹ ÑÐ¸ÑÑÐµÐ¼Ñ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð¾ÐºÑÐ¼ÐµÐ½ÑÐ°Ð¼Ð¸. Ð ÑÐ°Ð±Ð¾ÑÐµ ÑÐ°ÑÑÐ¼Ð°ÑÑÐ¸Ð²Ð°ÑÑÑÑ ÑÐµÐ¾ÑÐµÑÐ¸ÑÐµÑÐºÐ¸Ðµ Ð¾ÑÐ½Ð¾Ð²Ñ ÑÐ¾Ð±ÑÑÐ¸Ð¹Ð½Ð¾-Ð¾ÑÐ¸ÐµÐ½ÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð½Ð¾Ð¹ Ð°ÑÑÐ¸ÑÐµÐºÑÑÑÑ Ð¸ Ð¼Ð¸ÐºÑÐ¾ÑÐµÑÐ²Ð¸ÑÐ¾Ð², Ð²ÑÐ´ÐµÐ»ÑÑÑÑÑ ÐºÐ»ÑÑÐµÐ²ÑÐµ ÐºÐ¾Ð¼Ð¿Ð¾Ð½ÐµÐ½ÑÑ Ð¸ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÑ, ÑÐ°ÐºÐ¸Ðµ ÐºÐ°Ðº Apache Kafka, RabbitMQ Ð¸ Amazon Kinesis Ð´Ð»Ñ Ð¾Ð±ÑÐ°Ð±Ð¾ÑÐºÐ¸ ÑÐ¾Ð±ÑÑÐ¸Ð¹, Ð° ÑÐ°ÐºÐ¶Ðµ Prometheus, Grafana Ð¸ ÑÑÐµÐº ELK Ð´Ð»Ñ Ð¼Ð¾Ð½Ð¸ÑÐ¾ÑÐ¸Ð½Ð³Ð°. Ð ÑÐ°Ð±Ð¾ÑÐµ ÑÐ°ÐºÐ¶Ðµ ÑÐ°ÑÑÐ¼Ð°ÑÑÐ¸Ð²Ð°ÑÑÑÑ Ð²Ð¾Ð¿ÑÐ¾ÑÑ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑÐ½Ð¾ÑÑÐ¸, Ð²ÐºÐ»ÑÑÐ°Ñ SSL/TLS, ACL Ð¸ Ð°ÑÑÐµÐ½ÑÐ¸ÑÐ¸ÐºÐ°ÑÐ¸Ñ Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ ÑÐµÑÑÐ¸ÑÐ¸ÐºÐ°ÑÐ¾Ð², Ð° Ð² Ð±ÑÐ´ÑÑÐµÐ¼ Ð¿Ð»Ð°Ð½Ð¸ÑÑÐµÑÑÑ Ð²Ð½ÐµÐ´ÑÐµÐ½Ð¸Ðµ Ð°Ð²ÑÐ¾ÑÐ¸Ð·Ð°ÑÐ¸Ð¸ Ð½Ð° Ð¾ÑÐ½Ð¾Ð²Ðµ ÑÐ¾ÐºÐµÐ½Ð¾Ð² Ð¸ ÑÐ¸ÑÑÐ¾Ð²ÑÑ Ð¿Ð¾Ð´Ð¿Ð¸ÑÐµÐ¹. Ð Ð´Ð¸ÑÑÐµÑÑÐ°ÑÐ¸Ð¸ Ð¾Ð¿Ð¸ÑÐ°Ð½Ð¾ Ð²Ð½ÐµÐ´ÑÐµÐ½Ð¸Ðµ Ð¿ÑÐ°ÐºÑÐ¸Ðº DevOps Ð¸ ÐºÐ¾Ð½Ð²ÐµÐ¹ÐµÑÐ¾Ð² CI/CD Ñ Ð¸ÑÐ¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°Ð½Ð¸ÐµÐ¼ ÑÐ°ÐºÐ¸Ñ Ð¸Ð½ÑÑÑÑÐ¼ÐµÐ½ÑÐ¾Ð², ÐºÐ°Ðº Git, Jenkins, Docker, Ansible Ð¸ OpenShift, Ð° ÑÐ°ÐºÐ¶Ðµ Ð¿ÑÐµÐ´ÑÑÐ°Ð²Ð»ÐµÐ½Ð° Ð¿Ð¾Ð´ÑÐ¾Ð±Ð½Ð°Ñ ÑÑÑÐ°ÑÐµÐ³Ð¸Ñ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ, Ð²ÐºÐ»ÑÑÐ°ÑÑÐ°Ñ Ð¼Ð¾Ð´ÑÐ»ÑÐ½ÑÐµ ÑÐµÑÑÑ, Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¾Ð½Ð½ÑÐµ ÑÐµÑÑÑ Ñ Ð¸ÑÐ¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°Ð½Ð¸ÐµÐ¼ Ð¿Ð¾Ð»ÑÐ·Ð¾Ð²Ð°ÑÐµÐ»ÑÑÐºÐ¾Ð³Ð¾ ÑÑÐµÐ¹Ð¼Ð²Ð¾ÑÐºÐ° Kotlin Ð¸ ÑÑÑÐ½Ð¾Ðµ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ðµ. ÐÑÐ°ÐºÑÐ¸ÑÐµÑÐºÐ¸Ðµ Ð¿ÑÐ¸Ð¼ÐµÑÑ Ð¸ ÑÑÐ°Ð³Ð¼ÐµÐ½ÑÑ ÐºÐ¾Ð´Ð° Ð¸Ð»Ð»ÑÑÑÑÐ¸ÑÑÑÑ Ð¿ÑÐ¾ÑÐµÑÑÑ ÑÐ°Ð·ÑÐ°Ð±Ð¾ÑÐºÐ¸ Ð¸ ÑÐ°Ð·Ð²ÐµÑÑÑÐ²Ð°Ð½Ð¸Ñ, Ð¿Ð¾Ð´ÑÐµÑÐºÐ¸Ð²Ð°Ñ Ð²Ð°Ð¶Ð½Ð¾ÑÑÑ Ð°Ð²ÑÐ¾Ð¼Ð°ÑÐ¸Ð·Ð°ÑÐ¸Ð¸, Ð½ÐµÐ¿ÑÐµÑÑÐ²Ð½Ð¾Ð¹ Ð¸Ð½ÑÐµÐ³ÑÐ°ÑÐ¸Ð¸ Ð¸ Ð²ÑÐµÑÑÐ¾ÑÐ¾Ð½Ð½ÐµÐ³Ð¾ ÑÐµÑÑÐ¸ÑÐ¾Ð²Ð°Ð½Ð¸Ñ Ð´Ð»Ñ Ð¿Ð¾Ð´Ð´ÐµÑÐ¶Ð°Ð½Ð¸Ñ Ð½Ð°Ð´ÐµÐ¶Ð½Ð¾Ð¹ Ð¸ Ð±ÐµÐ·Ð¾Ð¿Ð°ÑÐ½Ð¾Ð¹ ÑÐ¸ÑÑÐµÐ¼Ñ ÑÐ¿ÑÐ°Ð²Ð»ÐµÐ½Ð¸Ñ Ð´Ð¾ÐºÑÐ¼ÐµÐ½ÑÐ°Ð¼Ð¸.
description: This thesis explores the application of event management approaches within a microservice architecture to develop a Protected Document Management System. It delves into the theoretical foundations of event-driven architecture and microservices, highlighting key components and tools such as Apache Kafka, RabbitMQ, and Amazon Kinesis for event handling, and Prometheus, Grafana, and the ELK stack for monitoring. The work also covers security considerations, including SSL/TLS, ACLs, and certificate-based authentication, with future plans for token-based authorization and digital signatures. The thesis outlines the implementation of DevOps practices and CI/CD pipelines using tools like Git, Jenkins, Docker, Ansible, and OpenShift, and presents a detailed testing strategy incorporating unit tests, integration tests with a custom Kotlin framework, and manual testing. Practical examples and code snippets illustrate the development and deployment processes, emphasizing the importance of automation, continuous integration, and comprehensive testing in maintaining a reliable and secure document management system.