首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

诸位大神请指点一下!Winsock处理大量数据

2013-04-09 
各位大神请指点一下!Winsock处理大量数据我用Winsock做了一个服务器接收程序,运行在2003服务器上,接收大概

各位大神请指点一下!Winsock处理大量数据
我用Winsock做了一个服务器接收程序,运行在2003服务器上,接收大概30个GPRS客户端发送的心跳包(每隔30秒)和一些实用的数据(需要今后被查询的,所以写入数据库),心跳包是用来确认是否在线(直接修改SQL2000数据库的某个表确认它在线),实用数据是被写入SQL2000数据库之前,整个接收到的数据写入TXT文本,然后打开数据库---写数据---关闭数据库连接

问题来了:

1. TXT(xxxxx.log)文件打开能看到接收到的数据,但是,写入SQL2000数据库的只是部分的,不全,这个为什么?
2.是不是发送的数据来不及处理?
3.有什么更好的方法能解决这样的问题?



抓狂抓狂!望大神指点指点!

我的目的就是把接收到的数据写入数据库,不要丢失(100分奉上)
[解决办法]
没有具体的描述,只能猜测30个客户端的数据写数据库有并发冲突。

可以考虑将接收和数据处理分成两个 exe。
接收程序每收到客户端的一次数据(心跳包、业务数据)就写一个文件。
数据处理程序就是不停扫描目录,发现一个文件就处理一次,这样不会有并发。

又:作为仅有一个实例的数据处理程序,数据库连接保持常开即可。
不停开/关的方案适用于大量客户端连接数据库的场景。
[解决办法]
接收程序先在 A 目录临时写文件,写完后将文件 Move 到 B 目录。
数据处理开定时器,用 Dir 函数扫描 B 目录,发现一个就读文件、写数据库,处理完后就 Move 到 C 目录(如果不需备份就直接删除)。
[解决办法]

引用:
能说一下 怎么读文件吗(text1.text还是什么)?读出来放哪?再怎么将这些数据处理进数据库啊?方便的话时候可以写个例子!不胜感激! 

看 MSDN 帮助或 Google 之。
写是变量到文件,读是文件到变量。
原先怎么将变量写入数据库照旧。

热点排行