本人在做一个 java web项目用pushlet技术即时显示提示消息的功能 ,在servlet中通过userid定时的从数据库中查询未读的消息记录,然后发给全部的客户端,在客户端中根据userID判断,假如客户端的userid=pushlet推送的userid则显示推送的消息数量。
原因是对即时性有要求,所以在后台每隔多少秒就要向数据库发送请求,本人主要是担心服务器负担压力过大,假如只有几个用户还好,服务器只是几个查询,假如用户数量增多,后台访问数据库的次数就太过频繁,总觉得这是一个隐患。
求高人指点!
原因是对即时性有要求,所以在后台每隔多少秒就要向数据库发送请求,本人主要是担心服务器负担压力过大,假如只有几个用户还好,服务器只是几个查询,假如用户数量增多,后台访问数据库的次数就太过频繁,总觉得这是一个隐患。
求高人指点!
解决方案
10
那得看你准备多少数量级的。
pv值现在并不是那么容易获得的。
另外假如用户发送的查询请求有很大共同性的话,可以尝试直接放内存。
另外,一般都是车到山前必有路,不到那个时候是预测不到会有什么异常发生的
pv值现在并不是那么容易获得的。
另外假如用户发送的查询请求有很大共同性的话,可以尝试直接放内存。
另外,一般都是车到山前必有路,不到那个时候是预测不到会有什么异常发生的
15
这就得看题主的需求是什么样的了,假如每个用户所得到的数据都是不一样的要求不一样条件的查询,而且又要及时发送的,那必须得查数据库,只能在数据库这边做优化。假如说发送给用户的数据都是一样的,那么可以做缓存处理了。全部的用户都查缓存,缓存在指定的时间查一次数据库就行了。
10
5
既然要即时性 为什么不用消息推送 为什么要去反复查数据库呢