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

目录
相关文章
|
数据库
ACN规则深度解密-全网最细的剖析
ACN规则深度解密-全网最细的剖析
|
JSON Java Maven
如何批量查询自己的CSDN博客质量分
如何批量查询自己的CSDN博客质量分
295 0
|
3月前
|
JSON 算法 数据可视化
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
这篇文章是关于如何通过算法接口返回的目标检测结果来计算性能指标的笔记。它涵盖了任务描述、指标分析(包括TP、FP、FN、TN、精准率和召回率),接口处理,数据集处理,以及如何使用实用工具进行文件操作和数据可视化。文章还提供了一些Python代码示例,用于处理图像文件、转换数据格式以及计算目标检测的性能指标。
82 0
测试专项笔记(一): 通过算法能力接口返回的检测结果完成相关指标的计算(目标检测)
|
7月前
|
API 开发工具 Windows
视觉智能开放平台操作报错合集之通用高清分割时,任务提交成功了,但异步查的时候有概率会报400,requestid不存在。该怎么办
在使用视觉智能开放平台时,可能会遇到各种错误和问题。虽然具体的错误代码和消息会因平台而异,但以下是一些常见错误类型及其可能的原因和解决策略的概述,包括但不限于:1. 认证错误、2. 请求参数错误、3. 资源超限、4. 图像质量问题、5. 服务不可用、6. 模型不支持的场景、7. 网络连接问题,这有助于快速定位和解决问题。
|
8月前
|
机器学习/深度学习 人工智能 算法
视觉智能平台常见问题之人脸比对1:1的服务离线使用如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
|
8月前
|
小程序 前端开发 JavaScript
视觉智能平台常见问题之调用多器官分割服务时提示所示报错如何解决
视觉智能平台是利用机器学习和图像处理技术,提供图像识别、视频分析等智能视觉服务的平台;本合集针对该平台在使用中遇到的常见问题进行了收集和解答,以帮助开发者和企业用户在整合和部署视觉智能解决方案时,能够更快地定位问题并找到有效的解决策略。
|
8月前
|
算法
深度解析:用户增长插件的计费规则与使用技巧
深度解析:用户增长插件的计费规则与使用技巧 随着互联网的快速发展,用户增长成为了各类企业面临的重要问题。如何高效地获取并圈选目标用户,提升用户活跃度,成为了企业运营的核心竞争力。盛通教育的用户增长插件,内置高性能营销场景化算法,可以根据企业的运营目标,智能圈选海量用户,并通过智能短信的方式触达目标用户。那么,这款插件的计费规则又是怎样的呢?
60 1
|
人工智能 监控 算法
《多路监控视频实时拼接》原理及案例分享
通过视频拼接技术,对有重叠区域的多路源视频数据利用拼接算法进行无缝实时拼接,消除重叠区域,形成宽角度、大视场视频图像,从而实现将多路监控视频拼接成一路视频,使拼接后的视频清晰无缝,并实时播放,同时支持回放查看,解决多个人同时对同一监控场景不同角度进行观看的需求,充分满足用户的需求。
935 0
|
存储 算法 前端开发
前端算法-版本号比对
前端算法-版本号比对
|
前端开发
前端学习案例2-正则中的lastIndex和正向预查2
前端学习案例2-正则中的lastIndex和正向预查2
58 0
前端学习案例2-正则中的lastIndex和正向预查2