【问题标题】:Optimise Lighttpd for lots of connections serving small files针对服务小文件的大量连接优化 Lighttpd
【发布时间】:2011-09-30 07:12:54
【问题描述】:

我有一个 Lighttpd(1.4.28) Web 服务器,在 Centos 5.3 和 PHP 5.3.6 上以 fastcgi 模式运行。

服务器本身是具有 1gb 内存的四核,用于记录视频平台的观看统计数据。

每个请求都包含一小部分正在发布的 xml,接收的 php 脚本执行一个简单的 INSERT 或 UPDATE mysql 查询。 php 返回一个很小的响应来确认请求。

这些请求非常频繁地执行,我需要系统能够以每秒的高请求率处理尽可能多的并发连接。

我已禁用保持活动,因为只会发出单个请求,因此我不需要保持连接打开。

我担心的一件事是,在服务器状态下,我看到很多连接处于“读取”状态。我认为这是由默认设置为 60 的 server.max-read-idle 控制的?是否可以将其更改为 5,因为我看到大多数连接长时间保持打开状态。

我还能做些什么来优化 lighttpd 以便能够处理大量小请求

这是我设置 lighttpd 的第一次体验,因为我认为在这种情况下它比 apache 更合适。

谢谢

伊尔凡

【问题讨论】:

    标签: php linux centos lighttpd


    【解决方案1】:

    我相信问题不在于网络服务器,而在于您的 PHP 应用程序,尤其是 MySQL 部分。

    我会用 apache + mod_php 替换 lighty,用一些 NoSQL 替换 mysql,比如 Redis,它将对数据库的 INSERT 请求进行排队。然后我会写一个守护进程/crontab,将数据插入 MySQL。

    我们以前也有这样的东西,但是我们在一个目录中创建了 TXT 文件,而不是 Redis。

    【讨论】:

    • 我知道是 2 年后,但看看这个,我在写到这里后编写了几个 mo - github.com/nmmmnu/Micro-HTTPD,从那时起我们就使用它来进行一次自动完成。
    猜你喜欢
    • 1970-01-01
    • 2016-08-14
    • 1970-01-01
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 2013-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多