Articles of web server

使用uWSGI的内置负载均衡器和nginx

我有一个通过wsgi公开的python应用程序,并将其部署到世界。 没有从它提供的静态资产。 该应用程序将被部署到一台机器。 我将使用uwsgi来服务wsgi应用程序,并可以考虑两个选项: 通过机器上的单个uwsgi实例来服务,(弄清楚并用好多的工人/进程来旋转可能会启动2 *#个内核) 在同一台机器上运行多个uwsgi实例,每个实例都有一个worker,位于nginx之后。 在nginx后面运行单个uwsgi实例 有一件事要记住,服务器已经在负载均衡器后面了。 如果我有静态资产,我会考虑试用#2或#3。 因为没有静态文件,所以这似乎是矫枉过正。 在这种情况下,在nginx后面运行uwsgi会有什么好处吗? 反对一个单一的uswgi服务器与适当数量的工人?

基准testing和负载testingWeb服务器的提示?

我试图基准和加载testing各种networking服务器设置(mod_php与PHP为FastCGI,最大/最小工人/线程configuration,等等)。 我以ab开头,但会对其他推荐的工具感兴趣。 Web服务器是一个Linux服务器,但是如果需要,我可以从我的台式机上运行基于Windows的testing工具。 我也对技术方面的任何build议感兴趣。 例如: 我假设我会从单独的一台机器上运行,而不是在networking服务器上运行同一台机器,或者作为后台进程在桌面机器上运行。 它是否正确? 同样,我认为通过将该机器放置在私有IP上的同一个数据中心,可以减lessnetworking问题对testing的影响。 我想要设置的不仅仅是一个单一的文件,以获得任何forms的真正的testing(我可以甚至做到这一点与AB?)。 任何其他提示?

Web服务器基准testing的最佳实践

我有一个networking服务器,我希望基准之前,我做了一些优化,看看它们是否有任何效果。 但是,我想知道什么是基准testing的最佳实践? 例如,一位同事告诉我用本地networking上的另一台机器对机器进行基准testing,以消除networkingstream量问题。 不过,我正在考虑使用非现场机器进行基准testing,因为我想了解优化是否会在实际情况中产生任何影响。 我认为,许多速度调整处理优化networking连接。 例如,在Apache中,KeepAlive值允许浏览器使用单个TCP连接来请求多个对象,而不是打开和closures每个资源的连接。 如果testing是在本地networking连接上完成的,那么调整就不会有太大的改变,对吧? 与最小化js / css和从HTML中删除空格/注释一样。 另一方面,我确实看到互联网stream量的问题,使得基准testing每次都是一致的。 我真的不知道数字的变化是从调整,还是在两者之间的服务器增加或减less的负载。 谁是对的? 基准testing的最佳做法是什么? 我们应该这样做吗? tl; dr – 我应该使用本地networking/异地/或两者的机器进行基准testing吗?

如何分析哪个虚拟主机帐户最贪婪?

你好,如果这太不好意思,真抱歉。 我试图像平时一样自己find答案,但是我失败了。 当我需要分析哪些虚拟主机占用大部分系统资源时(尤其是内存),最佳做法是什么? top或ps aux似乎毫无用处,因为所有虚拟主机相关进程都在相同的apache用户下运行 怎么样的日志分析 – 这是这样的? 如果这些信息对您有任何价值,我已经为每个虚拟主机分配了访问日志。 这个问题肯定是有关系的,但并没有帮助我的问题: 通过VirtualHost跟踪Apache 如果你需要更多信息,请告诉我…我会在身边。 提前致谢。

保持Web应用程序和Web服务器分离的明显好处?

我们开发和维护Web应用程序; 并在我们目前的设置; 我们正在使用数据库服务器,应用程序服务器和Web服务器的三层系统。 到现在为止还挺好。 我们面临的问题是, 理论上这个设置是为了帮助我们平衡这些机器之间的负载,并根据需要插入新的碎片。 在实践中,这种对我们后台networking的压力正在成为一个严重的瓶颈。 还有服务静态文件的问题; 由于我们目前的设置; 这些必须由应用程序提供服务(耗尽可用于处理传入请求的FastCGI进程),或者首先在运行应用程序的机器上使用Web服务器作为本地代理。 那么问题就变成了: 只需将Web和应用程序服务器合并为一个; 它带来的configuration简化; 和访问的直接性(本地套接字而不是TCP); 以及通过Web服务器提供静态文件的能力提高可能会提高性能; 还是有我错过的开销因素?

Windows Server 2008 R2以蜗牛的速度运行

这里真的很奇怪。 我们主要的networking服务器已经开始以蜗牛的速度运行,绝对没有理由我们可以看到。 即使在重新启动机器之后,当内存不足或没有使用内存,并且CPU使用率在0到30%之间波动时,简单的任务(如打开Internet Explorer或等待“我的电脑”打开)也将永远持续下去 。 我们可以看到没有任何程序占用系统资源…机器本身只是performance出非常缓慢的行为。 我从来没有见过一台机器这样做。 已经build立了很多安全更新,所以我们决定让Windows安装它们。 当我们在重新启动时浏览历史logging时,他们失败了错误代码800706BA 。 我不知道这是否可能是相关的。 任何帮助在这个问题将不胜感激。 正如标题中提到的,我们正在运行Windows Server 2008 R2计算机。 它也运行SQL Server和IIS 。 它有16GB的内存和一个体面的四核处理器。 到现在为止也没有问题,我们也没有改变。 谢谢你的帮助。

每分钟测量一次“加载时间(毫秒)”

我有一个运行在虚拟服务器上的apache,即使在检索静态的JPG或PNG文件的时候,效果也很糟糕。 这只会偶尔发生一次,所以我很难将其logging到托pipe公司。 有没有一个好的工具,可以轻松地存储每分钟一个Web服务器上的文件“加载时间毫秒”? 也许甚至一个shell脚本一行,我可以运行在“屏幕”会议?

隐藏/replaceNginx位置标题?

我正在尝试通过一项PCI合规性testing,并且我正在得到一个“高风险漏洞”。 问题描述如下: Web服务器所在机器上的信息有时会包含在网页的标题中。 在某些情况下,这些信息可能包含防火墙或代理服务器(如本地IP地址)后面的本地信息。 看起来Nginx正在响应: Service: https Received: HTTP/1.1 302 Found Cache-Control: no-cache Content-Type: text/html; charset=utf-8 Location: http://ip-10-194-73-254/ Server: nginx/1.0.4 + Phusion Passenger 3.0.7 (mod_rails/mod_rack) Status: 302 X-Powered-By: Phusion Passenger (mod_rails/mod_rack) 3.0.7 X-Runtime: 0 Content-Length: 90 Connection: Close <html><body>You are being <a href="http://ip-10-194-73-254/">redirect ed</a>.</body></html> 我不是专家,所以请纠正我,如果我错了,但从我所收集的,我认为问题是Location标题返回http://ip-10-194-73-254/ ,这是一个私人地址,当它应该返回我们的域名(这是ravn.com)。 所以,我猜我需要隐藏或replaceLocation标题不知何故? 我是一个程序员,而不是服务器pipe理员,所以我不知道该怎么办…任何帮助将不胜感激! 另外,我可以补充说,我们运行的服务器不止一台,所以configuration需要转移到任何具有私有地址的服务器上。

ApacheTop喜欢Nginx的测量命中内容的工具?

Nginx是否有类似ApacheTop的测量命中内容的工具? 我想从Web服务器日志(Nginx)中找出最受欢迎的URL

在Apacheconfiguration(httpd.conf)中,多个<Directory>节是如何工作的?

例如,如果我的'/etc/apache2/httpd.conf'如下所示: <Directory /> AllowOverride None </Directory> <Directory /home> AllowOverride FileInfo </Directory> 后面的AllowOverride规则将覆盖/home目录的前任。 那部分是清楚的。 但是,如果我的httpd.conf文件看起来像这样会发生什么? <Directory /var/www/example.com/public> AllowOverride None Options -MultiViews <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / […] </IfModule> […] </Directory> <Directory /var/www/example.com/public/wp-content/cache/minify> <IfModule mod_rewrite.c> # WHY IS 'RewriteEngine On' REQUIRED? RewriteEngine On RewriteBase /wp-content/cache/minify/ RewriteRule […] </IfModule> </Directory> 问题: 是不是在第一个<Directory>部分中的RewriteEngine On也应用于第二个<Directory>部分,考虑到后者是一个子目录? 但是我注意到我需要在第二个<Directory>部分添加RewriteEngine On规则。 这是否意味着我也应该将第一个<Directory>部分的所有常用规则复制到第二个<Directory>部分? 例如, […]