如何大量请求发送短信接口?

2022-03-10 10:38:33 +08:00
 Jekins

客户提供的短信接口没有批量发送短信的接口..目前是在循环里去直接 http 请求(根据返回状态判断短信是否发送成功).这样做肯定不行的.目前项目还未上线..所以还没有想到一个比较好的解决办法...使用 CompletableFuture 虽然不会阻塞...但是对面的 api 肯定会防止刷 api 限流...有老哥解决过类似需求吗?

3772 次点击
所在节点    Java
27 条回复
Jekins
2022-03-10 18:39:14 +08:00
@sampeng 感谢老哥回复.必须使用客户提供的(他们自己公司内部的短信接口)..这个是内部系统.没办法.要不然就上阿里云之类的了. 另外是客户自己的说的不支持.不然我也不会折腾了.
teem
2022-03-10 19:58:58 +08:00
哪家短信供应商这么垃圾?我用的批量通知,接口参数本身就支持电话数组,短信供应方会合适处理。
killergun
2022-03-10 20:05:05 +08:00
换提供商啊,还能在一棵树上吊死
seakingii
2022-03-10 20:10:19 +08:00
自己维护一个队列,简单点就把要发的短信存数据库.
根据对方的 API 的限流一条条发.超过限流了就等一会再发.
q1angch0u
2022-03-10 20:10:23 +08:00
qps 很高的话个人认为可以做 mq ,请求的时候 http 做连接池等之类的优化~
ps: #19 说了半天是在说明“限流”相关的问题,您这#21 为啥全程在解释为啥不能用阿里云…?
killergun
2022-03-10 20:11:40 +08:00
如果公司短信很多的话,就应该有使用多家短信服务,不然短信平台出问题了,短信相关的功能全挂了
byte10
2022-03-26 11:16:13 +08:00
没有一个正确的回答呀。。。少年,你用 NIO 啊,一秒可以发送几万条。。你看看我的视频吧,有讲解的 https://www.bilibili.com/video/BV1FS4y1o7QB 。但是你说对方有限流,那么这个是无解的,可以通过申请多个短信账号去发,要么就跟他们服务商谈判。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/839332

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX