读书人

外网使用软件时会发生不确定的断开数据

发布时间: 2012-02-12 17:16:33 作者: rapoo

外网使用软件时会发生不确定的断开数据库连接的情况,请问为何啊?
请问一下大家困扰我很久的问题:
我开发的软件(正式环境下使用)在局域网中使用正常(192.68.*.*),一天下来也不会断开数据库连接,但在外网使用(124.243.*.*)时会发生不确定的断开数据库连接的情况,有时候几分钟,有时候几十分钟,就算用定时器几秒钟SELECT一下数据库也不行,同样会发生断开数据库连接的错误,很郁闷,但在局域网中使用时从来都不会断开,从早上一直用到下班都是好好的,不知道为什么会这样,能给我些提示吗?

错误代码为:10005 或 10025

连接代码:
as_dbms = "MSS Microsoft SQL Server"
as_database = "Business"
as_userid = ""
as_dbpass = ""

as_logid = "sa"
as_logpass = ""
as_server = "124.243.*.*"

环境:
pb9.0 8836
sql server 2000 + 最新补丁
服务器是静态IP,没有直接,而是通过路由器端口(sqlserver是1433)转发。

我看论坛里面有人说是因为路由器转发的问题造成的,换成直连就可以了,我的环境是必须要转发不能直连。


[解决办法]
互联网肯定是会这样的,连接没有局域网可靠,你的数据包从你的电脑发出到服务器,通过了N个路由器,你可以tracert一下看看,所以,你那个服务器在前面还有个路由器NAT也不是问题的关键。
这样的情况适合使用偶连接来实现,你可以参考下
[解决办法]
数据库是基于tcp的,网络不稳定的情况下很容易掉,;
如果条件允许,建立改造一下,采用pb+easerver的多层可以很好的解决互联网应用的问题;
[解决办法]

探讨
请问一下大家困扰我很久的问题:
我开发的软件(正式环境下使用)在局域网中使用正常(192.68.*.*),一天下来也不会断开数据库连接,但在外网使用(124.243.*.*)时会发生不确定的断开数据库连接的情况,有时候几分钟,有时候几十分钟,就算用定时器几秒钟SELECT一下数据库也不行,同样会发生断开数据库连接的错误,很郁闷,但在局域网中使用时从来都不会断开,从早上一直用到下班都是好好的,不知……

读书人网 >PB

热点推荐