📄Работа №183209

Тема: РАЗРАБОТКА МОДУЛЯ ОБРАБОТКИ HTTP-ЗАПРОСА НА ОСНОВЕ ПРОТОКОЛА WSGI

📝
Тип работы Бакалаврская работа
📚
Предмет информатика
📄
Объем: 49 листов
📅
Год: 2023
👁️
Просмотров: 46
Не подходит эта работа?
Закажите новую по вашим требованиям
Узнать цену на написание
ℹ️ Настоящий учебно-методический информационный материал размещён в ознакомительных и исследовательских целях и представляет собой пример учебного исследования. Не является готовым научным трудом и требует самостоятельной переработки.

📋 Содержание

АННОТАЦИЯ 3
ПЕРЕЧЕНЬ УСЛОВНЫХ ОБОЗНАЧЕНИЙ 4
ВВЕДЕНИЕ 5
1 Анализ 6
1.1 Платформа VDOM 6
1.1.1 VDOM HTTP Layer 8
1.1.2 VDOM Server Module 8
1.2 Основные требования 9
1.2.1 Функциональные тр ебования 9
1.2.2 Нефункциональные требования 9
1.3 Обзор существующих интерфейсов 9
1.3.1 CGI 10
1.3.2 WSGI 10
1.3.3 ASGI 11
1.3.4 Итог обзора интер фейсов 12
1.4 Обзор веб-серверов 12
1.4.1 uWSGI 12
1.4.2 Gunicorn 13
1.4.3 Nginx-unit 13
1.4.4 Итог обзора веб-серверов 14
2 Проектирование 15
2.1. Стандарт WSGI 17
2.2. Архитектура модуля WSGI 18
3 Реализация 23
3.1 Веб-сервер 23
3.1.1 Использование X-Sendfile 26
3.2 Модуль WSGI 27
4 Нагрузочное тестирование 32
4.1 Выбор ПО для нагрузочного тестирования 32
4.1.1 Yandex.Tank 32
4.1.2 NeoLoad 33
4.1.3 Apache Jmeter 35
4.1.4 Итог выбора ПО для тестирования 36
4.2 Проведение тестирования 36
4.2.1 VDOM сервер без WSGI модуля 39
4.2.2 VDOM сервер с WSGI модулем и uWSGI сервером 41
4.3 Итог тестирования 43
ЗАКЛЮЧЕНИЕ 44
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ И ЛИТЕРАТУРЫ 45

📖 Введение

Технологии постоянно находятся в процессе развития, создаются новые решения для веб-серверов, веб-фреймворки. Возникает проблема совместимости веб-серверов между веб-фреймворками. Если у разработчика появится желание сменить какую-либо из частей, то ему сперва нужно подумать о совместимости, что может существенно уменьшить доступный выбор.
Стандарт WSGI позволяет освободить разработчика от выбора по совместимости, достаточно иметь поддержку WSGI с обеих сторон. Существующие сервера, имеющие поддержку стандарта WSGI, предоставляют шир окий функционал.
Платформа VDOM (Visual Dynamic Object Model) имеет VDOM сервер - собственная реализация веб-сервера, с помощью которого происходит размещение и управление веб-приложениями, на данном сервере отсутствует поддержка WSGI и эффективная реализация обработки http-запросов.
Целью данной работы является создание WSGI-модуля для внедрения в VDOM server, что позволит перейти от собственной реализации веб-сервера на любой другой, поддерживающий протокол WSGI, и имеющий гораздо больший функционал. В данной работе также будет организована работа нового модуля с веб-сервером uWSGI.
Для выполнения поставленной цели был составлен список задач:
1. Изучение существующих технологий и решений;
2. Проектирование новой архитектуры;
3. Разработка модуля;
4. Интеграция модуля в сервер runtime;
5. Проведение нагрузочного тестирования.

Возникли сложности?

Нужна качественная помощь преподавателя?

👨‍🎓 Помощь в написании

✅ Заключение

В результате данной работы, были достигнуты следующие результаты:
1. Разработан модуль WSGI;
2. Произведена интеграция модуля в VDOM сервер;
3. Организована работа модуля с сервером uWSGI;
4. Проведено нагрузочное тестирование модуля.
Основной функционал модуля WSGI был полностью реализован.
В дальнейшем планируется глубже интегрировать модуль WSGI, добавив поддержку мультипоточности для веб-приложений.

Нужна своя уникальная работа?
Срочная разработка под ваши требования
Рассчитать стоимость
ИЛИ

📕 Список литературы

1. WYSIWYG - википедия [Электронный ресурс] URL: https://ru.wikipedia.org/wiki/WYSIWYG (дата обращения 25.10.2022)
2. Скачивание файлов с помощью X-Sendfile - Русские Блоги [Электронный ресурс] URL: https://russianblogs.com/article/2703828096/ (дата обращения 25.10.2022)
3. HTTP requests - IBM Documentation [Электронный ресурс] URL: https://www.ibm.com/docs/en/cics-ts/5.3?topic=protocol-http-requests (дата обращения 01.11.2022)
4. PEP 333 - Python Web Server Gateway Interface v1.0 [Электронный ресурс] URL: https://peps.python.org/pep-0333/ (дата обращения 3.11.2022)
5. Korboulewsky N. V.D.O.M. BOX Technology V.D.O.M. / V.D.O.M. v2 - W.H.O.L.E.V1 - E2.V.D.O.M. v1 - 7 rue Saint Henri 31000 Toulouse, 2007. - P.26
6. Common Gateway Interface - Wikipedia [Электронный ресурс] URL: http s://en.wikip edia. org/wiki/Common_Gateway_Interface (дата обр ащения 03.11.2022)
7. Learn about WSGI - WSGI.org [Электронный ресурс] URL: https://wsgi.readthedocs.io/en/latest/learn.html (дата обращения 04.11.2022)
8. Introduction to ASGI: Emergence of an Async Python Web Ecosystem - Florimond Manca [Электронный ресурс] URL: https://florimond.dev/en/posts/2019/08/introduction-to-asgi-async-python-web/
(дата обращения 05.11.2022)
9. The uWSGI project — uWSGI 2.0 documentation [Электронный ресурс] URL: https://uwsgi-docs.readthedocs.io/en/latest/ (дата обращения 10.11.2022)
10. What Is Gunicorn, and What Does It Do? • vsupalov.com [Электронный ресурс] URL: https://vsupalov.com/what-is-gunicorn/ (дата обращения 12.11.2022)
11. Universal Web App Server - NGINX Unit [Электронный ресурс] URL: https://unit.nginx.org/ (дата обращения 15.11.2022)
12. Yandex/yandex-tank: Load and p erformance benchmark tool [Электронный ресурс] URL: https://github.com/yandex/yandex-tank (дата обращения 20.11.2022)
13. Tricentis NeoLoad for enterprise Perfomance Testing [Электронный р есур с] URL http s://www.tricentis. com/p roducts/p erformance-testing-neolo ad (дата обращения 20.11.2022)
14. Apache JMeter - Apache JMeter™ [Электронный ресурс] URL https://jmeter.apache.org/ (дата обращения 20.11.2022)

🖼 Скриншоты

🛒 Оформить заказ

Работу высылаем в течении 5 минут после оплаты.

©2026 Cервис помощи студентам в выполнении работ