异步短信通知

背景:

       公司的老系统用户反馈,短信发送异常……

检查发现是批量短信接口超时,前端直接抛异常了,改为异步发送……

    @Autowired
    private ThreadPoolTaskExecutor executor;







//			mobileMessageReadService.batchSend(messages);
//			store.setSmsCount(smsCount - messages.size());
//			storeWriteService.update(store);

            // 批量超时,改为异步
            CompletableFuture<Boolean> future = CompletableFuture.supplyAsync(() -> mobileMessageReadService.batchSend(messages), executor);
            future.whenComplete((r, e) -> {
                if (r) {
                    store.setSmsCount(smsCount - messages.size());
                    storeWriteService.update(store);
                }
            });

 

ThreadPoolTaskExecutor为自定义的线程池(优雅的线程池)

接收到发送结果后同步短信剩余条数。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章