ITPub博客

首页 > 数据库 > 数据库开发技术 > 我掏出这个多线程轮子,面试官直接全体起立

我掏出这个多线程轮子,面试官直接全体起立

原创 数据库开发技术 作者:飞天小牛肉 时间:2023-04-14 08:38:00 0 删除 编辑

分享大厂面试真题原创题解 & 成长经验

推荐订阅 #大厂面试 #校招扫盲

个人网站: cswiki.top

又到了项目推荐专栏,今天推荐的还是轮子类项目,由京东零售开源的一款并行框架 AsyncTool,“该框架目前正在京东 App 后台接受苛刻、高并发、海量用户等复杂场景业务的检验测试”,霍,瞧这含金量:

整体来看代码量不是很多,毕竟就是一个工具库,不过能够有效且优雅地解决问题,那就是个好项目,值得学习,其核心是 CompletableFuture 类的使用,小伙伴们需要有相关的先验知识。

项目地址:

  • Gitee:https://gitee.com/jd-platform-opensource/asyncTool
  • QuickStart:https://gitee.com/jd-platform-opensource/asyncTool/blob/master/QuickStart.md
  • 教程地址:
    • 作者的教程 -> https://blog.csdn.net/tianyaleixiaowu/category_9637010.html
    • 也有一些使用者编写的教程,如:https://blog.csdn.net/rongtaoup/category_11864180.html

上手难度还是有的,作者这个教程不是从 0 到 1 的教程,并且轮子类项目也没有业务类项目好理解,不过整体工作量比较少,多花点时间总是可以搞懂的~

项目简介:

在微服务系统中,经常会有这样的调用场景:app(或web前端)调用后台的一个接口,该接口接到该请求后,需要调用其他多个微服务来获取数据,最终汇总一个最终结果返回给用户。

譬如用户请求“我的订单”,后台在收到请求后,就需要去调用用户详情 RPC、商品详情 RPC、库存 RPC、优惠券 RPC 等等很多个服务。有些服务是可以并行去请求的,但有些服务是依赖于某个服务的返回值的(如查库存、优惠券,就依赖于商品详情回复到达后才能去请求)。

AsyncTool 就是这样一个用来解决任意的多线程并行、串行、阻塞、依赖、回调的并行框架。可以任意组合各线程的执行顺序,并且带有全链路执行结果回调。是多线程编排一站式解决方案。具体来说,AsyncTool 针对并发场景下可能存在的需求封装了具体的解决方案:

  • 任意编排、执行顺序的强依赖和弱依赖
  • 每个执行结果的回调
  • 依赖上游的执行结果作为入参
  • 全组任务的超时
  • 高性能、低线程数:该框架全程无锁

往期推荐

关注我们

面试官问你有其他 Offer 吗,该怎样回答

2023-04-11

天不生陈志龙,职场万古如长夜

2023-04-07

字节三面:内网穿透了解吗?

2023-04-04

B 站二面被挂,线程模型还不够熟练?

2023-03-31

警钟长鸣,以案为鉴!Thoughtworks 毁约 23 届全体校招生

2023-03-26



分享大厂面试真题原创题解 & 成长经验.

推荐订阅 #大厂面试 #校招扫盲

微信号:jcool1998 | 个人网站:cswiki.top
回复『春秋招』我拉你进校招交流群
回复『实习』我拉你进实习交流群
回复『简历修改』获取简历修改服务
回复『Echo』获取社区项目手把手教程

原文作者:飞天小牛肉;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-12-31

  • 博文量
    205
  • 访问量
    89235