Articles of 性能

HTTP基本authentication,读取密码文件和性能

我很想知道在Apache或者lighttpd或者nginx这样的web服务器上使用HTTP Basic Auth的性能影响是什么。 我想象的瓶颈是服务器实际读取文件来validation用户。 在我看来,阅读文件来validation用户的成本与该文件中的用户数量成正比。 我有的问题是: 1.是否有特定数量的用户在基本身份validation通过文件开始大幅下降,或者是线性相对于文件中的用户数量? 2.鉴于http的无状态性质,如果用户已经通过Web服务器的HTTP基本身份validation在一个请求上进行了身份validation: – 是否只是在每个请求中转发凭据,Web服务器必须每次parsing密码文件以确定这是否是来自有效用户的请求? 要么 – 在后续的请求中获取它在http头中使用的令牌,从而允许服务器避免再次parsing密码文件? 提前致谢

Nginx作为负载均衡器的瓶颈?

我们有一个stream行的iPhone应用程序,人们对决一个Wordfeud。 我们今天有近1 M的注册用户。 在高峰时段,应用获得了非常长的响应时间,而且还有相当多的超时时间。 我们试图find瓶颈,但是很难做到这一点。 所有服务器上的CPU,内存和I / O都低于50%。 这个问题只在高峰期出现。 我们的设置 1 VPS with nginx (1.1.9) as load balancer 4 front servers with Ruby (1.9.3p194) on Rails (3.2.5) / Unicorn (4.3.1) 1 database server with PostgreSQL 9.1.5 数据库日志没有显示足够长的请求时间来解释nginx错误日志中显示的所有超时。 我们还试图直接针对前台服务器构build和运行应用程序(在所有其他用户都在运行负载平衡器的高峰时段)。 令人惊讶的是,即使在高峰时段,绕过负载平衡器的应用程序也很快成为子弹。 NGINX设置 worker_processes=16 worker_connections=4096 multi_accept=on LINUX设置 fs.file-max=13184484 net.ipv4.tcp_rmem="4096 87380 4194304" net.ipv4.tcp_wmem="4096 16384 4194304" net.ipv4.ip_local_port_range="32768 61000" 为什么应用程序绕过负载平衡器这么快? nginx可以作为负载均衡器成为瓶颈吗? […]

在Django上减less用户CPU时间

我实际上是在一个Django网站上工作,使用djangodebugging工具条,在一个数字海洋小dropplet。 这一切都适用于Postgresql,Django,gunicorn和Nginx。 有什么纠缠我的是,大约2.5秒,大部分是关于用户CPU时间 。 Resource Value User CPU time 2271.395 msec System CPU time 86.142 msec Total CPU time 2357.537 msec Elapsed time 2483.655 msec Context switches 8 voluntary, 469 involuntary Browser Chronology domainLookup 0 (+0) connect 0 (+0) request 3 (+-1419272753107) response 5653 (+-1419272758757) domLoading 5669 (+-1419272758773) domInteractive -1419272753104 domContentLoadedEvent -1419272753104 (+0) loadEvent -1419272753104 […]

如何用MemcachedconfigurationNGINX来提供HTML

我想用MemcachedconfigurationNGINX来提供HTML 我发现NGINX下面的Memcached模块: http://wiki.nginx.org/NginxHttpMemcachedModule 但我似乎无法让NGINX通过阅读上面的教程来从Memcached提供我的HTML(例如index.html)文件。 任何人都知道NGINXconfiguration应该是什么打赌它从Memcached提供HTML?

基于Cookie的nginx速度控制?

我在我的Nginx服务器中有这个configuration: limit_rate 500k; location ~ \.mp4$ { mp4; limit_rate_after 4m; limit_rate 90k; limit_req zone=one burst=5; limit_conn addr 2; } 我想要的速度和爆炸控制的平均Cookie(不能改变的URL,因为我需要它在一定的长度/结构) 有没有办法把这样的东西? if($cookie_burst){ limit_rate_after {$cookie_burst}m;//how can I use cookie value here along with m[Megabytes]? } 编辑:我cahnged请求mp4文件的URL,添加一个突发参数,现在在Nginx的configuration文件中使用$ arg_burst。 但是,我可以testing$ arg_burst,但是我不能像这样使用它: 这工作: if ($arg_burst = "1m"){ limit_rate_after 1m; } 这不是:(: if ($arg_burst != ""){ limit_rate_after $arg_burst; } 任何解决方法,把我想要的任何价值,在飞行?

有多lessNGinxredirect?

我正在研究一个以新闻为中心的网站,这个网站已经有很多年了,并且正在稳步地增加页面redirect。 目前我们有大约375个redirect,每月增加5-10个。 我知道NGinx在处理redirect方面速度非常快,但是大概必须有一些redirect会以一种有意义的方式影响性能,如果我知道有多less个redirect,我会感觉更好。 数百? 成千上万的? 百万? 我们能够通过在Memcachedcaching热门页面一两分钟来处理大量的stream量(减less数据库负载,这是一个明显的瓶颈),但是NGinx仍然需要路由该stream量。 这是我应该关心的吗? 高stream量网站有多lessredirect? [编辑:build议,我也发布了这个在ServerFault ] [编辑:这里是我在ServerFault上接受的答案] redirect并不是真正的问题,因为没有后端联系。 只是Nginx。 只是Nginx真的很快。 如每秒超过10000个连接速度 在担心Nginx是否可以处理它之前,您应该更担心一个混乱的configuration文件。

通过FastCGI连接从NGINX到PHP的时间

这里有一个32GB内存的六核心。 我有nginx 0.7.X和php5-fpm与php5.3(来自dotdeb.org)。 重要的configuration文件: nginx.conf user www-data; worker_processes 2; events { worker_connections 4096; } location ~ \.php$ { fastcgi_pass unix:/tmp/fcgi.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name; include fastcgi_params; } PHP5-fpm.conf <value name="listen_address">/tmp/fcgi.sock</value> <value name="max_children">1500</value> <value name="max_requests">5000</value> 就这样。 与阿普替补(ab -n 1000 -c 1000 http:// url .. )我可以在250ms内为1000个并发连接请求一个静态文件(大小为10kB)。 Document Path: /inc/helper-swf.js Document Length: 10217 bytes Concurrency Level: 1000 […]

子资源服务器提示标题不起作用

尝试使用子资源服务器提示,但似乎不起作用。 在下面的屏幕上,您可以看到具有“链接”标题的主页面,稍后将获取这两个资源。 正如你看到的发起者是parsing器,而不是parsing任何内容之前收到的头。 所以结果和我们使用这个头之前一样:( 任何想法为什么? 全尺寸: http : //i.stack.imgur.com/2ey2K.png 全尺寸: http : //i.stack.imgur.com/fHXCM.png

其他解决scheme,而不是NGINX的.htaccess

我正在开发一个更大的基于Web的项目,可能要在稍后的阶段(或更多)处理每分钟几百个请求。 我从来没有和NGINX一起工作过,但是用apache读取比较数据,似乎我应该走NGINX路线。 阅读它,我总是看到“.htaccess”文件是一个懒惰的解决scheme。 现在,我想避免依靠.htaccess文件,但我的问题是如何? 我的意思是 – 如果.htaccess被认为是懒惰的,黑客的解决scheme,干净的解决scheme到底是什么问题: redirect到所有特定的URL(除了CSS /图像,这东西),到一个单一的PHP文件(顺便说一句,这是否有一个性能的影响,如果像index.php单个文件处理的URL和包括所需的模板?我应该避免,并分成几十个文件?) 读取CSS文件中的PHP标签(“AddHandler application / x-httpd-php .css …”) 另一层login(.htaccess身份validation,用那个小popup窗口) 这基本上是我使用.htaccess的三件事情。 特别是第一个,基本上使整个应用程序工作。 但是对于这个项目,我真的想保持清洁,并且是最新的解决scheme。 我有什么可能? 我在哪里可以提高我的performance? 我怎样才能解决上面提到的三个问题,使用.htaccess来发展NGINX? 非常感谢您的时间和精力。

EC2 Micro Instance只能使用nginx服务器处理多less用户?

我有一个iOS社交应用程序。 这个应用程序与我的服务器进行交谈,经常更新和检索。 大部分小文本为JSON。 有时用户会上传我的web-server上传到S3 Bucket 。 web-server不会检索任何图片或任何其他types的文件 EC2 Micro Ubuntu 13.04实例运行PHP 5.5 , PHP-FPM和NGINX 。 caching由Elastic Cache使用Redis处理,数据库连接到一个单独的m1.large MongoDB服务器。 内容可以相当dynamic,因为新闻源可以是dynamic的。 我是关于configurationNGINX性能的总新手,我想看看我是否已经正确configuration了我的服务器。 我正在使用Siege来testing我的服务器负载,但是我无法find任何types的统计信息,说明我的系统能够处理多less个并发用户/页面负载,以便我知道我已经做了正确或错误的事情。 我的服务器能够处理多less个并发用户/页面加载? 我猜如果我不能从经验中得出统计数据,那么对我的micro instance应该是简单的,中等的和极端的? 我知道还有其他几个问题提出类似的问题。 但是没有一个提供类似的系统的估计,这是我正在寻找的。