f353c72941 | ||
---|---|---|
docs | ||
takin-data | ||
takin-webapp | ||
.gitignore | ||
LICENSE | ||
README.md | ||
README_CN.md | ||
pom.xml |
README.md
Takin
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:
- VM memory requirement : more than 4G (Suggest 8G)
- 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 url : registry.cn-hangzhou.aliyuncs.com/shulie-takin/takin:v1.0.0
docker pull registry.cn-hangzhou.aliyuncs.com/shulie-takin/takin:v1.0.0
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
- Modify sugre-deploy configuration:
Kill surge-deploy application nohup java -jar surge-deploy-1.0-jar-with-dependencies.jar '{"172.17.0.2":"Your own IP"}' > surge.out 2>&1 & Modify the Ip to your own IP, and restart.
- Open http://127.0.0.1/tro
Default account and password: account:admin password:pamirs@2020
- PS:If Nginx shows 502, the problem mostly is caused when the docker container has just been started, you only need to configure it correctly, and then wait a little (1-2 min) while to refresh and try again.
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
Who use Takin
License
Takin is under the Apache 2.0 license. See the LICENSE file for details.