开发者

Optimise Lighttpd for lots of connections serving small files

I have a Lighttpd(1.4.28) web server running on Centos 5.3 and PHP 5.3.6 in fastcgi mode.

The server itself is a quad core with 1gb ram and is used to record viewing statistics for a video platform.

Each request consists of a very small bit of xml being posted and the receiving php script performs a simple INSERT or UPDATE mysql query. The php returns a very small response to acknowledge the request.

These requests are performed very frequently and i need the system to be able to handle as many concurrent connections as possible at a high rate of requests/second.

I hav开发者_如何学运维e disabled keep alive as only single requests will be made and so I don't need to keep connections open.

One of the things that concern me is that in server-status I am seeing a lot of connections in the 'read' state. I take it this is controlled by server.max-read-idle which is set to 60 by default? Is it ok to change this to something like 5 as I am seeing the majority of connections being kept open for long periods of time.

Also what else can I do to optimise lighttpd to be able to server lots of small requests

This is my first experience setting up lighttpd as I thought it would be more suitable than apache in this case.

Thanks

Irfan


I believe the problem is not in the webserver, but in your PHP application, especially in MySQL part.

I would replace lighty with apache + mod_php, and mysql with some NoSQL such Redis, which will queue the INSERT requests to the database. Then I would write a daemon / crontab that insert the data in MySQL.

We had such thing before, but instead of Redis, we created TXT files in one directory.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜