开发指南062-异步处理接口

简介: 后台有些接口耗时非常长,如果采用同步处理机制,前台等待时间过长,这时需要改异步操作

后台有些接口耗时非常长,如果采用同步处理机制,前台等待时间过长,这时需要改异步操作。实现方法有很多,例如走消息队列,接口收到请求后,推送消息即返回。处理由其他服务程序来完成。这种方法,业务分散在两个服务中完成,不利于业务内聚。这种方法适合把一些公用操作封装为一个处理服务中心,各业务服务通过消息队列发消息。

      一般业务,平台推荐在自己服务中通过线程解决。创建线程可以自己完成,但系统推荐采用CompletableFuture机制,实现步骤如下:

    1、定义自己的业务处理类:

        @Service

        public class Example implements Runnable{

             public void run(){

                 //比较耗时的业务处理

             }

        }

        其中最重要的是实现run函数

   2、接口里调用:

         注入上面的Example 类

         private Example example;

         接口里

               CompletableFuture.runAsync(example);

               然后返回即可

  3、运行结果可以写到数据库里,其他接口访问数据库获取运行过程和结果即可

       同时通过平台消息/短信/邮件等方式通知发起者

相关文章
|
前端开发 JavaScript
后端开发中的异步编程:提升性能与响应速度的关键
后端开发中的异步编程:提升性能与响应速度的关键
|
Java 测试技术 Python
Python:Flask使用ThreadPoolExecutor执行异步任务
Python:Flask使用ThreadPoolExecutor执行异步任务
1087 0
|
10月前
|
Web App开发 存储 缓存
如何精准清除特定类型或标签的缓存数据?
如何精准清除特定类型或标签的缓存数据?
792 57
|
11月前
|
NoSQL 安全 Java
2.2k star 单点登录框架揭秘!主流SSO太重?SpringBoot轻量级Smart‑SSO轻松接入·分布式·强踢人
Smart-SSO 是一个基于 SpringBoot 的轻量级单点登录框架,采用 OAuth2 授权码与 RBAC 权限设计,解决跨域认证、单点退出、令牌过期等痛点。支持自动续签、强制踢人、按钮级权限控制及分布式部署,适合中小团队快速构建高可用认证中台。项目已获 2.2k Star,代码开源,接入简单,是企业级应用的理想选择。[详情见 GitHub](https://github.com/a466350665/smart-sso)。
593 23
|
人工智能 Java API
阿里云开源 AI 应用开发框架:Spring AI Alibaba
阿里云开源 Spring AI Alibaba,旨在帮助 Java 开发者快速构建 AI 应用,共同构建物理新世界。
4031 8
|
Python
Python中的异步编程:使用asyncio和aiohttp实现高效网络请求
【10月更文挑战第34天】在Python的世界里,异步编程是提高效率的利器。本文将带你了解如何使用asyncio和aiohttp库来编写高效的网络请求代码。我们将通过一个简单的示例来展示如何利用这些工具来并发地处理多个网络请求,从而提高程序的整体性能。准备好让你的Python代码飞起来吧!
581 2
|
机器学习/深度学习 传感器 人工智能
智慧无人机AI算法方案
智慧无人机AI算法方案通过集成先进的AI技术和多传感器融合,实现了无人机的自主飞行、智能避障、高效数据处理及多机协同作业,显著提升了无人机在复杂环境下的作业能力和安全性。该方案广泛应用于航拍测绘、巡检监测、应急救援和物流配送等领域,能够有效降低人工成本,提高任务执行效率和数据处理速度。
3140 2
智慧无人机AI算法方案
|
存储 JSON 监控
你好,iLogtail 2.0
你好,iLogtail 2.0!
1991 117
【Azure 环境】连接到微软云Azure中国区 By VS 2019, VS Code, Powershell
【Azure 环境】连接到微软云Azure中国区 By VS 2019, VS Code, Powershell
533 0
【Azure 环境】连接到微软云Azure中国区 By VS 2019, VS Code, Powershell

热门文章

最新文章