• 主页
  • ASP
  • .NET Framework
  • Web Services
  • VB
  • VC
  • 图表区
  • 分析与设计
  • 组件/控件开发
  • LINQ

"即时通"开发疑难????

Jack_ljk 2007-08-28 09:49:11
由于自己做了一个商贸网站,所以一直在想即时通已经势在必得了,也看过别人开发的,有的用asp,有的php,有的jsp,呵呵,思考一下原理,我就自己开始做一个了,方法比较笨拙,请高手指点。

开发语言:C#+ajax

数据库:sqlserver

思路:客户段提交留言执行两个事件:1,写入数据库,2,将最新数据利用ajax技术调到交谈区。

3,将交谈区的数据利用ajax函数每3000毫秒执行一次,这样双方就都能开到对方的留言了(不知道这种方法是否可行)。

4,以上的都已经实现了,不过就差服务端(拥有即时通的商家),看别人是以c/s模式动态链接远程数据方式实现,问题就是用户必须要下载甚至还需要安装(我本人不太推荐这么做),想以网页的形式来实现,就是说在商家以会员身份登录易博后台以后,当有客户端(该商家的客户)利用即时通向商家留言时,在其后台就自动提示或直接弹出对话框(这个地方思考了很久,不知道应该以数据库数据的改变值为触发事件,还是应该以线程+socket)。

5,请高手指点
...全文
174 点赞 收藏 15
写回复
15 条回复
参考csdn的就差不多了,你去ie的临时文件夹看看有多少个csdn的缓存页面.......
回复 点赞
chenou851123 2008年03月25日
[Quote=引用 13 楼 iuhxq 的回复:]
有个开源的项目:http://www.svnhost.cn/Project/Detail-1.shtml

楼主可以参考
[/Quote]

这个好
回复 点赞
iuhxq 2008年03月25日
有个开源的项目:http://www.svnhost.cn/Project/Detail-1.shtml

楼主可以参考
回复 点赞
脱缰的牛 2008年03月25日
我的邮箱。zhengdanqi_niuniu@163.com
谢谢哦
回复 点赞
脱缰的牛 2008年03月25日
楼主能不能把你是实现好的,发给我呀。。谢谢啦。。
回复 点赞
Jack_ljk 2007年08月28日
感谢楼上(tannel(乱坟兽兽) )回答:能说说您做的具体思路吗?
回复 点赞
tannel 2007年08月28日
你最好不要把消息写到数据库,你可以把两个人的对话专门生成个XML,然后在消息区读取XML,数据库只放发起人的userid,读取消息后自动删除。曾经做个你说的这样的东西。
回复 点赞
Jack_ljk 2007年08月28日
他们的服务端用的是c/s模式的,我看过了的。
回复 点赞
wdzr_826 2007年08月28日
考虑过server push 但是在浏览器上有显示进度条很令我不爽。
我现在也在作这个不过只做user端的。
你放心3000毫秒刷一次不卡!
回复 点赞
wdzr_826 2007年08月28日
给你几个网址,问问客服,(一般没用。)
www.zoosnet.net
www.xigla.com
www.webeye.net.cn
www.tq.cn
www.53kf.com.cn
www.live800.com
www.5107.cn
没毒都是你这方面的软件。
回复 点赞
Jack_ljk 2007年08月28日
loverdotnet(西瓜) :感谢您的回答,能给一个消息队列的例子吗?
回复 点赞
loverdotnet 2007年08月28日
你这么刷,服务器肯定吃不消,这是百分之一百的事情,还使用消息队列吧
回复 点赞
feng5799 2007年08月28日
在页面的右下角隐藏一个层..用ajax定时去读取数据库,如果有新的消息,就显示层
回复 点赞
zjysky 2007年08月28日
我个人认为还是在使用ajax把数据都放在数据库直接轮询也是个办法。而且大部分都这么实现饿。效果也不错。可能就是人多的会慢卡。
我原来使用消息队列实现过。效果也不错。
你说用线程+socket的也是个办法。但是asp.net的线程很不好控制的。毕竟网页这个形式的线程不好实现。因为线程是服务器段轮询向客户端发送。但是网页都是客户端请求然后服务端返回的。(当然有服务器push模式。更难了。呵呵。我也不懂)
回复 点赞
zjysky 2007年08月28日
我也沙发啊。
回复 点赞
发动态
发帖子
.NET技术社区
创建于2007-09-28

4.9w+

社区成员

66.8w+

社区内容

.NET技术交流专区
社区公告
暂无公告