当前位置:编程学习 > VB >>

如何防止应用程序访问远程数据库是出现掉线的情况!

各位前辈,偶最近遇到一个要命的问题,就是远程客户端在访问数据库时频烦掉线,检查网络都是正常的,请问各位大大有没有什么好的解决办法.(客户端主要是用来进行一些数据存取业务,比如进销存业务中的单据输入,报表查询等,现在程序是一进系统就卡,或者在输入单据时卡,但网络都是通的) --------------------编程问答-------------------- 是INTERNET还是INTRANET?
有多少用户使用该系统?服务器的性能如何?
并发用户的数量多不多,服务器是否能够承载这么多的并发用户数!
兄弟,你的这个问题跟程序的关系不大!除非你程序写的特别特别的烂! --------------------编程问答-------------------- 基于互联网的远程,两边都是通过ADSL互联的,并发用户很少,只有6,7个,服务器是IBM3400,应当不是服务器的问题.我这程序在局域网里是绝对不会出现这情况的,这个在其它客户那里通过了考验的. --------------------编程问答-------------------- 那就是程序問題了. --------------------编程问答-------------------- 说不好是网络不稳定!
先看看,是不是总是那一两个客户端频繁掉线,要是的话就说明那几个人的人品不好。但如果客户端全部掉线的话,就看看你服务器端是不稳定的,注意特别是他们同时掉。
这个东西就是查网络,查程序,查服务器!都没有问题的话,你那还出问题,那就再重复之前的步骤接着查,肯定是有一面出问题了。
没啥好办法! --------------------编程问答-------------------- ...现在程序是一进系统就卡,或者在输入单据时卡,但网络都是通的

请问你的程序是纯C/S版本,还是使用了远程应用服务器模式?

1:刚进系统时卡:有可能时因为要复制表到本地,网络传输速度慢的话,并且程序没有处理好的话,确实是会给用户“卡”的感受


2:输入单据时卡:
  a:如果你的程序是远程执行,使用了应用服务器模式运行,那么客户端时时刻刻会和应用服务器通讯,网络速度慢点确实会卡。我曾经在上百个用户使用CITRIX客户端同时共享一个1兆的专线远程运行应用服务器上的数据库程序的时候发现过类似的现象。
  b:如果是纯C/S模式运行的话,除非你在用户输入数据的时候就开始向数据库服务器提交信息,否则的话此时根本和网络没有关系,也不会卡。但是如前言所说,如果你在用户输入数据的同时已经开始向数据库提交信息的话,那么我可以告诉你,这是个相当糟糕的做法,请参考下面帖子中我的建议修改你的程序: http://topic.csdn.net/u/20071227/10/8f1dc6f2-4975-48d4-9172-92e40f8f7b62.html

3:网络通不等于网络好:
   这点无须多解释了,你可以尝试在客户端上安装网络流量分析软件来查看实际网络情况,也可以在数据库服务器上安装网络流量检测软件来查看服务器端的实际网络连接情况。 --------------------编程问答-------------------- SORRY,没有看到你前面的回复,是用ADSL的远程互联的话主要考虑的是网络连接质量的问题。
而且往往此类问题即使发现也很难解决。

我建议你建立一个应用服务器,再在服务器出口端开设VPN,用户通过VPN接入到应用服务器上进行操作。
这样做的好处是:
1:客户端实际上是运行在应用服务器上的,这个服务器一般是直接和数据库服务器物理连接在一个网段内的
2:不必将容易收攻击的数据库连接端易做图露在公网上,VPN的安全级别是由服务器端的防火墙来保证的。
3:即使客户端网络连接出问题,不会因此造成数据完整性的问题,原因就是上面的第一条。


C/S版本的数据库程序一般在同一个局域网内运行会比较好,因为按照我的实际经验,即使1M的专线也很难支撑住各位数的客户端数据库应用连接(虽然这已经很不便宜了) --------------------编程问答-------------------- 详细方案可以参考:http://blog.csdn.net/WallesCai/archive/2008/01/02/2010877.aspx
补充:VB ,  数据库(包含打印,安装,报表)
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,