springcloud简介

一:什么是微服务?

微服务,又叫微服务架构,是一种软件架构方式。 它将应用构建成一系列按业务领域划分模块的、小的自治服务。 在微服务架构中,每个服务都是自我包含的,并且实现了单一的业务功能。 简单来说,就是将一个系统按业务划分成多个子系统,每个子系统都是完整的,可独立运行的,子系统间的交互可通过HTTP协议进行通信(也可以采用消息队列来通信,如RoocketMQ,Kafaka等)。

所以,不同子系统可以使用不同的编程语言实现,使用不同的存储技术。但是,因为子系统服务数量越多,管理起来越复杂,因此需要采用集中化管理,例如Eureka,Zookeeper等都是比较常见的服务集中化管理框架;同时,使用自动化部署(如Jenkins)减少人为控制,降低出错概率,提高效率。

传统的一体化架构实现:所有的功能都被放到了一个代码库中,业务都开展在一个基础性的数据库之下,功能包含:品牌管理,商品管理,接收付款、客户服务等。当需要添加新品牌的详细信息时(新增了有别于旧品牌设置的结构),此时开发者不仅需要为这个服务添加新的标签而修改代码,而且还要重构整个系统并进行部署。

与之相反的是,微服务架构可以帮助开发者克服使用旧架构时所面临的挑战,并且使得这个购物车应用可以很容易地被构建、部署和扩展。因为它为搜索、推荐、品牌管理、商品管理、客户服务等业务分别创建不同的微服务,当需求来临时,它只需修改并更新对应的微服务即可。

微服务的特点

● 解耦:同一系统内的服务大部分可以被解耦。因此应用,作为一个整体,可以轻易地被构建、修改和扩展。

● 组件化:微服务可以被看成相互独立的组件,这些组件可以被轻易地替换和升级。

● 业务能力:微服务很小,它们可以专注于某种单一的能力

● 自治:开发者和团队可以独立地工作,提高开发速度。

● 持续交付:允许持续发布软件新版本,通过系统化的自动手段来创建、测试和批准新版本。

● 职责明确:微服务不把应用看成一个又一个的项目。相反,它们把应用当成了自己需要负责的项目。

● 去中心化管理:关注于使用正确的工具来完成正确的工作。这也就是说,没有标准化的方式或者技术模式。开发者们有权选择最好的工具来解决问题。

● 敏捷性:微服务支持敏捷开发。任何新功能都可以被快速开发或丢弃。

微服务的优势

● 独立开发:基于各个微服务所独有的功能,它们可以被轻易开发出来。

● 独立部署:基于它们所提供的服务,它们可以被独立地部署到应用中。

● 错误隔离:即便其中某个服务发生了故障,整个系统还可以继续工作。

● 混合技术栈:可以使用不同的语言和技术来为同一个应用构建不同的服务。

● 按粒度扩展:可以根据需求扩展某一个组件,不需要将所有组件全部扩展。

微服务核心问题:

  1. 服务很多,客户端该怎么访问?
  2. 如此多服务,服务之间如何通信?
  3. 如此多服务,如何治理?
  4. 服务挂了,如何解决?

解决方案:springcloud  生态

  1. springcloud  netfilx

api网关  zuul组件

feign—httpclient-----http通信方式,同步阻塞

服务祖册发现:eureka

熔断机制:Hystrix

2.dubbo zookeper

api:没有

dubbo;

zookeeper

没有,借助Hystrix

dubbo并不完善

3. springcloud alibaba

二:微服务技术栈

二:

三:简介

SpringCloud和SpringBoot的关系

  • SpringBoot专注于开苏方便的开发单个个体微服务;
  • SpringCloud是关注全局的微服务协调整理治理框架,它将SpringBoot开发的一个个单体微服务,整合并管理起来,为各个微服务之间提供:配置管理、服务发现、断路器、路由、为代理、事件总栈、全局锁、决策竞选、分布式会话等等集成服务;
  • SpringBoot可以离开SpringCloud独立使用,开发项目,但SpringCloud离不开SpringBoot,属于依赖关系;
  • SpringBoot专注于快速、方便的开发单个个体微服务,SpringCloud关注全局的服务治理框架;

参考书:

http://springcloud.cc/spring-cloud-netfix.html

中文api文档:Spring Cloud Dalston 中文文档 参考手册 中文版

springcloud中国社区:http://springcloud.cn/

springcloud中文网:Spring Cloud中文网-官方文档中文版

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值