当多个服务器正在运行时,使用模拟服务器

如何解决当多个服务器正在运行时,使用模拟服务器

我正在尝试使用模拟服务器转发数据包。有几种服务正在运行: 127.0.0.1:9000上的服务器1 127.0.0.1:1080上的服务器2(使用模拟服务器) 127.0.0.1:1090上的服务器3(使用模拟服务器)

此想法是将服务器3上的所有请求转发到具有已修改标头的服务器1。但是,模拟服务器检测到期望值匹配后,始终会得到服务器1连接拒绝错误。有没有人看过或知道如何解决?

模拟服务器参考:https://5-1.mock-server.com/mock_server/getting_started.html 我用来模拟服务器3的代码

public static void start() {
     startClientAndServer(PORT);
     createExpectation();
}



private static void createExpectation() {
     new MockServerClient(HOST,PORT)
             .when(
                     request()
                             .withPath("/somepath")

             )
             .forward(
                     forwardOverriddenRequest(
                             request()
                                     .withPath("/some-path")
                                     .withHeader("header1","value 1")
                                     .withSocketAddress("127.0.0.1",9000,SocketAddress.Scheme.HTTP)
                     )
             );

}

我看到的错误:

DEBUG 18:18:13.476 [dw-74] / CDF6E1D6ABC0926AD437B88C7411C257 / 16E5996B8FE00C329A7393273033CD50 oe​​jutil.thread.QueuedThreadPool:跑CEP:SocketChannelEndPoint @ 377a4c7f {l = / 127.0.0.1:0.19000 OPEN,fill = FI,flush =-,to = 0/30000} {io = 1/1,kio = 1,kro = 1}-> HttpConnection @ 77ba1a5a [p = HttpParser {s = START,0 of -1} ,g = HttpGenerator @ 744e43f9 {s = START}] => HttpChannelOverHttp @ 608c631c {s = HttpChannelState @ 33b00031 {s = IDLE rs = Blocking os = OPEN is = IDLE awp = false se = false i = true al = 0}, r = 1,c = false / false,a = IDLE,uri = null,age = 0}:runFillable:InstrumentedQueuedThreadPool [dw] @ 2c3c8bbb {STARTED,8 http://127.0.0.1:1090/loadBalancers DEBUG 18:18:13.532 [main] c.o.p.commons.client.BaseRestClient:生成的下游请求ID ECD767D0F709085D73125AEEB3AEF9C9 / D0E39E7AFC1A06EB838EF0C901CC4A4D INFO 18:18:13.806 [main] copiasRequestSignerImpl:将要签名的字符串:日期:2020年8月25日,星期二01:18:13 UTC \ n(请求目标):post / loadBalancers \ ncontent-length:4737 \ ncontent -类型:application / json \ nx-content-sha256:Xk + p6sOdASfyr1ZvQNei / FZ6ExqhKQhAwc08mR67dgA = \ naccept:application / json \ nopc-request-id:ECD767D0F709085D73125AEEB3AEF9C9 / D0E39E7A7 DEBUG 18:18:13.852 [main] o.a.h.c.protocol.RequestAddCookies:选择的CookieSpec:默认 DEBUG 18:18:13.852 [main] o.a.h.c.protocol.RequestAuthCache:未在上下文中设置身份验证缓存 调试18:18:13.854 [main] o.a.h.i.c.PoolingHttpClientConnectionManager:连接请求:[route:{}-> http://127.0.0.1:1090] [总计保持活动状态:0;分配的路线:0(共2);已分配的总数:20个中的0个] 调试18:18:13.856 [main] o.a.h.i.c.PoolingHttpClientConnectionManager:租借的连接:[id:1] [路由:{}-> http://127.0.0.1:1090] [总计保持活动状态:0;分配的路线:2之1;分配总数:20个中的1个] 调试18:18:13.856 [main] o.a.h.impl.execchain.MainClientExec:打开连接{}-> http://127.0.0.1:1090 调试18:18:13.856 [main] o.a.h.i.c.DefaultHttpClientConnectionOperator:连接到/127.0.0.1:1090 调试18:18:13.857 [main] o.a.h.i.c.DefaultHttpClientConnectionOperator:建立连接127.0.0.1:61811127.0.0.1:1090 DEBUG 18:18:13.857 [main] o.a.h.impl.execchain.MainClientExec:执行请求POST / loadBalancers HTTP / 1.1 DEBUG 18:18:13.857 [main] o.a.h.impl.execchain.MainClientExec:代理身份验证状态:未挑战 错误18:18:13.860 [MockServer-EventLog36] o.mockserver.log.MockServerEventLog:Web套接字服务器捕获到异常 ! java.lang.NoSuchMethodError:org.apache.commons.lang3.builder.EqualsBuilder.setExcludeFields([Ljava / lang / String;)Lorg / apache / commons / lang3 / builder / EqualsBuilder; !在org.mockserver.model.ObjectWithReflectiveEqualsHashCodeToString.equals(ObjectWithReflectiveEqualsHashCodeToString.java:34)〜[mockserver-core-5.11.1.jar:5.11.1] !在java.util.concurrent.ConcurrentHashMap.get(ConcurrentHashMap.java:940)〜[na:1.8.0_201] !在org.mockserver.netty.unification.PortUnificationHandler.getLocalAddresses(PortUnificationHandler.java:306)〜[mockserver-netty-5.11.1.jar:5.11.1] !在org.mockserver.netty.unification.PortUnificationHandler.switchToHttp(PortUnificationHandler.java:257)〜[mockserver-netty-5.11.1.jar:5.11.1] !在org.mockserver.netty.unification.PortUnificationHandler.decode(PortUnificationHandler.java:138)〜[mockserver-netty-5.11.1.jar:5.11.1] !在io.netty.handler.codec.ByteToMessageDecoder.decodeRemovalReentryProtection(ByteToMessageDecoder.java:500)〜[netty-codec-4.1.37.Final.jar:4.1.37.Final] !在io.netty.handler.codec.ReplayingDecoder.callDecode(ReplayingDecoder.java:366)〜[netty-codec-4.1.37.Final.jar:4.1.37.Final] !在io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276)〜[netty-codec-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:352)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.DefaultChannelPipeline $ HeadContext.channelRead(DefaultChannelPipeline.java:1408)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:374)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:360)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:930)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.nio.AbstractNioByteChannel $ NioByteUnsafe.read(AbstractNioByteChannel.java:163)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:697)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:632)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:549)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:511)〜[netty-transport-4.1.37.Final.jar:4.1.37.Final] !在io.netty.util.concurrent.SingleThreadEventExecutor $ 5.run(SingleThreadEventExecutor.java:918)〜[netty-common-4.1.37.Final.jar:4.1.37.Final] !在io.netty.util.internal.ThreadExecutorMap $ 2.run(ThreadExecutorMap.java:74)〜[netty-common-4.1.37.Final.jar:4.1.37.Final]

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


依赖报错 idea导入项目后依赖报错,解决方案:https://blog.csdn.net/weixin_42420249/article/details/81191861 依赖版本报错:更换其他版本 无法下载依赖可参考:https://blog.csdn.net/weixin_42628809/a
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下 2021-12-03 13:33:33.927 ERROR 7228 [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPL
错误1:gradle项目控制台输出为乱码 # 解决方案:https://blog.csdn.net/weixin_43501566/article/details/112482302 # 在gradle-wrapper.properties 添加以下内容 org.gradle.jvmargs=-Df
错误还原:在查询的过程中,传入的workType为0时,该条件不起作用 <select id="xxx"> SELECT di.id, di.name, di.work_type, di.updated... <where> <if test=&qu
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist); ^ server.c: 在函数‘hasActiveC
解决方案1 1、改项目中.idea/workspace.xml配置文件,增加dynamic.classpath参数 2、搜索PropertiesComponent,添加如下 <property name="dynamic.classpath" value="tru
删除根组件app.vue中的默认代码后报错:Module Error (from ./node_modules/eslint-loader/index.js): 解决方案:关闭ESlint代码检测,在项目根目录创建vue.config.js,在文件中添加 module.exports = { lin
查看spark默认的python版本 [root@master day27]# pyspark /home/software/spark-2.3.4-bin-hadoop2.7/conf/spark-env.sh: line 2: /usr/local/hadoop/bin/hadoop: No s
使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams['font.sans-serif'] = ['SimHei'] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -> systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping("/hires") public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate<String
使用vite构建项目报错 C:\Users\ychen\work>npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-