异步并行加载工具 Asyncload

码农软件 · 软件分类 · 并发/并行处理框架 · 2019-09-02 16:43:44

软件介绍

Asyncload是一款异步并行加载工具(依赖字节码技术)。

背景

前段时间在做应用的性能优化时,分析了下整体请求,profile看到90%的时间更多的是一些外部服务的I/O等待,cpu利用率其实不高,在10%以 下。 单次请求的响应时间在50ms左右,所以tps也不会太高,测试环境压力测试过程,受限于环境因素撑死只能到200tps,20并发下。

I/O

目前一般的I/O的访问速度: L1 > L2 > memory -> disk or network
常见的IO:

  • nas上文件 (共享文件存储)

  • output/xxx (磁盘文件)

  • memcache client / cat client (cache服务)

  • database (oracle , mysql) (数据库)

  • dubbo client (外部服务)

  • search client (搜索引擎)

思路
正因为考虑到I/O阻塞,长的外部环境单个请求处理基本都是在几十ms,最终的出路只能异步+并行,从而诞生了该开源产品

项目介绍

名称:asyncload

译意: async cocurrent load

语言: 纯java

开发定位: 业务层异步并行加载工具包,减少页面响应时间

工作原理


原理描述:

  1. 针对方法调用,基于字节码增强技术,运行时生成代理类,快速返回mock对象,后台异步进行调用

  2. 通过管理和调度线程池,将后台异步调用进行加速处理,达到一个平衡点

  3. 业务执行过程需要获取mock对象的真实数据时,阻塞等待原始结果返回,整个过程透明完成很明显,经过异步并行加载后,一次request请求总的响应时间就等于最长的依赖关系请求链的相应时间。

相关文档

See the wiki page for : wiki文档
wiki文档列表

本文地址:https://codercto.com/soft/d/13727.html

人工智能

人工智能

Stuart J. Russell、Peter Norvig / 清华大学出版社 / 2011-7 / 158.00元

《人工智能:一种现代的方法(第3版)(影印版)》最权威、最经典的人工智能教材,已被全世界100多个国家的1200多所大学用作教材。《人工智能:一种现代的方法(第3版)(影印版)》的最新版全面而系统地介绍了人工智能的理论和实践,阐述了人工智能领域的核心内容,并深入介绍了各个主要的研究方向。全书仍分为八大部分:第一部分“人工智能”,第二部分“问题求解”,第三部分“知识与推理”,第四部分“规划”,第五部......一起来看看 《人工智能》 这本书的介绍吧!

html转js在线工具
html转js在线工具

html转js在线工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具