Обновление 7 февраля
После выходных я оперативно подготовил игровое событие (квест-игру) перед открытием, чтобы создать у пользователей общий опыт и чувство объединения.
Если у вас есть время и желание, попробуйте принять участие и оставить обратную связь. Напишите мне личное сообщение в Telegram.
<%%%%|==========>
Иконки
Наконец закончена работа над собственным набором иконок. Теперь 89
иконок будут создавать атмосферу для каждого. Большая благодарность Дмитрию Скирте за его великолепную графику.
Вопрос производительности
Тестовый стенд развернут на одной из самых дешёвых VPS и я переживал, на сколько нужно расшириться. По этому посмотрел сколько сейчас может одновременно обслуживать текущий сайт и обновлённый.
Для этого использовал консольную утилиту под названием Apache Benchmark. Если вы используете Linux или Mac, то скорее всего он уже будет установлен на вашей машине.
Как использовать его? Предположим, мы хотим увидеть, насколько быстро сайт может обрабатывать 100 запросов, при этом одновременно выполняется максимум 10 запросов:
ab -n 100 -c 10 https://laravel.su/docs/8.x/container
Проверяю документацию, потому что нет смысла обращаться к главной странице, так как скорее всего на ней нет ни какой существенных тормозов ввиде обращений к базе данных.
Результатом команды будет сгенерирован примерно следующий вывод:
Benchmarking laravel.su (be patient).....done
Server Software: nginx
Server Hostname: laravel.su
Server Port: 443
SSL/TLS Protocol: TLSv1.2,ECDHE-RSA-CHACHA20-POLY1305,2048,256
Server Temp Key: ECDH P-384 384 bits
TLS Server Name: laravel.su
Document Path: /docs/8.x/container
Document Length: 65592 bytes
Concurrency Level: 10
Time taken for tests: 7.725 seconds
Complete requests: 100
Failed requests: 0
Total transferred: 6592700 bytes
HTML transferred: 6559200 bytes
Requests per second: 12.95 [#/sec] (mean)
Time per request: 772.458 [ms] (mean)
Time per request: 77.246 [ms] (mean, across all concurrent requests)
Transfer rate: 833.47 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 276 289 13.0 284 346
Processing: 254 416 96.3 399 800
Waiting: 203 361 95.1 348 738
Total: 535 705 104.3 687 1138
Percentage of the requests served within a certain time (ms)
50% 687
66% 713
75% 738
80% 760
90% 808
95% 920
98% 1134
99% 1138
100% 1138 (longest request)
Это очень полезная информация, сайт возвращал запросы со скоростью 12.95 запроса в секунду, самый быстрый запрос составлял 535 мс, самый медленный 1138 мс.
Теперь выполним схожую проверку для обновленного варианта:
Benchmarking laravel.orchid.software (be patient).....done
Server Software: Caddy
Server Hostname: laravel.orchid.software
Server Port: 443
SSL/TLS Protocol: TLSv1.2,ECDHE-ECDSA-AES128-GCM-SHA256,256,128
Server Temp Key: ECDH X25519 253 bits
TLS Server Name: laravel.orchid.software
Document Path: /docs/10.x/container
Document Length: 182758 bytes
Concurrency Level: 10
Time taken for tests: 7.255 seconds
Complete requests: 100
Failed requests: 0
Total transferred: 18478200 bytes
HTML transferred: 18275800 bytes
Requests per second: 13.78 [#/sec] (mean)
Time per request: 725.454 [ms] (mean)
Time per request: 72.545 [ms] (mean, across all concurrent requests)
Transfer rate: 2487.42 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 228 248 13.4 247 286
Processing: 292 417 89.1 398 857
Waiting: 144 261 87.9 240 686
Total: 525 665 95.8 644 1144
Percentage of the requests served within a certain time (ms)
50% 644
66% 664
75% 679
80% 698
90% 730
95% 957
98% 982
99% 1144
100% 1144 (longest request)
Значения очень схожи, по этому это сильно успокоило меня, что не нужно переживать о том, что не смогу обеспечить доступ на сайт.