springboot异步和切面_SpringBoot 异步任务

1.异步和同步

异步(async)是相对于同步(sync)来说的,简单理解,同步是串行的,异步是并行的。

好比说,A需要从B和C两个节点获取数据

第一种方式,A请求B,B返回给A数据,A再去请求C,在从C出获得数据。这种方式就是同步。

另一种方式,A去请求B,不等B返回数据,就去请求C,然后等B和C准备好数据再推送给A,A同样可以拿到B和C的数据,这就是异步。

注意,第二种方式B和C是同时处理A的请求的,是比第一种方式效率要高的,但是这种方式,有一个限制,就是从B和C之间要获取的数据不能有依赖关系,假如获取C的数据时候,C需要从B返回来的数据,那就只能采用第一种方式,先请求B,拿到B的数据,在去请求C。

举个比较直白的例子,把订外卖抽象成几步

1.下单,时间忽略不计。

2.餐厅做饭,10分钟。

3.找外卖小哥,5分钟。(这需要一系列很麻烦的算法算出要通知哪些小哥,等小哥接受派送,再计算出大概到达时间,假设5分钟)

4.派送,5分钟。

按照同步方式处理,1,2,3,4加起来20分钟时间。

95b23d2c911220e0deb144341924553c.png

<
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值