如何mock服务???上游服务异常为了不影响下游使用造真实数据使用

问题:
如果某个上游应用服务不可用,但不能影响下游依赖上游服务生成的数据怎么做?
既是不能影响下游开展测试工作,而且数据是真实有效的。

1、解决应用服务问题;
2、切备用节点;(但也不一定能用)
3、…大佬们还有能解决此问题的方案吗?

可以使用charles等代理工具做map或rewrite

多谢大佬,数据没有真实入库,起不到作用的。

用docker搞一个备用稳定服务就可以吧。另外mock也是可以的

Mock也需要保证数据增删改都能操作入库,提供下游使用入库的数据,不能影响链路正常走下去。常规的接口mock不能满足了

数据库也能mock,我觉得你最好画个流程图。我感觉你描述的不太对。

多谢思寒大佬!!!如下图:

数据库在哪你没画出来。所有系统都公用同一个数据库?

从架构上来看,用charles的remote proxy就可以了。A与B之间接入一个代理,这个代理可以根据需要随时在老版本A与新版本A之间自由切换。所以你需要做如下接事情

  • 继续搭建着老版本A docker技术
  • 加入一层代理转发 charles mitmproxy都能做到

这是最简单的

简单的服务还是可以的,这里比较复杂,如果mock一个订单号,下游其它服务去哪里拿这个订单号?其它服务要用也是去关联了好多数据库的表、数据等的取的。所以mock是不可行,除非把数据写入到相关联的表 :skull:

那订单号进来后 跟其他微服务的数据是不冲突的。理论上mock一个订单号是可以的。除非你们还用了a服务更多功能。

当然简单的就用我刚才的方法