{"id":31939710,"url":"https://github.com/alibaba/asyncload","last_synced_at":"2025-10-14T08:45:11.003Z","repository":{"id":48597139,"uuid":"1859178","full_name":"alibaba/asyncload","owner":"alibaba","description":"阿里巴巴异步并行加载工具(依赖字节码技术)","archived":false,"fork":false,"pushed_at":"2023-03-06T17:32:37.000Z","size":97,"stargazers_count":701,"open_issues_count":7,"forks_count":321,"subscribers_count":93,"default_branch":"master","last_synced_at":"2025-07-23T14:30:51.691Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://github.com/agapple/asyncload","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alibaba.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2011-06-07T09:51:29.000Z","updated_at":"2025-07-22T10:30:45.000Z","dependencies_parsed_at":"2024-01-13T17:49:08.820Z","dependency_job_id":"b728bab0-97de-4d1c-83f4-903fd44f2037","html_url":"https://github.com/alibaba/asyncload","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/alibaba/asyncload","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alibaba%2Fasyncload","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alibaba%2Fasyncload/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alibaba%2Fasyncload/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alibaba%2Fasyncload/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alibaba","download_url":"https://codeload.github.com/alibaba/asyncload/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alibaba%2Fasyncload/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018302,"owners_count":26086345,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-14T02:00:06.444Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-14T08:45:06.159Z","updated_at":"2025-10-14T08:45:10.997Z","avatar_url":"https://github.com/alibaba.png","language":"Java","funding_links":[],"categories":["并发编程"],"sub_categories":[],"readme":"\n对应的设计文档参见：https://www.jianshu.com/p/92c6f402b543\n\n\u003ch1\u003e背景\u003c/h1\u003e\n\n\u003cp\u003e   前段时间在做应用的性能优化时，分析了下整体请求，profile看到90%的时间更多的是一些外部服务的I/O等待，cpu利用率其实不高，在10%以下。 单次请求的响应时间在50ms左右，所以tps也不会太高，测试环境压力测试过程，受限于环境因素撑死只能到200tps，20并发下。\u003c/p\u003e\n\n\u003cp\u003e \u003c/p\u003e\n\u003ch1\u003eI/O\u003c/h1\u003e\n\u003cdiv\u003e目前一般的I/O的访问速度： L1 \u0026gt; L2 \u0026gt; memory -\u0026gt; disk or network\u003c/div\u003e\n\u003cdiv\u003e \u003c/div\u003e\n\u003cdiv\u003e常见的IO： \u003c/div\u003e\n\n\u003cdiv\u003e\u003col\u003e\n\u003cli\u003enas上文件 (共享文件存储)\u003c/li\u003e\n\u003cli\u003eoutput/xxx (磁盘文件)\u003c/li\u003e\n\u003cli\u003ememcache client /  cat client  (cache服务)\u003c/li\u003e\n\u003cli\u003edatabase (oracle , mysql)  (数据库)\u003c/li\u003e\n\u003cli\u003edubbo client  (外部服务)\u003c/li\u003e\n\u003cli\u003esearch client (搜索引擎)\u003c/li\u003e\n\u003c/ol\u003e\u003c/div\u003e\n\n\u003cp\u003e\u003cspan style=\"font-size: 24px; font-weight: bold;\"\u003e思路\u003c/span\u003e\u003c/p\u003e\n\n\u003cp\u003e \u003c/p\u003e\n\u003cp\u003e正因为考虑到I/O阻塞，长的外部环境单个请求处理基本都是在几十ms，最终的出路只能异步+并行，从而诞生了该开源产品\u003c/P\u003e\n\n\u003ch1\u003e项目介绍\u003c/h1\u003e\n\u003cp\u003e名称：asyncload \u003c/p\u003e\n\u003cp\u003e译意： async cocurrent load\u003c/p\u003e\n\u003cp\u003e语言： 纯java开发\u003c/p\u003e\n\u003cp\u003e定位： 业务层异步并行加载工具包，减少页面响应时间\u003c/p\u003e\n\u003cp\u003e \u003c/p\u003e\n\n\u003ch1\u003e工作原理\u003c/h1\u003e\n\u003cp\u003e\u003cbr\u003e\u003cimg src=\"http://dl.iteye.com/upload/attachment/423274/bc5877e7-a673-32e3-b8d9-e4f8236d8f11.png\" alt=\"\"\u003e\u003c/p\u003e\n\u003cp\u003e原理描述：\u003c/p\u003e\n\u003cp\u003e1.   针对方法调用，基于字节码增强技术，运行时生成代理类，快速返回mock对象，后台异步进行调用\u003c/p\u003e\n\u003cp\u003e2.   通过管理和调度线程池，将后台异步调用进行加速处理，达到一个平衡点\u003c/p\u003e\n\u003cp\u003e3.   业务执行过程需要获取mock对象的真实数据时，阻塞等待原始结果返回，整个过程透明完成\u003c/p\u003e\n\n\u003cp\u003e很明显，经过异步并行加载后，一次request请求总的响应时间就等于最长的依赖关系请求链的相应时间。 \u003c/p\u003e\n\n\u003ch1\u003e相关文档\u003c/h1\u003e\n\nSee the wiki page for : \u003ca href=\"https://github.com/alibaba/canal/wiki\" \u003ewiki文档\u003c/href\u003e\n\n\u003cbr/\u003e\u003ca name=\"table-of-contents\" class=\"anchor\" href=\"#table-of-contents\"\u003e\n\u003cspan class=\"mini-icon mini-icon-link\"\u003e\u003c/span\u003e\u003c/a\u003ewiki文档列表\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca class=\"internal present\" href=\"https://github.com/alibaba/asyncload/wiki/Home\"\u003eHome\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca class=\"internal present\" href=\"https://github.com/alibaba/asyncload/wiki/Introduction\"\u003eIntroduction\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca class=\"internal present\" href=\"https://github.com/alibaba/asyncload/wiki/QuickStart\"\u003eQuickStart\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca class=\"internal present\" href=\"https://github.com/alibaba/asyncload/wiki/ChangeLog\"\u003eChangeLog\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca class=\"internal present\" href=\"https://github.com/alibaba/asyncload/wiki/用户手册\"\u003e用户手册\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n\u003cp\u003e \u003c/p\u003e\n\u003ch1\u003e问题反馈\u003c/h1\u003e\n\u003cp\u003e1. qq交流群： 161559791\u003c/span\u003e\u003c/p\u003e\n\u003cp\u003e2. 邮件交流： jianghang115@gmail.com\u003c/span\u003e\u003c/p\u003e\n\u003cp\u003e3. 新浪微博： agapple0002\u003c/span\u003e\u003c/p\u003e\n\u003cp\u003e4. 报告issue：\u003c/span\u003e\u003ca href=\"https://github.com/alibaba/asyncload/issues\"\u003eissues\u003c/a\u003e\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falibaba%2Fasyncload","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falibaba%2Fasyncload","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falibaba%2Fasyncload/lists"}