https://github.com/let-robots-reign/highload-web-server
https://github.com/let-robots-reign/highload-web-server
Last synced: 8 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/let-robots-reign/highload-web-server
- Owner: let-robots-reign
- Created: 2021-10-24T08:15:09.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2021-10-25T15:15:15.000Z (about 4 years ago)
- Last Synced: 2025-01-13T08:12:35.127Z (10 months ago)
- Language: Python
- Size: 243 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# 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
```
## Тестирование
### Прохождение всех тестов:

### ab-тестирование:
1. Python Web Server
RPS: 656

2. Nginx
RPS: 1087
