http://www.ox-holdings.com

没有任何一家网络公司可以不使用开源技术,我想开发录制回放、故障模拟、动态日志、行链路获取等等工具

摘要阿里巴巴于近期正式开源了其自研的动态非侵入AOP解决方案:JVM-Sandbox。JVM-Sandbox即JVM沙箱容器,一种JVM的非侵入式运行期AOP解决方案。写在前面随着软件部署规模的扩大,系统的功能的细化,系统间耦合度和链路复杂度不断加强。若要继续保持现规模系统的稳定性,需要实现并完善监控体系、故障定位分析、流量录制回放、强弱依赖检测、故障演练等支撑工具平台。出于对服务器规模和业务稳定性的考量,这些配套工具平台要具备对目标应用具有无侵入、实时生效、动态可插拔的特点。要实现这些,多少都会触及到一块底层技术——动态字节码增强。如果每个工具都自己实现一套字节码增强逻辑,前期实现的门槛与后期维护成本高,且不同工具间相互影响造成不可预知的风险。如何屏蔽字节码增强技术的高门槛,降低研发运维成本,同时又能支持上层多个工具平台功能的快速实现和动态管理,成为阿里集团的目标。从去年开始潜心修行,创新的研发了一套实时无侵入的字节码增强框架。于是 JVM-Sandbox 诞生了!诞生历程2014年GREYS第一版正式发布,一路看着他从无到有,并不断优化强大,感慨羡慕之余,也在想GREYS是不是只能做问题定位。2015年开始根据GREYS的底层代码完成了人生的第一个字节码增强工具——动态日志。之后又萌生了将其拆解成录制回放、故障模拟等工具的想法。扪心自问,我是想以一人一个团队的力量建立大而全的工具平台,还是做一个底层中台,让每一位技术人员都可以在它的基础上快速的实现业务功能。我选择了后者。应用场景JVM-Sandbox 的目标群体Btrace 好强大,也曾技痒想做一个更便捷、更适合自己的问题定位工具,既可支持线上链路监控排查,也可支持单机版问题定位。有时候突然一个问题反馈上来,需要入参才能完成定位,但恰恰没有任何日志,甚至出现在别人的代码里,好想开发一个工具可以根据需要动态添加日志,最好还能按照业务 ID 进行过滤。系统间的异常模拟可以使用的工具很多,可是系统内的异常模拟怎么办,加开关或是用 AOP 在开发系统中实现,好想开发一个更优雅的异常模拟工具,既能模拟系统间的异常,又能模拟系统内的异常。好想获取行调用链路数据,可以用它识别场景、覆盖率统计等等,覆盖率统计工具不能原生支持,统计链路数据不准确。想自己开发一个工具获取行链路数据。我想开发录制回放、故障模拟、动态日志、行链路获取等等工具,就算我开发完成了,这些工具底层实现原理相同,同时使用,要怎么消除这些工具之间的影响,怎么保证这些工具动态加载,怎么保证动态加载 / 卸载之后不会影响其他工具,怎么保证在工具有问题的时候,快速消除影响,代码还原。如果你有以上诉求,那么你就是 JVM-Sandbox 的潜在客户。JVM-Sandbox 提供动态增强类你所指定的类,获取你想要的参数和行信息;提供动态可插拔容器,管理基于 JVM-Sandbox 的模块。JVM-Sandbox 能做什么?在 JVM-Sandbox(以下简称沙箱)的世界观中,任何一个 Java 方法的调用都可以分解为BEFORE、RETURN和THROWS三个环节,由此在三个环节上引申出对应环节的事件探测和流程控制机制。不仅如此还有LINE事件,可以完成代码行的记录。// BEFORE-EVENTtry { /* * do something... */ //LINE-EVENT a(); // RETURN-EVENT return;} catch (Throwable cause) { // THROWS-EVENT}基于BEFORE、RETURN和THROWS三个环节事件以及LINE事件,可以完成很多类 AOP 的操作。可以感知和改变方法调用的入参可以感知和改变方法调用返回值和抛出的异常可以感知一个请求按顺序执行了哪些行可以改变方法执行的流程在方法体执行之前直接返回自定义结果对象,原有方法代码将不会被执行在方法体返回之前重新构造新的结果对象,甚至可以改变为抛出异常在方法体抛出异常之后重新抛出新的异常,甚至可以改变为正常返回JVM-Sandbox 都有哪些可能的应用场景线上故障定位线上系统流控线上故障模拟方法请求录制和结果回放动态日志打印安全信息监测和脱敏行链路计算和覆盖率统计JVM 沙箱还能帮助你做很多很多,取决于你的脑洞有多大了。JVM-Sandbox 在阿里集团的应用线上故障演练17 年故障演练平台在 JVM-Sandbox 基础上仅耗时 1 周即完成故障注入部分的系统重构。重构后的系统在挂载效率和挂载成功率方面有了明显的提升,极大的缩短的故障演练的时间,演练效率提升了数十倍。基于 JVM-Sandbox 改造后的故障演练平台,通用性强,所有基于 JVM 启动的系统均支持,极大的拓展了故障演练的范围,故障演练已达到集团级部署。与 16 年故障演练数据对比,17 年的故障演练平台,覆盖 BU 提升了 1.6 倍,覆盖应用提升了 5 倍,覆盖场景提升了 37 倍。依赖检测17 年强弱依赖自动化检测平台诞生。它提供了依赖检测、强弱分析、依赖扫描、故障注入等多种能力,底层能力基于 JVM-Sandbox 在 1 周内完成功能开发。利用其模块容器的特性,将前人开发的模块与新增模块一起挂载共同工作,完成平台功能。强弱依赖梳理方面,承载了淘宝的系统强弱依赖梳理工作,260+ 个应用一键接入系统,并实现了 0 人工成本的自动化、智能化梳理。服务端录制隔离回放机制在 JVM-Sandbox 基础上开发了一个 SS 模块,相当于一个录音机 + 回放机, 在调用中间件的时候, 顺序录制下了我们的中间件请求, 并且存储这份‘磁带’到服务器上。当我们需要隔离回放的时候, 将这份‘磁带’找到, 并且在需要的时候直接从‘磁带’读取, 并不需要真实地请求我们的中间件, 这样就保证了我们的读、写接口也能做到可重复使用,从而实现服务端的隔离回放。线上录制隔离回放不仅极大的缩短的业务回归的耗时,把业务测试同学从繁琐的数据准备和接口自动化脚本的编写过程中解放出来,而且极大的拓展了覆盖范围,使回归的范围更贴近用户,且场景更丰富。精准回归服务端录制隔离回放机制诞生之后,虽然有效的提升了覆盖范围,降低了自动化脚本的人工投入,但是也带来了新的问题。线上录制的场景是海量的,单个系统都可以达到万级、十万级甚至百万级别的录制,这些录制的场景中,存在大量的重复场景,如何识别重复场景,实现有效、精准的回放,成为新的待解决问题。17 年在 JVM-Sandbox 的基础上,利用 LineEvnet 实现了行链路识别和标记,有效的提升了回放的精准度和效率。JVM-Sandbox 在阿里集团已经实现全网部署,在其上加载不同的模块实现了不同的功能,每个功能根据 BU 和应用的需要进行加载:强弱依赖检测功能:覆盖淘宝、天猫、业务平台、菜鸟、飞猪、ICBU、CBU 等 7 个 BU,240+ 个应用;线上故障演练功能:覆盖集团客户体验事业群、淘宝网、云零售事业部、天猫、业务平台、飞猪、菜鸟、钉钉、阿里健康、CBU、集团安全、支付宝等 16 个 BU,391 个应用;服务端录制回放:覆盖淘宝网、钉钉 2 个 BU;精准回归:覆盖淘宝网、业务平台、钉钉 3 个 BU。通过上边的事例,想必大家对 JVM-Sandbox 是什么,核心功能是什么,还能做哪些事情,以及是否可以为阿里以外的同学提供服务等问题更感兴趣了,下面我们着重介绍这部分内容。开源和共建1、已开源,寻求更多的同学一起完善 JVM-Sandbox 的功能。Github 地址: JVM-Sandbox 的功能;3、希望更多的同学想到跟多的应用场景,并能开源出来供大家使用。综上,JVM-Sandbox 是一个纯 java 编写的 AOP 解决方案。它为研发人员提供了一个快速实现字节码增强工具的平台。他的模块管理功能可以最大限度的复用模块、协同合作,减少重复投入。随着 JVM-Sandbox 的开源,我们期待更多的人加入到功能扩张和优化上,使其适配更多的开源中间件和 JVM。希望有更多的同学,发挥其聪明才智,开发更多、更好的上层模块,提供给自己和其他人的人使用。也希望能够利用好已有的模块,组装出新的工具平台和应用场景。JVM-Sandbox 建设和应用期待大家共同建设。

1.分布式应用服务开发的一站式解决方案 Spring Cloud Alibaba

摘要: 云栖社区特在2018年年末,将阿里巴巴的一些重要的开源项目进行整理,希望对大家有所帮助。

Spring Cloud Alibaba 致力于提供分布式应用服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。

开源展示了人类共同协作,成果分享的魅力,每一次技术发展都是站在巨人的肩膀上,技术诸多创新和发展往往就是基于开源发展起来的,没有任何一家网络公司可以不使用开源技术,仅靠自身技术而发展起来。阿里巴巴各个团队都是发自内心地将踩过的坑和总结的经验融入到开源项目中,供业界所有人使用,希望帮助他人解决问题。

依托 Spring Cloud Alibaba,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。

云栖社区特在2018年年末,将阿里巴巴的一些重要的开源项目进行整理,希望对大家有所帮助。(以下项目排名不分先后)

地址:

这些优质的开源项目即将成立便于开发者交流的讨论钉钉群。社区将不断更新,欢迎大家加入讨论。

2. JDBC 连接池、监控组件 Druid

1.数据驱动的高交互可视化图形语法 AntV - G2

Druid是一个 JDBC 组件。

图片 1

1.监控数据库访问性能。

G2 是一套基于可视化编码的图形语法,以数据驱动,具有高度的易用性和扩展性,用户无需关注各种繁琐的实现细节,一条语句即可构建出各种各样的可交互的统计图表。

2.提供了一个高效、功能强大、可扩展性好的数据库连接池。

同时,G2 也是 AntV 最重要的组成,始于《The Grammar of Graphics》一书描述的视觉编码语法系统(这也是 G2 项目命名的由来)。

3.数据库密码加密。

项目地址:

4.SQL执行日志。

2.企业级中后台 UI 解决方案 Fusion Design

地址:

图片 2

3. Java 的 JSON 处理器 fastjson

Fusion Design 是一种旨在提升设计与开发之间 UI 构建效率的工作方式。通过建设基于 DPL 模式的,设计、前端之间的标准协议与工作流,来快速构建符合业务诉求的 DPL,提升 DPL 的构建效率和应用效率,帮助业务快速实现 UI 构建。

fastjson 是一个性能很好的 Java 语言实现的 JSON 解析器和生成器,来自阿里巴巴的工程师开发。

项目地址:

主要特点:快速FAST (比其它任何基于Java的解析器和生成器更快,包括jackson);强大(支持普通JDK类包括任意Java Bean Class、Collection、Map、Date或enum);零依赖(没有依赖其它任何类库除了JDK)。

3.设计语言 & 前端框架 Ant Design

地址:

图片 3

4. 服务框架 Dubbo

Ant Design 是蚂蚁金服开发和正在使用的一套企业级的前端设计语言和基于 React 的前端框架实现。它的特性:企业级金融产品的交互语言和视觉体系;丰富实用的 React UI 组件;基于 React 的组件化开发模式;背靠 npm 生态圈;基于 webpack 的调试构建方案,支持 ES6。

Apache Dubbo (incubating) |是阿里巴巴的一款高性能、轻量级的开源Java RPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。

地址:

地址:

4.基于 G2 封装的 React 图表库 BizCharts

5. 企业级流式计算引擎 JStorm

图片 4

JStorm 是参考 Apache Storm 实现的实时流式计算框架,在网络IO、线程模型、资源调度、可用性及稳定性上做了持续改进,已被越来越多企业使用。JStorm 可以看作是 storm 的 java 增强版本,除了内核用纯java实现外,还包括了thrift、python、facet ui。从架构上看,其本质是一个基于 zk 的分布式调度系统。

BizCharts 是一个基于 G2 封装的 React 图表库,具有 G2、React 的全部优点,可以让用户以组件的形式组合出无数种图表;并且集成了大量的统计工具,支持多种坐标系绘制,交互定制,动画定制以及图形定制等等。相信 BizCharts 定能成为您的数据可视化项目的强力助手。

地址:

地址:

6. apns4j

5.企业级 Node.js 框架 Egg

apns4j 是 Apple Push Notification Service 的 Java 实现!

图片 5

地址:

阿里开源的企业级 Node.js 框架。Egg.js 的插件机制有很高的可扩展性,一个插件只做一件事。Egg.js 通过框架聚合这些插件,并根据自己的业务场景定制配置,这样应用的开发成本就变得很低。

7. 分布式数据层 TDDL

地址:

TDDL 是一个基于集中式配置的 jdbc datasource实现,具有主备,读写分离,动态数据库配置等功能。

6.基于 React 的前端框架 umi

地址:

umi 是可插拔的企业级 React 框架,类似 Next.js。地址:

8. 轻量级分布式数据访问层 CobarClient

7.前端构建和工程化工具 Dawn

Cobar Client是一个轻量级分布式数据访问层基于iBatis(已更名为MyBatis)和Spring框架实现。

图片 6

地址:

Dawn 取「黎明、破晓」之意,原为「阿里云·业务运营团队」内部的前端构建和工程化工具,现已完全开源。它通过 pipeline 和 middleware 将开发过程抽象为相对固定的阶段和有限的操作,简化并统一了开发人员的日常构建与开发相关的工作。

9. 淘宝定制 JVM:TaobaoJVM

地址:

TaobaoJVM 基于 OpenJDK HotSpot VM,是国内第一个优化、定制且开源的服务器版Java虚拟机。目前已经在淘宝、天猫上线,全部替换了Oracle官方JVM版本,在性能,功能上都初步体现了它的价值。

8.页面逻辑原型 Ant UX

地址:

图片 7

10. Java 图片处理类库 SimpleImage

这是一套制作页面逻辑的素材库,当你在产品设计初期,可以用它来绘制页面与页面之间的逻辑图,帮助你了解产品架构,业务流程。

SimpleImage是阿里巴巴的一个Java图片处理的类库,可以实现图片缩略、水印等处理。

配合工具: OmniGraffle ,Sketch

地址:

OmniGraffle 可以用来绘制图表,流程图,组织结构图以及插图,也可以用来组织头脑中思考的信息,组织头脑风暴的结果,绘制心智图,作为样式管理器,或设计网页或PDF文档的原型。Sketch 是一个矢量设计软件,可以帮助你快速投入UI设计当中。

11. redis 的 java 客户端 Tedis

地址:

Tedis 是另一个 redis 的 java 客户端。Tedis 的目标是打造一个可在生产环境直接使用的高可用 Redis 解决方案。

9.跨容器的渲染引擎 Rax

地址:

图片 8

12.开源 Java 诊断工具 Arthas

Rax 是阿里开源的一个通用的 JavaScript 库,主要有 React 兼容的 API 。 使用 React 的就应该已经知道如何使用 Rax。

Arthas是阿里巴巴开源的 Java 诊断工具,深受开发者喜爱。

地址:

Arthas 采用命令行交互模式,同时提供丰富的 Tab 自动补全功能,进一步方便进行问题的定位和诊断。

10.基于 WebGL 的 Javascript 3D 绘图引擎 G3D

地址:

图片 9

13.动态服务发现、配置和服务管理平台 Nacos

G3D 是阿里巴巴开源的一款基于 WebGL 的 javascript 3D 绘图引擎。与其他的 WebGL 3D 引擎相比,G3D 是更加「纯粹」的渲染引擎,也就是说,它完全不依赖任何 DOM API,而是仅仅依赖一个 canvas 对象(或者类 canvas 对象)。该特性使得 G3D 不仅能够运行在浏览器环境中,也能够运行在一些非浏览器的 js 终端环境下(hybrid 环境),比如 GCanvas 环境(基于 Weex 或 ReactNative)。

图片 10

地址:

Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您实现动态服务发现、服务配置管理、服务及流量管理。

11.跨平台移动开发工具 Weex

Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos 是构建以“服务”为中心的现代应用架构(例如微服务范式、云原生范式)的服务基础设施。

图片 11

地址:

Weex 是开源的跨平台移动开发工具,能够完美兼顾性能与动态性,让移动开发者通过简捷的前端语法写出Native级别的性能体验,并支持iOS、安卓、YunOS及Web等多端部署。

14.Java 解析 Excel 工具 easyexcel

地址:

Java 解析、生成 Excel 比较有名的框架有 Apache poi、jxl 。但他们都存在一个严重的问题就是非常的耗内存,poi 有一套 SAX 模式的 API 可以一定程度的解决一些内存溢出的问题,但 POI 还是有一些缺陷,比如 07 版 Excel 解压缩以及解压后存储都是在内存中完成的,内存消耗依然很大。easyexcel 重写了 poi 对 07 版 Excel 的解析,能够原本一个 3M 的 excel 用 POI sax 依然需要 100M 左右内存降低到 KB 级别,并且再大的 excel 不会出现内存溢出,03 版依赖 POI 的 sax 模式。在上层做了模型转换的封装,让使用者更加简单方便。

12.基于 Weex 的 UI 组件库 Weex Ui

地址:

图片 12

15.高可用流量管理框架 Sentinel

Weex Ui 是一个基于 Weex 的富交互、轻量级、高性能的 UI 组件库。

Sentinel 是面向微服务的轻量级流量控制框架,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。

地址:

只要通过 Sentinel API 定义的代码,就是资源,能够被 Sentinel 保护起来。大部分情况下,可以使用方法签名,URL,甚至服务名称作为资源名来标示资源。

13.动效语言& React 框架动效解决方案 Ant Motion

地址:

图片 13

16.基于多维度 Metrics 的系统度量和监控中间件 SOFALookout

Ant Motion 是从蚂蚁金服的 Ant Design 中提炼出来的动效语言。它不仅仅是动效语言,同时也是一套 React 框架动效解决方案,提供了单项,组合动画,以及整套解决方案,帮助开发者更容易的在项目中使用动效。

Lookout 是一个利用多维度的 metrics 对目标系统进行度量和监控的项目。Lookout 的多维度 metrics 参考 Metrics 2.0 标准。Lookout 项目分为客户端部分与服务器端部分。

地址:

客户端是一个 Java 的类库,可以将它植入您的应用代码中采集 metrics 信息,客户端更多详情。

14.多页面切换场景统一解决方案 UltraViewPager

服务端代码部分,将于下一版本提供。通过 LOOKOUT 的服务,可以对 metrics 数据进行收集、加工、存储和查询等处理,另外结合 grafana,可做数据可视化展示。

UltraViewPager 是阿里开源的一个封装多种特性的 ViewPager ,主要是为多页面切换场景提供统一解决方案。

地址:

地址:

17.基于 Spring Boot 的研发框架 SOFABoot

15.模块化 UI 界面方案 Tangram UI

SOFABoot 是蚂蚁金服开源的基于 Spring Boot 的研发框架,它在 Spring Boot 的基础上,提供了诸如 Readiness Check,类隔离,日志空间隔离等等能力。在增强了 Spring Boot 的同时,SOFABoot 提供了让用户可以在 Spring Boot 中非常方便地使用 SOFAStack 相关中间件的能力。

图片 14

地址:

Tangram,七巧板,是天猫团队开源的跨平台模块化 UI 界面方案。

18.轻量级 Java 类隔离容器 SOFAArk

Tangram 不仅仅是一个 Native(iOS & Android)的界面开发框架,而是从日常工作中沉淀出的一套界面解决方案,涵盖了 Native SDK、GUI操作台、后端逻辑容器、组件库机制的一整套方案。

SOFAArk 是一款基于 Java 实现的轻量级类隔离容器,由蚂蚁金服公司开源贡献;主要为应用程序提供类隔离和依赖包隔离的能力;基于 Fat Jar 技术,应用可以被打包成一个自包含可运行的 Fat Jar,应用既可以是简单的单模块 Java 应用也可以是 Spring Boot 应用。可访问网址进入快速开始并获取更多详细信息。

地址:

地址:

16.自动化测试解决方案 Macaca

19.分布式链路追踪中间件 SOFATracer

图片 15

SOFATracer 是一个用于分布式系统调用跟踪的组件,通过统一的 traceId 将调用链路中的各种网络调用情况以日志的方式记录下来,以达到透视化网络调用的目的。这些日志可用于故障的快速发现,服务治理等。

Macaca是一套完整的自动化测试解决方案,支持移动端和PC端,支持Native, Hybrid, H5 等多种应用类型,并且提供客户端工具和持续集成服务。

地址:

地址:

20.高性能 Java RPC 框架 SOFARPC

17.基于 React 的中后台应用解决方案 飞冰 ICE

SOFARPC 是一个高可扩展性、高性能、生产级的 Java RPC 框架。在蚂蚁金服 SOFARPC 已经经历了十多年及五代版本的发展。SOFARPC 致力于简化应用之间的 RPC 调用,为应用提供方便透明、稳定高效的点对点远程服务调用方案。为了用户和开发者方便的进行功能扩展,SOFARPC 提供了丰富的模型抽象和可扩展接口,包括过滤器、路由、负载均衡等等。同时围绕 SOFARPC 框架及其周边组件提供丰富的微服务治理方案。

图片 16

地址:

飞冰 是一套基于 React 的中后台应用解决方案,ICE 包含了一条从设计端到开发端的完整链路,帮助用户快速搭建属于自己的中后台应用。

21.基于 Netty 的网络通信框架 SOFABolt

面向设计者端,ICE 提供了 ICE Design 设计语言,来给 UI 界面提供专业的视觉指导。面向开发者端,ICE 提供了 Iceworks 工具,这是一个图形化界面的开发平台,它承载了 ICE 的物料体系和开发体验。

SOFABolt 是蚂蚁金融服务集团开发的一套基于 Netty 实现的网络通信框架。

地址:

为了让 Java 程序员能将更多的精力放在基于网络通信的业务逻辑实现上,而不是过多的纠结于网络底层 NIO 的实现以及处理难以调试的网络问题,Netty 应运而生。

18.HTML5 互动游戏引擎 Hilo

为了让中间件开发者能将更多的精力放在产品功能特性实现上,而不是重复地一遍遍制造通信框架的轮子,SOFABolt 应运而生。

Hilo 是阿里巴巴集团开发的一款HTML5跨终端游戏解决方案,ta可以帮助开发者快速创建HTML5游戏。

地址:

地址:

22.动态非侵入 AOP 解决方案 JVM-Sandbox

19.JavaScript 模板引擎 Velocity.js

JVM-Sandbox,JVM 沙箱容器,一种基于 JVM 的非侵入式运行期 AOP 解决方案。

Velocity.js 是velocity模板语法的javascript实现。Velocity 是基于Java的模板引擎,广泛应用在阿里集 体各个子公司。Velocity模板适用于大量模板使用的场景,支持复杂的逻辑运算,包含 基本数据类型、变量赋值和函数等功能。Velocity.js 支持 Node.js 和浏览器环境。

地址:

地址:

23.面向云的分布式消息领域标准 OpenMessaging

20. 非侵入式运行期 AOP 框架 Dexposed

OpenMessaging 是由阿里巴巴发起,与雅虎、滴滴出行、Streamlio 公司共同参与创立,旨在创立厂商无关、平台无关的分布式消息及流处理领域的应用开发标准。

Dexposed 是阿里巴巴无线事业部第一个重量级 Andorid 开源软件,基于 ROOT 社区著名开源项目 Xposed 改造剥离了 ROOT 部分,演化为服务于所在应用自身的 AOP 框架。它支撑了阿里大部分 App 的在线分钟级客户端 bugfix 和线上调试能力。

地址:

地址:

24.P2P 文件分发系统 Dragonfly

21. 自动化测试解决方案 UI Recorder

Dragonfly是阿里自研的 P2P 文件分发系统,用于解决大规模文件分发场景下分发耗时、成功率低、带宽浪费等难题。大幅提升发布部署、数据预热、大规模容器镜像分发等业务能力。

图片 17

开源版的 Dragonfly 可用于 P2P 文件分发、容器镜像分发、局部限速、磁盘容量预检等。它支持多种容器技术,对容器本身无需做任何改造,镜像分发比 natvie 方式提速可高达 57 倍,Registry 网络出流量降低99.5%以上。

UI Recorder 是一款零成本的整体自动化测试解决方案,一次自测等于多次测试,测一个浏览器等于测多个浏览器!

地址:

地址:

郑重声明:本文版权归新匍京a奥门-最全网站手机版app官方下载所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。