190679152@qq.com的gravatar头像
190679152@qq.com 2015-11-12 17:40:28

java如何实现查询海量用户数据然后分批次发送信息给用户?

如何实现查询出全部的用户,然后分批次的发送信息给用户,一次1000个用户的发送?

所有回答列表(5)
最代码官方的gravatar头像
最代码官方  LV167 2015年11月12日

海量用户数据可以通过记录每次取的id号,然后分页查询剩余的数据来实现批量发送消息。

比如第一次取1000个,记录下最后一个id是1000,然后在从1000往后取1000就是2000,一直到发送所有数据。

注意:因为数据量较大,不建议一次性取出所有,可以是分批分页查询实现。

参考资料:

java中使用FIFO队列:java.util.Queue实现多台服务器发邮件的代码

评论(1) 最佳答案
wdzaslzy的gravatar头像
wdzaslzy  LV4 2015年11月13日

使用分页方式。查询全部select * from table limt (page-1)*10,10

这样查询出来只有10条,当用户点击下一页的时候,再去查询下一页数据。

如果非要查出来分批给的话,那就把查出来的数据放在一个List中,分2批,就从中间截取,ArrayList有一个方法

nba76ers的gravatar头像
nba76ers  LV12 2015年11月13日

定时分批取用户 然后扔到消息队列(如amq),定时消费队列

kkalpha的gravatar头像
kkalpha  LV5 2015年11月14日

根据某个字分区间取数据,一次取一个区间内的用户发送信息,再依次取下一个区间的用户发送

微笑135的gravatar头像
微笑135  LV2 2015年11月14日

分段查询 然后请求后面的数据

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友