备注:
   实际上是一个代理工具,但是又不是简单的进行代理(tcp,可以配置策略,toxics 实现延迟,模拟故障,
   对于这个大家可能了解的就是netflix 公司的chaos monkey,实际的使用大家可以参考相关文章,本次只是
   对于toxiproxy 的简单安装试用,同时这个工具可以放到大家持续集成工具集中。
 
1. 安装(为了简单同时安装了server 以及cli)
// 下载地址
wget https://github.com/Shopify/toxiproxy/releases/download/v2.1.2/toxiproxy-server-linux-amd64
wget https://github.com/Shopify/toxiproxy/releases/download/v2.1.2/toxiproxy-cli-linux-amd64 // 配置安装(实际上就是改名称,拷贝文件)
mv toxiproxy-cli-linux-amd64 toxiproxy-cli
mv toxiproxy-server-linux-amd64 toxiproxy-server
chmod +x *
cp * /usr/bin/
2. 试用(为了测试安装了redis )
// redis 环境准备
yum install -y redis
systemctl restart redis // 启动toxiproxy (后台进程)
nohup toxiproxy-server -host "0.0.0.0" & // 代理 redis
toxiproxy-cli create myredis -l 0.0.0.0:26379 -u 127.0.0.1:6379 // 配置toxic(让redis 处理延迟1秒)
toxiproxy-cli toxic add myredis -t latency -a latency=1000 // 连接测试
redis-cli -h XXXXXX -p 26379
  测试效果

   
 
3.  帮助命令(比较简单)
a. server

toxiproxy-server  --help
Usage of toxiproxy-server:
-config string
JSON file containing proxies to create on startup
-host string
Host for toxiproxy's API to listen on (default "localhost")
-port string
Port for toxiproxy's API to listen on (default "8474")
-seed int
Seed for randomizing toxics with (default 1511142454198638055) b. cli list, l, li, ls list all proxies
usage: 'toxiproxy-cli list' inspect, i, ins inspect a single proxy
usage: 'toxiproxy-cli inspect <proxyName>' create, c, new create a new proxy
usage: 'toxiproxy-cli create <proxyName> --listen <addr> --upstream <addr>' toggle, tog toggle enabled status on a proxy
usage: 'toxiproxy-cli toggle <proxyName>' delete, d delete a proxy
usage: 'toxiproxy-cli delete <proxyName>' toxic, t add, remove or update a toxic
usage: see 'toxiproxy-cli toxic'
4. client sdk  (因为提供了rest api  sdk 比较好使用,同时官方也提供了好多)
toxiproxy-ruby
toxiproxy-go
toxiproxy-python
toxiproxy.net
toxiproxy-php-client
toxiproxy-node-client
toxiproxy-java
5. 参考文档
https://github.com/Shopify/toxiproxy
 
 
 
 

toxiproxy 安装试用的更多相关文章

  1. 项目管理工具 Redmine 安装试用手记

    原文:项目管理工具 Redmine 安装试用手记 项目管理工具 Redmine 安装试用手记 分类: Redmine2009-06-01 10:12 996人阅读 评论(1) 收藏 举报 项目管理工具 ...

  2. Tencent Server Web 安装试用

    Tencent Server Web 安装试用 私有环境搭建,使用docker-compose 进行memcache 安装 参考github 代码 https://github.com/rongfen ...

  3. windows openssh server 安装试用

    使用Windows的可能会知道win10 的已经包好了openssh 服务,但是对于其他机器win 7 windows 2008 ,就需要其他的方法了 还好powershell 团队开发了支持wind ...

  4. pgbench 安装试用

    pgbench 是一个方便的pg 性能测试工具,以下是简单的测试试用 安装 安装pg yum install https://download.postgresql.org/pub/repos/yum ...

  5. flynn 开源paas 平台安装试用

    flynn 是一个不错的开源paas 平台,基于git 以及容器技术,开发模型与 heroku 基本一样,同时构建方式就是基于heroku 的buildpacks 安装 官方文档提示说明是ubuntu ...

  6. nsq 安装试用

    因为是mac 系统安装试用brew install nsq 安装 brew install nsq 组件说明 nsqd 守护进程进行消息的接受,缓存以及传递消息给客户端,需要配置nsqlookupd地 ...

  7. apache phoenix 安装试用

    备注:   本次安装是在hbase docker 镜像的基础上配置的,主要是为了方便学习,而hbase搭建有觉得   有点费事,用镜像简单.   1. hbase 镜像 docker pull har ...

  8. Nchan 安装试用(openresty 同时支持)

    备注:        使用nginx最新的源码包(nginx-1.13.6),以及源码安装   1. 下载源码包(nginx+ Nchan) https://nginx.org/download/ng ...

  9. casperjs 安装试用

    纠结了好久,一直报错, 具体错误信息现在已经忘了,后来看了官网的prerequisite,才知道要安装特定版本或greater 的 phantomjs 和 Python.我这边主要是没装python. ...

随机推荐

  1. winform版本自动更新

    我们在使用软件的时候经常会遇到升级版本,这也是Winform程序的一个功能,今天就大概说下我是怎么实现的吧(代码有点不完美有小BUG,后面再说) 先说下我的思路:首先在打开程序的时候去拿到我之前在网站 ...

  2. 027——VUE中事件修饰符:stop prevent self capture

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. [sqlite] 判断表、视图是否存在及常用C#操作语句

    1,判断表是否存在: SELECT name, sql FROM sqlite_master WHERE type="table" AND name = "Dom&quo ...

  4. 【微软混合现实】开始使用Unity-第一章:创建一个新的项目

    使用Unity开发App,第一步需要创建一个项目.项目具有一系列组织好文件夹,其中最重要的是你的附件文件夹(Assets folder).在这个文件夹中,存储了从其他工具中创建的数字内容,比如Maya ...

  5. Flask项目中的蓝图简介及使用方式

    Blueprint概念 简单来说,Blueprint 是一个存储操作方法的容器,这些操作在这个Blueprint 被注册到一个应用之后就可以被调用,Flask 可以通过Blueprint来组织URL以 ...

  6. NAT&Port Forwarding&Port Triggering

    NAT     Nat,网络地址转换协议.主要功能是实现局域网内的本地主机与外网通信.     在连接外网时,内部Ip地址需要转换为网关(一般为路由器Ip地址)(端口号也需要相应的转换)     如: ...

  7. java事务(二)

    本地事务 事务类型 事务可以分为本地事务和分布式事务两种类型.这两种事务类型是根据访问并更新的数据资源的多少来进行区分的.本地事务是在单个数据源上进行数据的访问和更新,而分布式事务是跨越多个数据源来进 ...

  8. JAVA交换两个变量的值-(不使用第三变量)

    以下方法的根本原理就是: 借助第三个变量 c = a; a = b; b = c; 运算符-不借助第三变量: a = a+b; b = a-b; a = a-b; 为运算符-不借助第三个变量: (此种 ...

  9. Linux下使用Opencv打开笔记本摄像头

    新建test文件夹,文件夹存在test.cpp和CMakeLists.txt test.cpp#include <iostream> #include <string> #in ...

  10. 在初次安vs2008时设置的为C#现在怎么将其改为其他类型的界面

    如将C#改成C++, 工具 -> 导入和导出设置 -> 重置所有设置 -> 否,仅重置设置,从而覆盖我的当前设置 -> 重新选一个设置 -> 完成 选择完毕后,如新建MF ...