asp.net如何实现数据库与web页面实时交互(在数据库的指定表中有增删改的操作前提下)

ajdopteron123 2015-01-06 10:27:52
原先在项目中采用轮询的方法,时间间隔为4秒,但是查询的sql语句中过于复杂,各种连接加嵌套,所以优化sql语句感觉力不从心。我的思路从减少无效请求次数出发,采用的一种办法是在指定表中加入触发器,当此表有增删改操作时,就向log表中记录一条数据,然后在aspx页面上采用长轮询的办法,不断地向后台ashx发送处理请求,并在后台处理过程中暂停4秒的间隔,分别记录下两次log表的数据量,然后再判断两个数据量是否一致,如果不一致的话,就后果新获取数据并返回数据给页面,如果一致就继续轮询。但是感觉这样处理总觉得也不太好,诚心请教大神,请各显神通!
...全文
458 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
slwsss 2015-01-07
  • 打赏
  • 举报
回复
引用 5 楼 ajdopteron123 的回复:
[quote=引用 2 楼 hefeng_aspnet 的回复:] 轮询数据量大 不好处理 你可以分段取数据 log你取出来干嘛啊?
数据量其实也不大,就是逻辑复杂,导致查询慢[/quote] 读数据时先查下是否有缓存有的话取缓存数据,没有就读数据库添加缓存,增删改后把缓存清除掉就行了
ajdopteron123 2015-01-07
  • 打赏
  • 举报
回复
引用 2 楼 hefeng_aspnet 的回复:
轮询数据量大 不好处理 你可以分段取数据 log你取出来干嘛啊?
数据量其实也不大,就是逻辑复杂,导致查询慢
ajdopteron123 2015-01-07
  • 打赏
  • 举报
回复
引用 2 楼 hefeng_aspnet 的回复:
轮询数据量大 不好处理 你可以分段取数据 log你取出来干嘛啊?
用来判断4条内指定表是否进行了增删改等变动操作
ajdopteron123 2015-01-07
  • 打赏
  • 举报
回复
引用 1 楼 slwsss 的回复:
缓存数据,增删改之后清除缓存数据重新获取
请问一下增删改之后如何通知后台重新获取数据?
csdn_aspnet 2015-01-07
  • 打赏
  • 举报
回复
轮询数据量大 不好处理 你可以分段取数据 log你取出来干嘛啊?
slwsss 2015-01-07
  • 打赏
  • 举报
回复
引用 10 楼 ajdopteron123 的回复:
你可能有点误解了,我想问的是增删改后怎么通知缓存清除
增删改后执行清除缓存的代码啊
ajdopteron123 2015-01-07
  • 打赏
  • 举报
回复
引用 7 楼 ajdopteron123 的回复:
[quote=引用 6 楼 slwsss 的回复:] [quote=引用 5 楼 ajdopteron123 的回复:] [quote=引用 2 楼 hefeng_aspnet 的回复:] 轮询数据量大 不好处理 你可以分段取数据 log你取出来干嘛啊?
数据量其实也不大,就是逻辑复杂,导致查询慢[/quote] 读数据时先查下是否有缓存有的话取缓存数据,没有就读数据库添加缓存,增删改后把缓存清除掉就行了[/quote] 这个具体要怎么实现?[/quote] 增删改后把缓存清除掉就行了,这个具体要怎么实现?
ajdopteron123 2015-01-07
  • 打赏
  • 举报
回复
引用 6 楼 slwsss 的回复:
[quote=引用 5 楼 ajdopteron123 的回复:] [quote=引用 2 楼 hefeng_aspnet 的回复:] 轮询数据量大 不好处理 你可以分段取数据 log你取出来干嘛啊?
数据量其实也不大,就是逻辑复杂,导致查询慢[/quote] 读数据时先查下是否有缓存有的话取缓存数据,没有就读数据库添加缓存,增删改后把缓存清除掉就行了[/quote] 这个具体要怎么实现?
slwsss 2015-01-06
  • 打赏
  • 举报
回复
缓存数据,增删改之后清除缓存数据重新获取

28,398

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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