1、什么是微服务?
就目前而言,对于微服务业界并没有统一的、标准的定义。
但目前而言,微服务架构是一种架构模式或者说是一种架构风格,他提倡将单一应用程序划分成一组小的服务,每个服务独立运行在自己的进程中。每个服务之间相互协调、相互配合,为用户提供最终价值。服务之间采用轻量级的通信机制(通常是基于HTTP的RESTful API)。独立的部署,独立的发布。极端情况可以是一个服务连一个数据库,或者多个服务连接一个数据库,非常灵活。
Cloud通信机制是RestFul api, 而Dubblo的通信机制是RPC(远程过程调用)
2、SpringBoot和SpringCloud是什么关系?
SpringBoot关注的是微观层面的,主要是一个个的微服务,可单独使用,SpringCloud关注的是宏观层面的,主要是微服务架构的一站式解决方案,必须依赖于SpringBoot才能使用。
SpringBoot专注于方便快速的开发单个个体微服务。
SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务整合并管理起来。为各个微服务之间提供,配置管理、服务发现、断路器、路由、微代理、事件总线、全局锁、决策竞选、分布式会话等等集成服务。
SpringBoot可以离开SpringCloud独立使用开发项目,但SpringCloud离不开SpringBoot,属于依赖的关系。
3、SpringCloud和Dubbo的区别?
最大区别:SpringCloud抛