Прокси Socket.io через Apache и его производительность
Я пытаюсь настроить сервер для игры Socket.IO, но у нас также будет небольшая целевая страница в php, обслуживаемая через Apache.
Мне удалось заставить сервер работать, сделав прокси от Apache до приложения Socket.IO. Apache работает на:80 и узел на:8080, который будет закрыт для публики. Прокси-сервер выполняется в подкаталоге Apache. Конфигурация выглядит следующим образом:
<VirtualHost *:443>
LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
ServerAdmin XXXXX
ServerName XXXXX
DocumentRoot /var/www/html/XXXXX
ErrorLog /var/log/error.log
CustomLog /var/log/access.log combined
SSLCertificateFile XXXXX
SSLCertificateKeyFile XXXXX
Include XXXXX
SSLCertificateChainFile XXXXX
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/socket.io [NC]
RewriteCond %{QUERY_STRING} transport=websocket [NC]
RewriteRule /(.*) ws://localhost:8080/$1 [P,L]
ProxyRequests Off
ProxyPreserveHost On
ProxyVia Full
<Proxy *>
Require all granted
</Proxy>
ProxyPass /game http://localhost:8080 retry=0
ProxyPassReverse /game http://localhost:8080
ProxyPass /socket.io http://localhost:8080/socket.io
ProxyPassReverse /socket.io http://localhost:8080/socket.io
</VirtualHost>
</IfModule>
Теперь мой вопрос заключается в следующем:
Повлияет ли это на производительность, и возможно ли, что правило перезаписи для apache будет слишком большим, чтобы его можно было обрабатывать, скажем, максимум для 10 тысяч игроков?
Если это возможно, есть ли другой лучший выбор для конфигурации?