diffy做流量比对的实践和样例

简介: 因为要想做这个流量比对,那得有前端代码,后端代码,nginx,测试同学想要熟悉diffy的功能,需要有修改前后端代码的能力,我们的AIMP项目部署起来相对复杂,所以我编写了一个小项目,用于同学们测试。

例子代码的简单介绍

因为要想做这个流量比对,那得有前端代码,后端代码,nginx,测试同学想要熟悉diffy的功能,需要有修改前后端代码的能力,我们的AIMP项目部署起来相对复杂,所以我编写了一个小项目,用于同学们测试。

1.前端代码 vue架构:https://gitee.com/li_shuai520/diffy.example.frontend.git。提供一个页面,有输入框和按钮,供用户输入和触发http请求到后端

2.后端代码python3: https://gitee.com/li_shuai520/diffy.example.backend.git。里面包含4段代码,4段代码都运行起来,会占用5000,50001,5002,5003端口

3.nginx关键配置如下:

192.168.0.240 是运行diffy机器的IP,192.168.1.5是运行我本机的IP

location /api {
            mirror /mirror;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP              $remote_addr;
            proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header X-NginX-Proxy      true;
            proxy_pass http://192.168.1.5:5000/getMsg;
    }
    location = /mirror {
            internal;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP              $remote_addr;
            proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header X-NginX-Proxy      true;
            proxy_pass http://192.168.0.240:8880/getMsg;
    }

业务实践图下载.png前端代码安装

1.把前端代码下载到本地,修改src\components\Lzw.vue里的const path 为自己的nginx后台路径

1.运行命令npm install ,npm run build。产生dist目录

2.把dist目录里的文件复制到nginx的/usr/share/nginx/html目录下

nginx配置

1.修改/etc/nginx/conf.d/default.conf。配置后端反向代理和流量镜像

后端代码安装

把4个代码run就完事了。new_code和old_code的区别,就在/getMsg这个接口的get请求的非返回结果中,多了一个“new”:随机数 。我们的目标,就是diffy要能比较并告诉我们,这个new在新老代码中是不同的

new_code有2个一样的,占用了5000和5001

old_code也有2个一样的,占用了5002和5003

diffy用docker安装

其中192.168.1.5是我自己电脑的IP地址

docker run -ti \
  -p 8880:8880 -p 8881:8881 -p 8888:8888 \
  diffy/diffy \
    -candidate=192.168.1.5:5001 \
    -master.primary=192.168.1.5:5002 \
    -master.secondary=192.168.1.5:5003 \
    -service.protocol=http \
    -serviceName="Test-Service" \
    -summary.email='zhenwei.li@sfere-elec.com' \
    -proxy.port=:8880 \
    -admin.port=:8881 \
    -http.port=:8888 \
    -allowHttpSideEffects=true \
    -rootUrl=localhost:8888

使用截图image2020-5-22_11-46-32.png

Image-1-3-1024x342.pngimage2020-5-22_11-49-4.pngimage2020-5-22_11-50-19-1024x275.pngimage2020-5-22_11-52-38.pngimage2020-5-22_11-54-45.pngimage2020-5-22_11-56-9.png

目录
相关文章
|
6月前
leetcode-2028:找出缺失的观测数据
leetcode-2028:找出缺失的观测数据
54 0
|
JSON Java Maven
如何批量查询自己的CSDN博客质量分
如何批量查询自己的CSDN博客质量分
276 0
|
4月前
|
自然语言处理 算法 搜索推荐
字符串相似度算法完全指南:编辑、令牌与序列三类算法的全面解析与深入分析
在自然语言处理领域,人们经常需要比较字符串,这些字符串可能是单词、句子、段落甚至是整个文档。如何快速判断两个单词或句子是否相似,或者相似度是好还是差。这类似于我们使用手机打错一个词,但手机会建议正确的词来修正它,那么这种如何判断字符串相似度呢?本文将详细介绍这个问题。
273 1
|
6月前
|
安全 NoSQL Java
10万条记录生成兑换码的实战方案
【5月更文挑战第27天】项目实战,介绍一次生成10万条记录兑换码的功能,由于公司需要生成大批量的兑换码,单次生成的兑换码超过10条记录。本文用于介绍相关设计方案:
290 2
|
数据可视化 算法 Java
生信教程:多序列比对
生信教程:多序列比对
204 1
|
机器学习/深度学习 数据采集 数据挖掘
处理缺失数据:详细教程与实例分析
处理缺失数据:详细教程与实例分析
259 0
|
算法 Python
双序列比对
双序列比对
337 0
双序列比对
【练习】双序列比对
【练习】双序列比对
90 0
|
数据采集 监控 开发者
网站流量日志分析--数据预处理--点击流模型 pageviews 编程实现思路| 学习笔记
快速学习网站流量日志分析--数据预处理--点击流模型 pageviews 编程实现思路
网站流量日志分析--数据预处理--点击流模型 pageviews 编程实现思路| 学习笔记
|
数据采集 分布式计算 监控
网站流量日志分析--数据预处理--实现思路详解| 学习笔记
快速学习网站流量日志分析--数据预处理--实现思路详解
网站流量日志分析--数据预处理--实现思路详解| 学习笔记