背景 在我们的项目中,比较广泛地使用了ThreadLocal,比如,在filter层,根据token,取到用户信息后,就会放到一个ThreadLocal变量中:在后续的业务处理中,就会直接从当前线程,来获取该ThreadLocal变量,然后获取到其中的用户信息,非常的方便. 但是,hystrix 这个组件一旦引入的话,如果使用线程隔离的方式,我们的业务逻辑就被分成了两部分,如下: public class SimpleHystrixCommand extends HystrixCommand<S
What is microservice 背景 在微服务的概念成型之前,绝大部分基于WEB的应用都是使用单体的风格来进行构建的.在单体架构中,应用程序作为单个可部署的软件制品交付,所有的UI(用户接口).业务.数据库访问逻辑都被打包在一个应用程序中并且部署在一个应用服务器上.随着单体应用的规模和复杂度的增长,在该应用上进行开发的团队的沟通与合作成本没有减少.当各个团队需要修改代码时,整个应用程序都要重新构建.重新测试和部署. 起源 微服务的概念最初是在2014年前后蔓延到软件开发社区当中[马丁福