Skip to content

let-robots-reign/highload-web-server

Repository files navigation

highload-web-server

Архитектура

Python + prefork + coroutines

  • открывается socket
  • заранее создается заданное количество воркеров, которые слушают socket
  • когда процесс-воркер получает клиента по socket'у, создаётся корутина (asyncio), которая обрабатывает запрос клиента

Запуск

Python Web Server:

sudo docker build -t webserver . && sudo docker run -p 80:3000 webserver

Nginx:

cp -r http-test-suite/httptest nginx
sudo docker build -t webserver:nginx ./nginx && sudo docker run -p 80:3000 webserver:nginx

Тестирование

Прохождение всех тестов:

all_passed

ab-тестирование:

  1. Python Web Server RPS: 656 python_ab

  2. Nginx RPS: 1087 nginx_ab

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published