中国开发网: 论坛: 程序员情感CBD: 贴子 407879
ysb_ysb_ysb: 指导了一下,思路清晰了一点
1.既然与Boss连接是一个的话,那应该是单线程的处理,我们客户端至少超过100个终端,这样 肯定是处理速度比较慢。既然有99个连接(是我开始的一个错误,我以为99个连接是供湖北所 有县市使用,刚才打电话确定是每个县市提供99个连接)这样我希望能够创建10个与Boss的连 接,然后所有POS,手机来共享这10个连接。

2,在一个网站上看到说一个端口监听(1666)之后,如果来一个连接,创建一个线程,同时创建一个不同端口的Socket来出来该数据包,处理完毕后将数据给1666端口传回去,完毕后释放,这样就达到了多线程,不知道方案是否可行?
3。于1所述。如果共享10个连接,就涉及到资源的分配问题。具体问题如下:

1.由于是POS连接,客户端不会发送CLose消息给SOCKET或者POS死机,线路故障等一些问题
该POS机没有释放资源,那这个连接被一直占用,怎么释放?
2。分配连接的问题,计划采用互斥 信号量,同样,资源被占后,出现故障不能释放资源
3。我的几个兄弟Delphi 7.0里面都没有INDY Demo

系统还有一个总的框架:
POS发来请求 ---服务器端我用SocketServer控件在监听,如果有连接(它应该创建一个线程来服务吧?这个括号里面的我都是没有把握的,)这个控件里面有个SocketServer有个OnClientRead事件来读出POS的数据,然后我要将该数据做一翻处理后然后在组合包发给BOSS,
BOSS处理之后将数据发给服务器,然后服务器在将包传给POS机,传个POS我用的是SOCKETSERVER的Socket.SendBuf方法,由于连接的POS比较多,在返回POS机的时候怎么区分返回给哪个POS机??

相关信息:


欢迎光临本社区,您还没有登录,不能发贴子。请在 这里登录