大溪水
发帖: 9192 来自: cn
状态: 离线
精品: 2
|
于 2011-06-25 00:37 个人信息 发悄悄话 引用回复 编辑本帖 搜索发帖 复制本帖 收藏本帖 投诉该帖
信上帝得水牛 wrote: 我认为只能在软硬件方面同时着手,改善硬件防火墙和修改源代码一起进行比较好,我只熟悉ASP,JSP,不知道CGI编程里可不可以实现根据数据库新增内容而自动将新的动态页面转化生成静态页面的功能,这样在出现大量访问线程的时候可以极大地减少对硬件资源的消耗;还需要优化Search功能,平时在使用过程中感觉这个功能很消耗资源;再比如增加IP+Cookie方式,这些办法都可以提高速度和安全性。改善服务器的半连接状态,把服务器的丢连接时间减少到30S以内也是个应急的办法,当服务器收到SQL请求,肯定会进入队列,不论连接是否已经断开,而且服务器是并发的,不是顺序执行,这样使得更多的请求进入内存请求,对服务器负担更大。 论坛基本上没办法做静态化的。 linux可用sysctl来设置网络参数,比如ip.cookie可以低于初级ddos。 至于mysql,论坛搜索功能貌似没有,所以通过索引优化提升不会有什么效果。要么就是换论坛系统。 刚才我一直是可以打开帖子但是一发帖就卡住很久后再出来500错误,估计论坛mysql用的是MyISAM引擎,它的主要问题是表锁问题——写操作非常容易导致表锁从而一堆连接被卡住,并且这个引擎在大并发读写下容易发生表损坏(一般可通过表修复来处理)。建议换成InnnoDB引擎,或者换成PostgreSQL数据库。
|