如何向指定用户推送消息

比如我有一百万用户,编号分别为1~1000000。现在我想要给编号为1~500000的用户推送消息。怎么样可以快速推送给这50万用户。
我想到的方案是客户端用户订阅主题:topic/用户编号。然后服务端代码用for循环50万次推送主题topic/用户编号。
指定用户太多,我觉得循环推送不是很好,请问除了这种方案还有其他方案吗?

业务上能给这50万用户分成一个组么,例如都订阅 topic/group1 主题;然后发布端就只需要发送一条消息了。
否则的话,暂时还没有太好的办法

指定用户每次指定的都不会一样,所以没法分组。希望你们以后能实现,传一个订阅数组,然后消息只发一条。