利用開源組件開發高性能(Scalability and High Performance)的網站

1.       方案:

a)         Load balancer +reverse proxy server + server cluster

圖一是整體的結構圖;思路很清楚;這種的結構的網站系統可以提高系統的響應能力;

       圖一

b)細節問題:

       iweb server 是否可以是非同質的server,比如有的負責mail,有的負責web頁面,

有的負責文件上傳;

             ii)用戶的session信息如何在不同的server之間同步;

              iii)如果使用數據庫集群的話,則有的dbserver只負責讀數據,有的則讀寫都做;

                     如何實現;Replaication mysql中的支持正在研究;

       c)加入reverse proxy server; 圖二顯示了如何在架構中加入reverse proxy server

              這里選擇的proxy serversquid http://www.squid-cache.org),(至于為什么選它,

因為很多人都用它;本人奉行拿來主義);squid用來cache靜態的文件,jsimage

css等;squid可以和tomcatapache等集成;

圖二

d)誰來做load balancer呢,如果你使用linux操作系統的話,那么一定要試試Linux Virtual Serverwww.linuxvirtualserver.org/ http://zh.linuxvirtualserver.org/ , 我國的章文嵩博士主持的開源項目,TelTel的首席科學家;

IBM 的介紹資料:

http://www-128.ibm.com/developerworks/cn/linux/cluster/lvs/part1/index.html

http://www-128.ibm.com/developerworks/cn/linux/cluster/lvs/part2/index.html

http://www-128.ibm.com/developerworks/cn/linux/cluster/lvs/part3/index.html

http://www-128.ibm.com/developerworks/cn/linux/cluster/lvs/part4/index.html

圖三