Details

Title: Разработка приложения для обработки задач с глобальной системой блокировки: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_03 «Разработка программного обеспечения»
Creators: Чупрова Ольга Яковлевна
Scientific adviser: Круглов Сергей Константинович
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и технологий
Imprint: Санкт-Петербург, 2022
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: веб приложение; очередь задач; Python; web API; PostgreSQL; web application; task queue
Document type: Bachelor graduation qualification work
File type: PDF
Language: Russian
Level of education: Bachelor
Speciality code (FGOS): 09.03.04
Speciality group (FGOS): 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2022/vr/vr22-3728
Rights: Доступ по паролю из сети Интернет (чтение)
Additionally: New arrival
Record key: ru\spstu\vkr\19914

Allowed Actions:

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

Group: Anonymous

Network: Internet

Annotation

Тема выпускной квалификационной работы: «Разработка приложения для обработки задач с глобальной системой блокировки». Основной целью данной работы является разработка приложения для организации и контроля выполнения задач по обработке видео с механизмами очереди и системой глобальных блокировок. Данное приложение должно функционирования в рамках инфраструктуры компании, которая предоставляет услуги онлайн образования. Особенность данной работы состоит в том, что разрабатывается не весь сервис дистанционного обучения иностранным языкам, а добавляются новые функции к уже существующему проекту с использованием интерфейса межпрограммного взаимодействия. Задачи, которые решались в ходе работы: Проанализированы требования. Разрабатывалась архитектура программного обеспечения. Сделан обзор различных механизмов глобальных блокировок. Выбраны подходящие технологии. Разработано приложение. Приложение было реализовано на базе языка программирования Python, с использованием библиотек Flask, SQLAlchemy, celery. В качестве систем хранения данных применялись PostgreSQL и RabbitMQ.

The topic of the final qualifying work: «Development of an application for taskprocessing with global lock system». The main purpose of the work is to create an application to organize and con-trol tasks execution with global lock system. This system should function as a part ofthe infrastructure of the organization working in the field of online education. Themain distinction of this work is that the goal is not to create the whole end-to-end sys-tem for online language education, but to add new functions to the already existingsystem through adding an application programming interface. Tasks that were solved during the work: The requirements area were analyzed; Software architecture was developed; Different global locking solutions were reviewed; Suitable technologies were selected. An application was developed. The application was developed using Python programming language with thehelp of extra libraries Flask, SQLAlchemy, celery. As the storage systems Post-greSQL and RabbitMQ were used.

Document access rights

Network User group Action
ILC SPbPU Local Network All Read
External organizations N2 All Read
External organizations N1 All
Internet Authorized users SPbPU Read
Internet Authorized users (not from SPbPU, N2) Read
Internet Authorized users (not from SPbPU, N1)
-> Internet Anonymous

Table of Contents

  • ВВЕДЕНИЕ
    • Актуальность
    • Постановка задачи и формулирование требований
  • Глава 1. РАЗРАБОТКА АРХИТЕКТУРЫ
    • 1.1 Анализ требований организации
    • 1.2 Выбор компонентов архитектуры
    • 1.3 Схема архитектуры приложения
  • Глава 2. ВЫБОР ОПТИМАЛЬНЫХ ТЕХНОЛОГИЙ
  • Глава 3. СИСТЕМЫ ГЛОБАЛЬНЫХ БЛОКИРОВОК
    • 3.1 Общая информация
    • 3.2 Механизм блокировки Python Threading Lock
    • 3.3 Механизм блокировки Python Multiprocessing Lock
    • 3.4 Механизм блокировки PostgreSQL Lock
    • 3.5 Механизм блокировки RedLock
    • 3.6 Выбор механизма блокировки
  • Глава 4. РЕАЛИЗАЦИЯ ПРИЛОЖЕНИЯ
    • 4.1 Программный интерфейс
    • 4.2 Хранение данных
    • 4.3 Серверная часть
    • 4.4 Интерфейс отладки и документирования
  • ЗАКЛЮЧЕНИЕ
  • СПИСОК ИСПОЛЬЗУЕМЫХ ИСТОЧНИКОВ
  • ПРИЛОЖЕНИЕ 1
  • ПРИЛОЖЕНИЕ 2
  • ПРИЛОЖЕНИЕ 3

Usage statistics

stat Access count: 1
Last 30 days: 1
Detailed usage statistics