即时信息提示功能的实现(高手)

WJY2583783333 2012-05-18 03:58:52
最近在做一个审批系统;当上一级把任务提交给下一级时;下一级的页面上就有一条提示信息;

这种功能要怎么实现呢?因为下一级一定要时时的刷新才能知道有没有信息要提示?大家想法是怎么样?或者有什么

比较好的文章是介绍这方面了???
...全文
418 29 打赏 收藏 转发到动态 举报
写回复
用AI写文章
29 条回复
切换为时间正序
请发表友善的回复…
发表回复
WJY2583783333 2012-05-22
  • 打赏
  • 举报
回复
存数据库是我觉得最差的做法.....

  • 打赏
  • 举报
回复
[Quote=引用 23 楼 的回复:]

存数据库????晕那你时时去刷新啊....
[/Quote]
I 服了 you 都说了让你定时去查询一次的,怎么叫时时刷新数据库,程序指定1分钟或者多长时间查询一次数据库,然后把查询结果在程序中缓存起来,客户端读取消息只是去取程序缓存中的数据,哪有去数据库取数据?其实领导分配任务本来就是保存在数据库的,你难道保存文本文档?你只是去数据库取出已经分配的,但是还没有员工查看/操作的任务。这个有问题么?
howtodown 2012-05-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
你可以用JS去控制多长时间查一次数据库
比如隔10分钟查一次,有任务就弹出来。
参考
[/Quote]

基本上都是这种方法,但弊病也是显而易见的
myhope88 2012-05-22
  • 打赏
  • 举报
回复
定时刷新
anzhiqiang_touzi 2012-05-22
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
你可以用JS去控制多长时间查一次数据库
比如隔10分钟查一次,有任务就弹出来。
参考
[/Quote]
E次奥 2012-05-22
  • 打赏
  • 举报
回复
不管存在哪里,只要存了。就能拿出来!
WJY2583783333 2012-05-21
  • 打赏
  • 举报
回复
存数据库????晕那你时时去刷新啊....
  • 打赏
  • 举报
回复
[Quote=引用 21 楼 的回复:]

顶啊高手高手


现在的问题是:

1:我应该把这个要提示任务信息存在哪?

2:我是不是要用JS不断的刷新才能在一接到有任务时就提示??
[/Quote]
任务信息存在哪里:肯定是要存在数据库的,要不然如果有一天某个人想知道有多少任务,你怎么给人家统计呢?
不管是什么机制实现,socket,还是js,你肯定要有一个监控机制的,socket是依靠listen来监听指定端口来实现消息获取,那么js你肯定要有一个刷新机制,比如每隔一分钟用ajax去请求特定的页面获取消息。消息延迟一分钟对于实时性要求不是很高的系统都是可以接受的。
szjarvis 2012-05-20
  • 打赏
  • 举报
回复
同问,如果不断地刷新检查有没新信息过来,这样如查用这个系统的人比较多,五百人同时在线,那服务器会不会当掉呀。

是否有高手能具体解析一下长连接和scoket两种方法。thanks.
  • 打赏
  • 举报
回复
[Quote=引用 17 楼 的回复:]

同问,如果不断地刷新检查有没新信息过来,这样如查用这个系统的人比较多,五百人同时在线,那服务器会不会当掉呀。

是否有高手能具体解析一下长连接和scoket两种方法。thanks.
[/Quote]
用缓存啊,这个数据量应该不是很大的,缓存每隔一分钟去取一次数据,那么就算是1000人在线,大家只是去缓存取数据,数据库还是一分钟只查询一次,个人认为这个瓶颈应该在数据库查询量上面,程序中用缓存的话,应该不会导致500人在线就宕机,可以用带key,value的对象保存数据。
WJY2583783333 2012-05-20
  • 打赏
  • 举报
回复
顶啊高手高手


现在的问题是:

1:我应该把这个要提示任务信息存在哪?

2:我是不是要用JS不断的刷新才能在一接到有任务时就提示??
  • 打赏
  • 举报
回复
企业内部的系统,使用人员应该不会很多的,简单点的用ajax好了,领导分配一项任务给下属,那你肯定要保存这个任务信息的吧,同时多保存一条通知,ajax每个5分钟(这个时间你自己设置),去读取属于当前员工的未读的通知,如果有的话,跳出提示框(个人认为这个比较丑),或者在右下见弹一个通知框提示用户有未读通知。
HTzhangxuebing 2012-05-19
  • 打赏
  • 举报
回复
使用长连接好于AJAX轮询
使用SCOKET最好,但要借助FLASH/silverlight 或者支持HTML5的浏览器
WJY2583783333 2012-05-19
  • 打赏
  • 举报
回复
现在的问题是:

1:我应该怎么把这个要提示任务信息存在哪?

2:我是不是要用JS不断的刷新才能在一接到有任务时就提示??
  • 打赏
  • 举报
回复
[Quote=引用楼主 的回复:]
大家想法是怎么样?或者有什么

比较好的文章是介绍这方面了???
[/Quote]不提供这方面的技术方案。你有什么具体简单技术问题可以提出来,这类前沿的设计问题不可能给你抄代码。你能提出什么样的问题,就决定了你能得到什么样的回答。
huijunliang 2012-05-19
  • 打赏
  • 举报
回复
我也做过,
呵,我用了一个比较笨的方法。
当时,我的网站是又母版页的,
这样就好办了,每次点击链接就重新加载一次,
在母版页定义一个弹出框的方法就可以了。
风2013 2012-05-19
  • 打赏
  • 举报
回复
做个定时刷新是最简单的
骑猪看海 2012-05-19
  • 打赏
  • 举报
回复
使用长链接吧
zhangdaowu5 2012-05-19
  • 打赏
  • 举报
回复
定时刷新。
evelyn_green 2012-05-19
  • 打赏
  • 举报
回复
发送消息,JS异步刷新或者线程刷新就可以了
加载更多回复(8)
本工具多次测试均未出现问题,可以使用,如果发现自己无法使用,请先看下面介绍与说明 谢谢!! 感谢驴友yxrsys,在verycd发布资源 非安装软件,直接双击运行,傻瓜式修复,可运行于32位和64位系统和WINPE系统 程序根据当前系统non-Unicode设置自动显示中/英界面 "自动修复"自动判断和系统启动有关的条件并自动修复程序支持的盘符上的NT系统启动,无需用户手工干预 "高级修复"只供特殊需要的朋友,参看下面应用实例中的高级修复部分 PE中自动判断PE环境,单硬盘可以直接"自动修复",如多硬盘在PE中修复时推荐使用"高级"修复选择你作为系统引导的盘符 适用范围: -------- 1.启动菜单/启动文件丢失修复: 适用所有NT5.x(2000/XP/2003)和NT6.x(Vista/2008/Win7/2008r2) 2.修复其他因BCD相关引起的故障 a. Win7/2008r2中 BCD 的修复计算机(Windows Recovery Environment)菜单丢失 b. Win7/2008r2中 BCD 引起的3D启动画面丢失(变成VISTA滚动条启动画面) c. BCD 引起的启动菜单选择界面乱码现象 3.系统BCD非法的强制修复 - 现象:Vista/2008/Win7/2008r2中 a. 运行msconfig后"启动"或"引导"栏空白 b. 管理员身份运行命令提示符中后运行bcdedit等和BCD相关的操作提示出错 c. 系统属性的"启动和故障恢复"窗口无法配置"默认操作系统"和"等待时间" d. 其他软件无法添加/删除/修改基于 BCD 管理的新启动菜单 注: 3的这种情况是否要强制修复自行决定。 额外功能: 为VISTA/2008添加修复计算机(Windows Recovery Environment)菜单 使用方法:在系统盘符中新建recovery文件夹,再把光盘或安装程序中的boot\boot.sdi和sources\boot.wim复制至 recovery文件夹,再运行本程序,即可自动添加。 修复效果: 存在原BCD或Boot.ini时程序将予备份,备份文件名/路径在修复完成后给出提示 NT5.x菜单在boot.ini中以"Microsoft Windows Server 2003 x86"形式存在 NT6.x菜单在BCD中以"Windows Server ® 2008 Standard x86"形式存在 NT6.x的修复过程提示成功即时写入生效,NT5.x的修复在最后完成后再一并写入生效 NT5.x支持最多同接8个硬盘时的修复,但如果不同接口硬盘混用且三个或以上硬盘就未必能准确判断硬盘号,三硬盘以上 并混用的情况就算微软自己的控制台都未必能准确判断 NT6.x理论无限制硬盘数,也不限制混用 根据当前系统non-Unicode设置决定修复后的启动菜单中/英优先级 NT5.x+NT6.x的多系统中 - 当存在多个NT5.x时,修复后BCD显示的NT5.x相应菜单为“Earlier Version of Windows”, 当只有一个NT5.x系统,修复后BCD中显示的NT5.x相应菜单则为类如"Microsoft Windows Server 2003 x86"格式 不修复NT5.x的Boot.ini和NT6.x的BCD中的多余的启动菜单 因为精简版的精简程度无从判断,所以不保证能修复精简版系统启动故障 自BCDautofix发布以来极少回答一些朋友在使用上的疑问,这里和NTBOOTautofix一并释疑 一、BUG报告:readme中写的邮箱我极少打开,所以未必能及时回信。 二、请不要拿本工具和EasyBCD或VistaBoorPro等工具作比较: 那类工具重在管理 - 如改启动菜单名,添加/删除菜单等,要用在修复功能上需要使用者自己了解故障原因和解决流程后 才能手工修复,多数情况下其手工也无法完美修复。 而本工具重在修复,修复功能大多是那类工具无法实现的,当然本工具也不能实现那类工具的管理操作。 三、程序用批处理编写:请看不起批处理的免下载使用而避免下载后浪费诸多表情 四、如不能修复请自己先了解一下是否程序适用范围内:例如有些硬件原因引起的3D启动画面不存在,象这类的非BCD引起的类似故障是此工具无法处理的 五、手工处理教程为什么不写:其实以前曾经写过很多,但并不多人看,有时一个“活动分区”的识别就要大花唇舌说明,一句bcdedit /set {ntldr} description "Microsoft Windows XP"或bootsect /nt60 sys可以解决的手工处理方式不少人都

62,268

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧