hi我吧 我做了一个
提供一个技术实现方案,具体还要看你的应用场景方案一:适合互联网聊天
(1)webservice(也可以是其他服务技术,如WCF,但是WCF更适合异地集团网络解决方案)技术,提供服务端数据处理,接收存储所有客户端交互数据(中转)
(2)客户端使用多线程,提供用户体验,在定时刷新聊天记录是,客户端不会卡住不能交互
方案二:适合局域网
(1)secket通讯技术,通过Ip地址和端口监听实现服务端与客户端数据交互
(2)客户端使用多线程,提供用户体验,在定时刷新聊天记录是,客户端不会卡住不能交互
既然你用WCF,为什么还让客户端连接数据库呢?重新设计一下!
客户端只知道服务器的存在,数据库对客户端应该是透明的;
客户端只是想服务器发出请求,至于该请求的处理是对于数据库还是内存或者其他,客户端不需要知道,只要得到服务器的处理结果就可以。
另外,无论客户端还是服务器,用一个数据库连接是不应该的,遇上多线程就麻烦了:不做同步处理会产生错误,做同步处理效率又不行……
------------
你数据库连接使用不对,如果只用一个连接,别说事务,就是并发的普通处理都可能异常;应该每个请求都创建连接、打开、关闭、释放。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)