[英]High Load on server due to websocket and Apache
我們有2台服務器(Ubuntu 14.04-4vCPU和12 GB RAM),運行帶有Apache 2.4.7的codeigniter應用程序。 這些服務器也是負載平衡的。 我們平均一次有300位用戶訪問該網站,並且該網站在許多區域都具有刷新功能。 因此我們引入了websockets來減少負載。 但是即使引入了這些,我們也面臨着高負荷。 節點正在這些服務器之一上運行。 啟用mod_status后,我可以看到沒有為Apache打開新的連接。
虛擬主機
<VirtualHost *:443>
ServerName domain.com
ServerAlias www.domain.com
DocumentRoot /var/www/html/domain
SSLEngine on
SSLProxyEngine On
SSLCertificateFile /etc/apache2/ssl/domain-ssl/a.crt
SSLCertificateKeyFile /etc/apache2/ssl/domain-ssl/domain.key
SSLCertificateChainFile /etc/apache2/ssl/domain-ssl/gd_bundle.crt
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/node/socket.io [NC]
RewriteCond %{QUERY_STRING} transport=websocket [NC]
RewriteRule "^/node/socket.io" "ws://IPADDRESS:8080/socket.io/" [P,L]
ProxyPreserveHost On
ProxyRequests off
</VirtualHost>
<Location /node/>
RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC]
RewriteCond %{HTTP:CONNECTION} ^Upgrade$ [NC]
ProxyPass http://IPADDRESS:8080/ connectiontimeout=3 timeout=3 retry=0
ProxyPassReverse http://IPADDRESS:8080/
</Location>
請讓我知道您需要對此進行調查的詳細信息。 謝謝
我為節點和Redis安裝了單獨的服務器,這減少了負載。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.