作 者:稻草人
最后更新:03/08/2007
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
http://bbs.gamearena.cn/thread-2772-1-1.html
关键词:CentOS Apache MySQL PHP ZendOptimizer phpMyAdmin LAMP 源码编译
内容摘要:
本文参考了网上高手的教程和结合自己的实践经验而来。网上关于LAMP安装配置的教程虽然很多,但长篇大论的让你抓不到重点,短小精悍的对新手来说又难了点,所以初次配置时最容易在某个环节卡住,从而打击了学习的激情或者耽误了宝贵的时间。于是就整理出这个学习笔记。如果文中有错误的地方,恳请大家指正,不要误导了初学者。
最后更新:03/08/2007
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本声明
http://bbs.gamearena.cn/thread-2772-1-1.html
关键词:CentOS Apache MySQL PHP ZendOptimizer phpMyAdmin LAMP 源码编译
内容摘要:
本文参考了网上高手的教程和结合自己的实践经验而来。网上关于LAMP安装配置的教程虽然很多,但长篇大论的让你抓不到重点,短小精悍的对新手来说又难了点,所以初次配置时最容易在某个环节卡住,从而打击了学习的激情或者耽误了宝贵的时间。于是就整理出这个学习笔记。如果文中有错误的地方,恳请大家指正,不要误导了初学者。
可以使用上面提到的各种技术来提升Apache服务器的性能,同时也可以使用增加硬件性能的方法来提高Web 服务器的性能。但是单台服务器的性能总是有限的,尤其是服务器上需要运行大量的CGI程序时,不可能仅靠上面的调整服务器设置的方法来建立一个面向整个Internet,如同Yahoo等站点一样的高负载Web站点。
为了建立一个高负载的Web站点,必须使用多服务器的分布式结构。上面提到的使用代理服务器和Web服务器相结合,或者两个Web服务器相互协作的方式也属于多服务器的结构,但在这些多服务器的结构中,每个服务器所起到的作用是不同的,属于非对称的体系结构。非对称的服务器结构中每个服务器起到的作用是不同的,例如一个服务器用于提供静态网页,而另一个用于提供动态网页等等,这样就使得网页设计时就需要考虑不同服务器之间的关系,一旦要改变服务器之间的关系,就会使得某些网页出现连接错误,不利于维护,可扩展性也差。
另外一种多服务器的设计结构为对称结构,在对称结构中每台服务器都具备等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。然后,可以通过某种技术,将外部发送来的请求均匀分配到对称结构中的每台服务器上,接收到连接请求的服务器都独立回应客户的请求。在这种结构中,将外部请求均匀分配到服务器上的技术称为负载均衡技术,由于建立内容完全一致的Web服务器并不困难,因此负载均衡技术就成为建立一个高负载Web站点的关键性技术。
为了建立一个高负载的Web站点,必须使用多服务器的分布式结构。上面提到的使用代理服务器和Web服务器相结合,或者两个Web服务器相互协作的方式也属于多服务器的结构,但在这些多服务器的结构中,每个服务器所起到的作用是不同的,属于非对称的体系结构。非对称的服务器结构中每个服务器起到的作用是不同的,例如一个服务器用于提供静态网页,而另一个用于提供动态网页等等,这样就使得网页设计时就需要考虑不同服务器之间的关系,一旦要改变服务器之间的关系,就会使得某些网页出现连接错误,不利于维护,可扩展性也差。
另外一种多服务器的设计结构为对称结构,在对称结构中每台服务器都具备等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。然后,可以通过某种技术,将外部发送来的请求均匀分配到对称结构中的每台服务器上,接收到连接请求的服务器都独立回应客户的请求。在这种结构中,将外部请求均匀分配到服务器上的技术称为负载均衡技术,由于建立内容完全一致的Web服务器并不困难,因此负载均衡技术就成为建立一个高负载Web站点的关键性技术。
一、为何要DDOS? 随着Internet互联网络带宽的增加和多种DDOS黑客工具的不断发布,DDOS拒绝服务攻击的实施越来越容易,DDOS攻击事件正在成上升趋势。出于商业竞争、打击报复和网络敲诈等多种因素,导致很多IDC托管机房、商业站点、游戏服务器、聊天网络等网络服务商长期以来一直被DDOS攻击所困扰,随之而来的是客户投诉、同虚拟主机用户受牵连、法律纠纷、商业损失等一系列问题,因此,解决DDOS攻击问题成为网络服务商必须考虑的头等大事。
以root进入Linux系统,然后编辑文件icmp_echo_ignore_all
vi /proc/sys/net/ipv4/icmp_echo_ignore_all
将其值改为1后为禁止PING
将其值改为0后为解除禁止PING
vi /proc/sys/net/ipv4/icmp_echo_ignore_all
将其值改为1后为禁止PING
将其值改为0后为解除禁止PING
什麼是 SELinux
Security-Enhanced Linux (安全性增強 Linux ,簡稱 SELinux)。
一開始是這樣的。
美國國家安全局(National Security Agency,簡稱 NSA)的主要工作之一就是防止美國在戰爭的時候不會因為網路的攻擊而導致指揮系統的癱瘓。所以一直想辦法加強現有作業系統的安全性。她們發現不管是 Windows 、 Unix、Linux 等等作業系統,基本上所使用的安全機制是類似 DAC 機制。
DAC 機制簡單來講就是只程式的執行者或是檔案的擁有者可以任意的給予權限。這種機制在遇到一個有漏洞或是刻意編寫的程式就會導致很大的問題,尤其是 setuid or setgid 這種權限的設計,許多程式設計師在需要權限的時候喜歡用 setuid root,因為可以不管接下來他們的程式到底需要什麼權限,大大簡化程式的設計。但是這種方式也非常危險,因為以 Unix-Like 的設計,root 擁有絕對的權限,假如這個程式有漏洞,那麼就可以在系統中為所欲為。
Security-Enhanced Linux (安全性增強 Linux ,簡稱 SELinux)。
一開始是這樣的。
美國國家安全局(National Security Agency,簡稱 NSA)的主要工作之一就是防止美國在戰爭的時候不會因為網路的攻擊而導致指揮系統的癱瘓。所以一直想辦法加強現有作業系統的安全性。她們發現不管是 Windows 、 Unix、Linux 等等作業系統,基本上所使用的安全機制是類似 DAC 機制。
DAC 機制簡單來講就是只程式的執行者或是檔案的擁有者可以任意的給予權限。這種機制在遇到一個有漏洞或是刻意編寫的程式就會導致很大的問題,尤其是 setuid or setgid 這種權限的設計,許多程式設計師在需要權限的時候喜歡用 setuid root,因為可以不管接下來他們的程式到底需要什麼權限,大大簡化程式的設計。但是這種方式也非常危險,因為以 Unix-Like 的設計,root 擁有絕對的權限,假如這個程式有漏洞,那麼就可以在系統中為所欲為。
如今百家@*店的网站架构已经在超负荷工作了。服务器经常达到100%的使用率。主要是数据库占用了大量的CPU资源。这样的系统,根本无法跟上网站的发展。
所以,我针对我们网站,考虑了一些关于网站流量分流的方法。
1,看了一下别人的文章,大部分都说,现在的网站瓶颈在于数据库。所以,我们这里放在第一条。我们设计的网站要求用户数量要达到1亿。(目前淘宝用户近2000万,腾讯用户近10亿,活跃用户1亿多)。当然,我们的设计要多考虑一些,所以,就定位在淘宝的用户数和腾讯的用户数之间。
用户名列表单独建立数据库,以便随时将此数据库独立出去单独建服务器。用户登录的时候,数据库要从1亿记录中查找数据,即使使用主索引,也要将近1秒时间(在SQLSERVER中,使用like查找20万条数据,就需要大约2秒种,这里是按照精确匹配以及主索引联合的方式查找)。所以,我们要将用户表分表。以26个字母为分表顺序,中文开头的用户名一张表,数字开头的用户名一张表。这样就有28张表,平均下来,一张表300万数据,最多的一张表估计大约1000万数据。然后,以用户名为主索引,SQLSERVER数据库应该可以应付过来了。
所以,我针对我们网站,考虑了一些关于网站流量分流的方法。
1,看了一下别人的文章,大部分都说,现在的网站瓶颈在于数据库。所以,我们这里放在第一条。我们设计的网站要求用户数量要达到1亿。(目前淘宝用户近2000万,腾讯用户近10亿,活跃用户1亿多)。当然,我们的设计要多考虑一些,所以,就定位在淘宝的用户数和腾讯的用户数之间。
用户名列表单独建立数据库,以便随时将此数据库独立出去单独建服务器。用户登录的时候,数据库要从1亿记录中查找数据,即使使用主索引,也要将近1秒时间(在SQLSERVER中,使用like查找20万条数据,就需要大约2秒种,这里是按照精确匹配以及主索引联合的方式查找)。所以,我们要将用户表分表。以26个字母为分表顺序,中文开头的用户名一张表,数字开头的用户名一张表。这样就有28张表,平均下来,一张表300万数据,最多的一张表估计大约1000万数据。然后,以用户名为主索引,SQLSERVER数据库应该可以应付过来了。
















