案例:经典案例,以目前流行点外卖的案例,用户下单后,调用订单服务,让后订单服务调用派单系统通知送外卖人员送单,这时候订单系统与派单系统采用MQ异步通讯。 RabbitMQ解决分布式事务原理: 采用最终一致性原理。需要保证以下三要素1、确认生产者一定要将数据投递到MQ服务器中(采用MQ消息确认机制)2 ...
分类:
其他好文 时间:
2019-01-18 23:13:30
阅读次数:
180
至此,我们已实现服务发现、负载均衡,同时,使用Feign也实现了良好的远程调用——我们的代码是可读、可维护的。理论上,我们现在已经能构建一个不错的分布式应用了,但微服务之间是通过网络通信的,网络可能出问题;微服务本身也不可能100%可用。如何提升应用的可用性呢?这是我们必须考虑的问题——举个例子:某大型系统中,服务A调用服务B,某个时刻,微服务B突然崩溃了。微服务A中,依然有大量请求在请求B,如果
分类:
编程语言 时间:
2019-01-18 12:15:56
阅读次数:
217
1. 接口调用存在的问题 现如今我们的系统大多拆分为分布式SOA,或者微服务,一套系统中包含了多个子系统服务,而一个子系统服务往往会去调用另一个服务,而服务调用服务无非就是使用RPC通信或者restful,既然是通信,那么就有可能在服务器处理完毕后返回结果的时候挂掉,这个时候用户端发现很久没有反应, ...
分类:
其他好文 时间:
2019-01-18 12:12:12
阅读次数:
141
调用链的出现也是为了对应于大规模的复杂的分布式系统运行中碰到的故障定位定界问题。大量的服务调用、跨进程、跨服务器,可能还会跨多个物理机房。无论是服务自身问题还是网络环境的问题导致调用上链路上出现问题都比较复杂,如何定位就比单进程的一个服务打印一个异常栈来找出某个方法要困难的多。需要有一个类似的调用链路的跟踪,经一次请求的逻辑规矩完整的表达出来,可以观察到每个阶段的调用关系,并能看到每个阶段的耗时和调用详细情况。
分类:
其他好文 时间:
2019-01-16 14:59:53
阅读次数:
195
spring Boot(十九):使用Spring Boot Actuator监控应用 微服务的特点决定了功能模块的部署是分布式的,大部分功能模块都是运行在不同的机器上,彼此通过服务调用进行交互,前后台的业务流会经过很多个微服务的处理和传递,出现了异常如何快速定位是哪个环节出现了问题? 在这种框架下, ...
分类:
编程语言 时间:
2019-01-15 14:14:15
阅读次数:
184
我们在使用 Spring Cloud Ribbon 时, 通常都会利用它对 RestTemplate 的请求拦截来实现对依赖服务的接口调用, 而 RestTemplate 已经实现了对 HTTP 请求的封装处理, 形成了一套模板化的调用方法。在之前的例子中,我们只是简单介绍了 RestTemplat ...
分类:
编程语言 时间:
2019-01-13 19:05:16
阅读次数:
249
[toc] 1.环境介绍 接上一篇( "SpringCloud实战之初级入门(一)— eureka注册中心" ),我们讲到了注册中心的高可用,集群,这篇我们讲如何服务如何注册在eureka上,如何使用Feign调用服务。 1. 继续使用上一篇的文章中的mirco service eureka工程,为 ...
分类:
编程语言 时间:
2019-01-10 10:54:13
阅读次数:
182
最近有个需求就是一个抽象仓储层接口方法需要SqlServer以及Oracle两种实现方式,为了灵活我在依赖注入的时候把这两种实现都给注入进了依赖注入容器中,但是在服务调用的时候总是获取到最后注入的那个方法的实现,这时候就在想能不能实现动态的选择使用哪种实现呢?如果可以的话那么我只需要在配置文件中进行 ...
分类:
Web程序 时间:
2019-01-07 23:10:19
阅读次数:
259
Spring Cloud R巾bon 是一个基于 HTTP 和 TCP 的客户端负载均衡工具,它基于 NetflixRibbon 实现。 通过 Spring Cloud 的封装, 可以让我们轻松地将面向服务的 REST 模板请求自动转换成客户端负载均衡的服务调用 客户端负载均衡 我们通常所说的负载均 ...
分类:
编程语言 时间:
2019-01-06 00:00:58
阅读次数:
308
dubbo的简单介绍 是一个分布式服务框架,致力于高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案(关于服务治理方面将单独介绍) 核心部分 1 远程通信 提供对多种基于长连接的NIO框架抽象封装,包含多种线程模型,序列化,以及"请求-响应"模式的信息交互方式 2 集群容错 提供基于接口 ...
分类:
其他好文 时间:
2019-01-02 12:41:55
阅读次数:
178