異步短信通知

背景:

       公司的老系統用戶反饋,短信發送異常……

檢查發現是批量短信接口超時,前端直接拋異常了,改爲異步發送……

    @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爲自定義的線程池(優雅的線程池)

接收到發送結果後同步短信剩餘條數。

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