应用程序分类

做通用型软件没有出路,所以现在选择的是走按需订做的路子,这种方式的特点是归纳业务模式难、需求变化大、造价高。看在最后一点的面子上,不管想什么办法也得把合同签下。

程序分类的标准有很大,对于企业MIS来说,数据库是少不了的,根据企业的部署结构,分为本地和联网型:
一,本地型
此种类型指的是程序和数据库在同一台PC或者同一局域网(VPN也算),程序直接连接数据库,对数据库进行操作。
有些程序会允许多个客户端连接同一数据库,但一般情况各客户端对数据库的操作不会破坏数据完整性。

二,联网型
当本地型应用不能满足业务需求时,就要考虑联网型应用了。
1)纯在线型
此部署结构一般是指B/S结构,现阶段主流是Web应用。
它最大的特点是不需安装客户端,但同时也存在不能充分利用客户端PC资源的缺点。
编写此类型程序时,程序和数据库都处于服务器端。与本地型程序不同的是,它需要考虑并发状况。
另外需要特别指出的WPF的XBAP类型应用是一种伪在线型程序,它本质上还是本地型应用程序。

2)瘦客户端型
这种类型的应用程序可以弥补前两种类型的不足,这也意味着它更复杂、更高级。
一般来说,客户端只是对某一服务发出请求,并对结果进行呈现。服务端里封装了几乎所有的数据操作,并且对外提供服务。数据库一般都与服务端处于同一服务器或同一局域网。

Web连接被无规律断开

背景:
一个虚拟主机,独立IP: 1.1.1.1,为域名a.b.c提供web服务。a.b.c域名在国内注册,DNS记录由afraid.org管理。

道具:
PC1: win7(电信2M adsl/dns:8.8.4.4、208.67.222.222)+IE8+Chrome11
PC2: win7(电信4M adsl/dns:8.8.4.4、208.67.222.222)+IE8+Chrome9
Laptop: win7(dns:8.8.4.4、208.67.222.222)+IE8+Chrome9
Server1: win2k3(电信IDC 100M共享/dns:8.8.4.4、208.67.222.222)+IE8

本市另一个区的一台PC3:XP(电信接入,其它参数不详)+IE7
本市另一区的一台PC4:win7(铁通2M adsl/dns:8.8.4.4、208.67.222.222)+IE8
本省另一市的一台PC5:Win(参数不详)
另一省的一台PC6:XP(电信2M adsl,其它参数不详)+IE7

现象:
2011.02.20晚上开始从PC1访问a.b.c会随机出现以下三种情况之一:
1,正常打开。
2,能显示部分页面内容,但格式不正确。
3,打不开,Chrome里显示”错误 101 (net::ERR_CONNECTION_RESET):The connection was reset.”

在上面三种情况之一刷新页面,会随机出现上面的三种情况之一。
使用Fiddler进行侦测,发现第2、3种情况时Fiddler会提示若干”远程主机强迫关闭了一个现有的连接。”

PC2访问a.b.c时出现PC1相同的现象,Laptop在PC1、PC2网络环境下访问a.b.c时亦出现相同现象,Server1访问a.b.c时正常,PC3、PC4、PC5、PC6访问a.b.c时均正常。

处理:
1,Server1、PC3、PC4、PC5、PC6均能正常访问说明Web服务器没问题,Web服务器IP也没有被GFW加入黑名单。
2,PC1、PC2、Laptop能正常访问其它网站,说明PC1、PC2、Laptop配置正常,本地网络也正常。
3,那么问题只能是出在本区的电信设备上。

于是开始找证据支持这个观点。在PC1打开Fiddler放在左边,打开Chrome放到右上,打开IE放在右下,然后一边不停地打开Chrome/IE、输入a.b.c、刷新、关闭,一边查看Fiddler的结果。

非正常显示和打不开时,Fiddler不停地显示”远程主机强迫关闭了一个现有的连接。” 这样进行了半个多小时后,突然发现,正常打开a.b.c后转变成非正常显示或者打不开之前,总是会关闭一个含有/twip/路径的连接,也就是说在关闭这个连接之后,访问a.b.c就会出现异常。

twip是a.b.c空间里安装的一个twitter应用,PC1、PC2、Laptop均安装了Chrowety,并通过它来连接twitter。之前Chrowety一直正常使用。难道会是它被GFW墙了,连累了访问a.b.c?

于是卸载了Chrowety,这时连接a.b.c正常,使用Laptop访问a.b.c也正常。为了确认这个原因,我再次安装Chrowety并设置好,访问a.b.c时故障现象重现。

GFW很强大,升级后的GFW更强大。