标签:hand 分布式架构 mybatis 怎么 alt 其他 部署 动态 均衡
微服务架构
什么是微服务架构呢?简单说就是将一个完整的应用(单体应用) 按照一定的拆分规则(后文讲述)拆分成多个不同的服务,每个服务都能独立地进行开发、部署、扩展。服务于服务之间通过注入RESTful api或其他方式调用。
微服务这么火,你还不知道微服务?怎么加(zhuang)薪(bi)
- 服务的前世今生
- 基于分布式思想下的RPC解决方案
- Dubbo应用及源码解读
- Docker虚拟化技术
- SpringCloud应用及源码解读
- SpringBoot
Dubbo
- Dubbo中zookeeper做注册中心,如果注册中心集群都挂掉,发布者和订阅者之间还能通信么?
- dubbo服务负载均衡策略?
- Dubbo在安全机制方面是如何解决的
- dubbo连接注册中心和直连的区别
- dubbo服务集群配置(集群容错模式)
- dubbo通信协议dubbo协议为什么要消费者比提供者个数多
- dubbo通信协议dubbo协议为什么不能传大包
- dubbo通信协议dubbo协议为什么采用异步单一长连接
- dubbo通信协议dubbo协议适用范围和适用场景
- RMI协议
- Hessian协议
- http
- Webservice
- Thrif
关注+转发后,私信关键词 【面试】即可获取以上微服务架构
Spring Boot
- 什么是Spring Boot?
- Spring Boot有哪些优点?
- 什么是JavaConfig?
- 如何重新加载Spring Boot上的更改,而无需重新启动服务器?
- Spring Boot中的监视器是什么?
- 如何在Spring Boot中禁用Actuator端点安全性?
- 如何在自定义端口上运行Spring Boot应用程序?
- 什么是YAML?
- 如何实现Spring Boot应用程序的安全性?
- 如何集成Spring Boot和ActiveMQ?
- 如何使用Spring Boot实现分页和排序?
- 什么是Swagger?你用Spring Boot实现了它吗?
- 什么是Spring Profiles?
- 什么是Spring Batch?
- 什么是FreeMarker模板?
- 如何使用Spring Boot实现异常处理?
- 您使用了哪些starter maven依赖项?
- 什么是CSRF攻击?
- 什么是WebSockets?
- 什么是AOP?
- 什么是Apache Kafka?
- 我们如何监视所有Spring Boot微服务?
关注+转发后,私信关键词 【面试】即可获取以上微服务架构
Spring Cloud
- 什么是Spring Cloud?
- 使用Spring Cloud有什么优势?
- 服务注册和发现是什么意思?Spring Cloud如何实现?
- 负载平衡的意义什么?
- 什么是Hystrix?它如何实现容错?
- 什么是Hystrix断路器?我们需要它吗?
- 什么是Netflix Feign?它的优点是什么?
- 什么是Spring Cloud Bus?我们需要它吗?
面试题及答案的获取方式,提供Java架构进阶思维导图,主要分享分布式架构、高可扩展、高性能、高并发、性能优化、Spring MVC、Redis、MyBatis、Nginx、Jvm大型分布式项目实战学习架构师视频。
答案解析
dubbo连接注册中心和直连的区别
在开发及测试环境下,经常需要绕过注册中心,只测试指定服务提供者,这时候可能需要点对点直连,
点对点直联方式,将以服务接口为单位,忽略注册中心的提供者列表,
服务注册中心,动态的注册和发现服务,使服务的位置透明,并通过在消费方获取服务提供方地址列表,实现软负载均衡和Failover, 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。注册中心负责服务地址的注册与查找,相当于目录服务,服务提供者和消费者只在启动时与注册中心交互,注册中心不转发请求,服务消费者向注册中心获取服务提供者地址列表,并根据负载算法直接调用提供者,注册中心,服务提供者,服务消费者三者之间均为长连接,监控中心除外,注册中心通过长连接感知服务提供者的存在,服务提供者宕机,注册中心将立即推送事件通知消费者
注册中心和监控中心全部宕机,不影响已运行的提供者和消费者,消费者在本地缓存了提供者列表
注册中心和监控中心都是可选的,服务消费者可以直连服务提供者。
Spring Boot有哪些优点?
- 减少开发,测试时间和努力。
- 使用JavaConfig有助于避免使用XML。
- 避免大量的Maven导入和各种版本冲突。
- 提供意见发展方法。
- 通过提供默认值快速开始开发。
- 没有单独的Web服务器需要。这意味着你不再需要启动Tomcat,Glassfish或其他任何东西。
- 需要更少的配置 因为没有web.xml文件。只需添加用@ Configuration注释的类,然后添加用@Bean注释的方法,Spring将自动加载对象并像以前一样对其进行管理。您甚至可以将@Autowired添加到bean方法中,以使Spring自动装入需要的依赖关系中。
- 基于环境的配置 使用这些属性,您可以将您正在使用的环境传递到应用程序:-Dspring.profiles.active = {enviornment}。在加载主应用程序属性文件后,Spring将在(application{environment} .properties)中加载后续的应用程序属性文件。
什么是Spring Cloud?
Spring cloud流应用程序启动器是基于Spring Boot的Spring集成应用程序,提供与外部系统的集成。Spring cloud Task,一个生命周期短暂的微服务框架,用于快速构建执行有限数据处理的应用程序。
资料获取方式添加小助理:msbjy2019即可获取
2020年五一后总结的最新微服务架构面试:Dubbo+Spring Boot+Spring Cloud
标签:hand 分布式架构 mybatis 怎么 alt 其他 部署 动态 均衡
原文地址:https://www.cnblogs.com/aaaabbbb/p/12939661.html