九
九幽怪客
最近大家一直在讨论西祠的若干实现办法,
我实在是时间不多,没有及时给大家解答。
现在一并谈谈。
一、先说说 asp。
很多人认为微软系统是一个不稳定和性能低的系统,其实不然。
西祠的主 web server 用一台服务器实现了一天 700 多万动态页面,
这在国内是绝无仅有的。
据我所知,有人使用 PHP,用了六台服务器,才支撑了 600 多万。
所以说,一开始必须有信心,事在人为。
二、西祠的会话保持
有人认为西祠没有用 asp 的 session ,
其实不是的,西祠用了,
但是因为很多浏览器软件对 cookies 支持不完全,
依赖 cookies 会导致会话丢失,
所以西祠将 cookies 转移到了虚拟路径上面实现而已,换汤不换药。
所以西祠同样存在会话丢失的情况,
所以西祠在查询流言飞语的同时保持了会话。
三、西祠的在线信息
西祠在数据运算量较大的地方全部使用了组件技术,
这一点首先就体现在在线信息上面。
在线信息是一个需要大量数据比较(先查询此用户在数组中的位置)
和数据更新(填写此用户的动作和时间)的操作,
使用 asp 的 VBS 来操作,人少的时候还可以,人一多了一定吃不消。
而很多基于 PHP 的网站甚至用数据库来保持这种在线(绝大多数都是),
这是导致其在线不精确和负载高的很大的一个因数,
所以他们只能保持 20 分钟甚至半个小时的在线信息,
而其网站报出的在线,也就是20 分钟甚至半个小时内访问过的人数。
而西祠是一分钟内的。
四、新西祠的技术实现
由于西祠大量使用了组件对象,也导致了西祠的扩展性的下降,
目前的状况就是一个例子。
我目前手里有现成的服务器,但是不能对西祠进行升级,
原因是再升级的话就会有多台服务器支持主 web ,
而这样就不能保证在线信息的完整。
正在改版的新西祠完全改变了这个状况。
首先新西祠完全抛弃了 asp 的 session,
而是使用了自行开发的可扩展的具有分布特性的 session 实现,
所有的 session 变量全部存放在组件中,
而多台服务器的组件之间的变量是实时自动同步,
从 asp 编程见面上面完全屏蔽了多服务器的分布技术。
数据库也更多的考虑了分布处理的问题。
新的聊天室也将以全新的面貌出现。
我现在还在做这些事情,所以就说这些了。