![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
SpringCloud
1024-iot-SaltIce
熟悉Go与Java语言,目前主要使用golang,喜欢对微服务系统开发与设计,以及云原生的学习,和中间件的开发。
展开
-
来一套通用分布式幂等组件不咯!
通用分布式幂等组件之前一篇文章中提到了幂等性的一些解决办法,但是基本上是单机上的,今天我们来弄一个支持分布式的通用幂等性组件【以下有不对的地方,一定要指出哦,共同成长。】一、背景分布式系统由众多微服务组成,微服务之间必然存在大量的网络调用。比如一个服务间调用异常的例子,用户提交表单之后,请求到A服务,A服务落单之后,开始调用B服务,但是在A调用B的过程中,存在很多不确定性,例如B服务执行超时了,RPC直接返回A请求超时了,然后A返回给用户一些错误提示,但实际情况是B有可能执行是成功的,只是执行时间过原创 2020-10-08 22:03:13 · 1388 阅读 · 0 评论 -
SpringCloud中Hystrix选择线程池进行隔离时导致的ThreadLocal数据丢失的解决方法参考
SpringCloud中Hystrix选择线程池进行隔离时导致的ThreadLocal数据丢失的解决方法当我们在SpringCloud中选择Hystrix来实现断路器,Zuul中默认是用信号量,而Hystrix默认是线程池来进行隔离的。当使用线程隔离时,会有一个很重要的问题需要注意:那就是在一些业务场景下,可能需要ThreadLocal里在线程里传递数据,当然,如果你使用信号量的话是没问题的(信号量,请求进来的时候,以及后续的处理都是通过一个线程,这个是没问题的)。当隔离模式选择了线程池时,H原创 2020-09-24 13:09:15 · 1776 阅读 · 0 评论