大型、高负载网站架构和应用初探

主题:大型、高负载网站架构和应用初探
时间:30-45分钟

开题:163,sina,sohu等网站他们有很多应用程序都是PHP写的,为什么他们究竟是如何能做出同时跑几千人甚至上万同时在线应用程序呢?

挑选性能更好web服务器
单台 Apache web server 性能的极限
选用性能更好的web server TUX,lighttpd,thttpd …
动,静文件分开,混合使用
应用程序优化,Cache的使用和共享
常见的缓存技术
生成静态文件
对象持久化 serialize & unserialize

Need for Speed ,在最快的地方做 cache
Linux 系统下的 /dev/shm
tmpfs/ramdisk
php内置的 shared memory function /IPC
memcached
MySQL的HEAP表
多台主机共享cache
NFS,memcached,MySQL 优点和缺点比较

MySQL数据库优化
配置 my.cnf,设置更大的 cache size
利用 phpMyAdmin 找出配置瓶颈,榨干机器的每一点油
集群(热同步,mysql cluster)
集群,提高网站可用性
最简单的集群,设置多条A记录,DNS轮询,可用性问题
确保高可用性和伸缩性能的成熟集群解决方案
通过硬件实现,如路由器,F5 network
通过软件或者操作系统实现
基于内核,通过修改TCP/IP数据报文负载均衡,并确保伸缩性的 LVS以及 确保可用性守护进程ldirectord
基于 layer 7,通过URL分发的 HAproxy
数据共享问题
NFS,Samba,NAS,SAN

案例
解决南北互通,电信和网通速度问题
双线服务器
CDN
根据用户IP转换到就近服务器的智能DNS,dnspod …
Squid 反向代理,(优点,缺点)
案例

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/SmartTony/archive/2008/04/26/2332634.aspx

posted on 2009-06-11 01:31  一江水  阅读(470)  评论(0编辑  收藏  举报