C#开发C/S结构系统的通信问题 请问大虾:在用C#开发C/S结构系统的时候用什么方法解决长时间不间断连接(要求可靠性高)通信问题,如果采用中间件来实现,选用哪种中间件更合适??????谢谢 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 你可以使用WebServices、Socket、Remoting等等,看你是什么情况了 对不起,没把问题说具体。是非web架构,类似于传统的C/S架构。现在具体考虑两种方案:1、如果采用传统C/S架构,用什么方法解决长时间不间断连接、高可靠性的数据通信问题???2、采用中间件,采用什么中间件更合适???(更适合于用C#做用户程序并且能比较好的调用该中间件的功能)请指教,谢谢!!! 网络层采用TCP协议。要求可靠性高,除了保证物理层的连通,主要还是要看应用层的设计,如服务端收到了客户端的数据,就应明确给客户端一个应答(反之也一样),如果在规定的时限内没有收到应答那就认为本次数据传输失败。 只是解决“解决长时间不间断连接(要求可靠性高)通信问题”的话,没必要用中间件,socket自己控制一下就可以了 呵呵 其实楼主自己解决这个问题最好.多有意思啊动动脑子.假设你的网络环境比较复杂,网络连接不稳定,要作到保证长时间不间断连接,不出现暂时的阻塞,其实就用循环并行短连接最好了.比如为每一对连接准备两到三个TCP连接, 每个TCP连接都可以通信,里边传输的数据包要你自己封一下,也可以作验证.每个连接一旦BREAK,就自己重新连接,但是一般情况下, 每个连接一旦超过10秒,且暂时空闲,就断掉自己.SLEEP(256)后再次连接.循环使用三个线. 对于服务端来说 也就是开放3个端口就好(多个客户端可以共同使用同一端口)每个连接内部的传输控制代码你还要检测自身的传输状态,一旦出现发送超时或回传变慢,马上切断自己,再去连接. 问题最后还是采用中间件解决了,呵呵,也省了自己去写通信代码了!!不过fengyecsdn的建议听也来也不错,完了这个项目自己再去试试吧! C#窗体程序中有关水晶报表的问题 需要windows窗体开发的资料 sql server2000表中某个单元格有大量数据,在C#中要用什么方法来读取? DllImport报错,大家给我看看 那位高手有反向依赖的例子? 请教关于mdi问题 ObjectCollection类型的使用问题,大家帮看看! 学C#就看一哈,帮个忙~~~ DataGrid翻页问题!急! wpf引用C++dll的问题 对称加解密算法RC6的C#实现 关闭窗口的问题
你可以使用WebServices、Socket、Remoting等等,看你是什么情况了
2、采用中间件,采用什么中间件更合适???(更适合于用C#做用户程序并且能比较好的调用该中间件的功能)请指教,谢谢!!!
动动脑子.
假设你的网络环境比较复杂,网络连接不稳定,要作到保证长时间不间断连接,不出现暂时的阻塞,其实就用循环并行短连接最好了.
比如为每一对连接准备两到三个TCP连接, 每个TCP连接都可以通信,里边传输的数据包要你自己封一下,也可以作验证.
每个连接一旦BREAK,就自己重新连接,但是一般情况下, 每个连接一旦超过10秒,且暂时空闲,就断掉自己.SLEEP(256)后再次连接.循环使用三个线. 对于服务端来说 也就是开放3个端口就好(多个客户端可以共同使用同一端口)每个连接内部的传输控制代码你还要检测自身的传输状态,一旦出现发送超时或回传变慢,马上切断自己,再去连接.
不过fengyecsdn的建议听也来也不错,完了这个项目自己再去试试吧!