/Takin

Takin is an Java-based, open-source system designed to measure online environmental performance test for full-links, Especially for microservices. Through ArchKeeper, middlewares and applications can identify real online traffic and test traffic, ensure that they enter the right databases.

Primary LanguageJavaApache License 2.0Apache-2.0

Takin

LICENSE Language

English / 中文

What is Takin?

Takin is an Java-based, open-source system designed to measure online environmental performance test for full-links, Especially for microservices. Through ArchGuadian, middlewares and applications can identify real online traffic and test traffic, ensure that they enter the right databases.

Why should we do online environmental performance test

Microservices Architecture is used commonly nowadays and it always make system complex to understand for humans. Moreover, businesses are also very complex in huge system. Business complexity and system complexity make it difficult to :

  • Keep entire system highly available
  • Maintain Research & Development efficiency.

In order to keep system high available, we usually make performance test on test environment or online single-service. However, test environment is very different from online environment, single-service can't stand for the whole service-links. They can't guarantee system performance.

Microservices Are Complex
Compare with monolithic application, Microservices architecture increases complexity for business system. It may maintain multiple tools and frameworks.

Business Systems Are Complex
Businesses involve different sections and many of them are long-process and complicated, such as E-Commerce businesses.

The Microservices Relation Is Complex
In a microservices architecture system with a lot of business services, the calling relation between services is very complicated. Every change may affect the availability of the entire system and make developers difficult to release new versions Frequently.

Quick Start Instruction

docker:

  • Docker mirror size : 1.8 G

If docker configuration doesn't set AliYun docker source :

vim /etc/docker/daemon.json

Add following configuration:

{
  "registry-mirrors": ["https://q2gr04ke.mirror.aliyuncs.com"]
}

restart service

systemctl daemon-reload

Pull docker

docker run -d -p 80:80 -p 2181:2181 -p 3306:3306 -p 6379:6379 -p 8086:8086 -p 9000:9000 -p 10032:10032 -p 6628:6628 -p 8000:8000 -p 6627:6627 -p 8888:8888 -p 29900-29999:29900-29999 registry.cn-hangzhou.aliyuncs.com/forcecop/forcecop:v1.0.0
  • Parameter:-d start in background,-p port.
    The Initiation of docker need about 10 mins because it need install necessary components. -d can ignore installment information of components in background. If you dont't want to open your server's port, you can use --net=host and make sure it and host server are in the same network。
  • Modify the IP address of the index.html file to the server's local IP address.
    # Enter Docker
    vi /data/apps/dist/tro/index.html
    # Modify serverUrl to the server's local IP address
    # Restart Nginx:
    nginx -s reload
    

after installation:

Instruction

Takin Architecture


Takin consists of Agent, Web App and Surge Data.

Agent

see Agent

Surge Data

see surge-data

Controller Platform

see takin-webapp

Community

Mailing List: Mail to shulie@shulie.io
Wechat group

QQ group: 118098566
QR code:

Dingding group:

WeChat Official Account:

Ask Questions in Official Forum

Official Forum

License

Takin is under the Apache 2.0 license. See the LICENSE file for details.