Skip to content

Commit

Permalink
Merge remote-tracking branch 'github/main'
Browse files Browse the repository at this point in the history
  • Loading branch information
hexiaofeng committed May 27, 2024
2 parents 18a3ac6 + a421fe6 commit fd835f5
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 17 deletions.
14 changes: 7 additions & 7 deletions README-zh.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,24 +8,24 @@

## 概述

用于多活(单元化)场景的流量治理Java字节码增强框架,继传统SDK治理模式与Sidecar治理模式之后,新一代Proxyless模式的探索实现,为企业Java生态提供高性能,低资源损耗,降本增效的流量治理框架。
用于多活(单元化)场景的流量治理Java字节码增强框架,继传统SDK治理模式与Sidecar治理模式之后,基于微内核可扩展架构的新一代Proxyless模式的探索实现,为企业Java生态提供高性能,低资源损耗,降本增效的流量治理框架。

## 架构
1. Agent在多活场景应用
1. Agent在多活场景应用
![pic](docs/image/architect-0.png)

2. Agent架构图
2. Agent架构图
![pic](docs/image/architect-1.png)

3. Agent治理原理
3. Agent治理原理
![pic](docs/image/architect-2.png)

4. Agent基于泳道的全链路灰度
4. Agent基于泳道的全链路灰度
![pic](docs/image/architect-3.png)

5. Agent本地分区优先策略
5. Agent本地分区优先策略
![pic](docs/image/architect-4.png)
6. 类加载器,用于资源隔离
6. 类加载器,用于资源隔离
![pic](docs/image/architect-5.png)

## 如何使用
Expand Down
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,25 +8,25 @@ English | [简体中文](./README-zh.md)

## Overview

Java bytecode enhancement framework for traffic governance in multi-activity (unit) scenarios. Following the traditional sdk governance mode and sidecar governance mode, the exploration and implementation of a new generation of proxyless mode provides a traffic governance framework with high performance, low resource consumption, cost reduction and efficiency for the enterprise java ecosystem.
Java bytecode enhancement framework for traffic governance in multi-activity (unit) scenarios. Following the traditional sdk governance mode and sidecar governance mode, exploring the implementation of the new generation Proxyless mode based on microkernel extensible architecture, providing high performance, low resource consumption, and cost-effective traffic governance framework for enterprise Java ecosystem.

## Architecture
1. Agent for multi-Live
1. Agent for multi-Live
![pic](docs/image/architect-0.png)

2. Agent architect
2. Agent architect
![pic](docs/image/architect-1.png)

3. Agent government theory
3. Agent government theory
![pic](docs/image/architect-2.png)

4. Agent for full chain gray release based on lane
4. Agent for full chain gray release based on lane
![pic](docs/image/architect-3.png)

5. Agent for local cell priority strategy
5. Agent for local cell priority strategy
![pic](docs/image/architect-4.png)

6. ClassLoader for isolation
6. ClassLoader for isolation
![pic](docs/image/architect-5.png)

## How to use
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -262,15 +262,15 @@ private static Object install(Instrumentation instrumentation, boolean dynamic,
Constructor<?> constructor = type.getConstructor(Instrumentation.class, boolean.class, Map.class, Map.class, Runnable.class);
// Instantiate the bootstrap class with the given parameters.
Object lifecycle = constructor.newInstance(instrumentation, dynamic, env, config, unLoader);
// Get the install method from the bootstrap class.
// Get the installation method from the bootstrap class.
Method install = type.getDeclaredMethod(BOOTSTRAP_METHOD_INSTALL);
// Invoke the install method to complete the agent installation.
// Invoke the installation method to complete the agent installation.
install.invoke(lifecycle);
logger.info("Success installing agent.");
// Return the lifecycle object for further operations.
return lifecycle;
} catch (InvocationTargetException e) {
// Log the exception thrown by the install method and exit.
// Log the exception thrown by the installation method and exit.
String message = e.getMessage();
message = message == null ? e.getTargetException().getMessage() : message;
logger.log(Level.SEVERE, "Failed to install agent. caused by " + message);
Expand Down

0 comments on commit fd835f5

Please sign in to comment.