如何同时保持连接多台电脑(10台以上),并且接受它们发过来的数据(高分200) ( 积分: 200 )

  • 主题发起人 主题发起人 blockhead
  • 开始时间 开始时间
B

blockhead

Unregistered / Unconfirmed
GUEST, unregistred user!
一台电脑如何同时保持连接多台电脑(10台以上),并且接受它们发过来的数据?
主要目的是监视多台电脑的运行情况,并且定时发少量的数据到控制台电脑。要求控制台电脑收到及时的数据并处理,是否要对每台连接的电脑用多线程处理?
我使用的是DELPHI 7.0,有例子最好。
 
一台电脑如何同时保持连接多台电脑(10台以上),并且接受它们发过来的数据?
主要目的是监视多台电脑的运行情况,并且定时发少量的数据到控制台电脑。要求控制台电脑收到及时的数据并处理,是否要对每台连接的电脑用多线程处理?
我使用的是DELPHI 7.0,有例子最好。
 
没有人做过???
 
用TServerSocket行不行呀
这个支持线程池的
 
就没有人提供好的方法?
 
通过数据库解决分布式的问题吧,用SQL Server的同步来做,客户机写一个托盘程序定期向数据库写入信息和读取数据库中服务器发送的命令(同步的话只要在服务器写入数据会同步到客户机,而且命令可以使用*和机器代号的方式来控制全部或部分机器)就可以了,自己完全不用考虑通信的问题,因为微软已经做得很好了。这样做开发时间短,但有一个缺点,配置时间比较长。
 
楼上到是提供了一个不错的想法,有没有个简单的例子,TKS!
 
我在服务器端用本地的ACCESS数据库,用INDY来通讯管理应该也可以吧?
请指教
 
不需要一直连接,和开多线程,当服务端需要发送命令的时候才连接一个客户端,发送完成,再发下一个,这样节约资源,对网络的利用率高
 
有一种方法很简单,就是:
10台客户端通过应用程序连接到服务器,发送和取回数据。
即:每个客户端装一个应用程序,可以放托盘中,电脑启动后就运行,
服务器有数据库,因为每个客户端的ID是不同的,所以并发没有问题,
不采用“服务器定时发数据到控制台电脑”,而是客户端主动去数据库服务器取,
然后应用程序中写代码实现当取回什么数据时,做什么事等等。
 
对于不太多的客户数(<32)用线程就可以实现了,为每个连接建立一个线程,用中间层似乎有点小题大做了
 
程序长时间工作,TServerSocket不稳定,还是用indy吧
 
serversocket很稳定
对于消息传递、监视等情况来说,比indy好用
indy多用在下载,server只是一个傻瓜型的
 

Similar threads

D
回复
0
查看
802
DelphiTeacher的专栏
D
D
回复
0
查看
746
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
695
DelphiTeacher的专栏
D
后退
顶部