美文网首页
SpringCould介绍及服务拆分

SpringCould介绍及服务拆分

作者: Marlon666 | 来源:发表于2018-07-05 11:30 被阅读44次

SpringCloud 是什么?

Spring cloud 是一个开发工具集,包含多个子项目。
简化了分布式服务。最为重要的就是美国Netflix开源组件。

Spring Eureka(Eureka n 找到了,有了)

基于Netflix Eureka 进行了二次封装

主要由两个组件构成:

Eureka Server 注册中心

供服务器用来注册的服务器。

Eureka Client 服务注册

用来简化于服务器的交互,作为轮询负载均衡器并提供服务的故障切换支持。

客户端通过 Eureka Client 连接服务器,并维持心跳连接,兼容微服务是否正常运行。

mvn clean package
Maven 命令进行打包

java -jar 文件名.jar
启动jar服务

nohup java -jar target/eureka-0.0.1-SNAPSHOT.jar > /dev/null 2>&1 &
后台启动 留下进程id

Eureka 总结

@EnableEurekaServer 开启
@EnableEurekaClient 开启

心跳检测、健康检查、负载均衡等功能

Eureka的高可用,生产建议至少两台以上

分布式系统中,服务注册中心是最重要的基础部分,随时处在提供服务的状态。

服务注册中心地位

客户端发现

Eureka

优点:简单直接,知道所有可用服务的实际地址
缺点:A服务需要自己实现一套逻辑把A服务挑出来

服务端发现(代理)

Nginx(HTTP反向代理服务器、负载均衡器、服务发现的负载均衡器)
Zookeeper
Kubernetes(通过集群中的每一个节点,都运行一个代理来实现服务发现的功能。代理的角色就是ServerSet、Discover,客户端通过主机的ip地址和端口,向代理发送请求。
代理将请求转发到集群里边任何一个可用的服务上)

优点:由于代理的介入,B对A是透明不可见的。A服务向代理发送请求

微服务的特点:异构

不同的语言

不同类型的数据库

理解分布式、架构特点、原理更重要。

微服务服务拆分

起点和终点

起点:既有的架构形式
终点:好的架构不是设计出来的,而是进化而来的(持续演进)

ESB:企业服务总线

坚持的原则

业务不适合上微服务场景:
系统中包含很多很多强事务场景
业务相对稳定、迭代周期长
访问压力不大、可用性要求不高

康威定律:

核心观点:任何组织在设计一套系统(广益概念上的系统)是,所交付的设计方案在结构上都与该组织的沟通保持一致。
人话:沟通的问题会影响系统的设计。

拆分实战

功能:单一职责,松耦合、高内聚

关注点分离:按职责、按通用性、按粒度级别

服务和数据关系:
先考虑业务功能,在考虑数据
无状态服务

短信服务,消息系统,redis缓存,单独的基础服务,让你服务的微服务。

相关文章

  • SpringCould介绍及服务拆分

    SpringCloud 是什么? Spring cloud 是一个开发工具集,包含多个子项目。简化了分布式服务。最...

  • 面试题整理

    1、SpringCould 微服务和插件的问题很多 https://blog.csdn.net/qq_359069...

  • gateway 环境搭建和动态路由

    Springcould Gateway 网关 路由配置: 动态路由,加入eureka从注册中心中根据微服务名称拉取...

  • 领域驱动设计读书笔记-术语介绍

    本文为极客时间《DDD实战》的读书笔记 DDD-基础 DDD基础介绍 微服务设计和拆分的困境 对于微服务的拆分粒度...

  • 点餐项目规范

    规范 使用 spring cloud 体系 拆分服务(商品服务,订单服务) 服务通讯使用 feign 具体服务拆分...

  • 记录我的想法

    关于服务拆分的一些想法 今天下午开了一个分享会,同事的主题是服务拆分,主要是讲怎样定义服务边界,合理拆分服务。业务...

  • 微服务的拆分规范和原则

    微服务的拆分规范和原则 拆分方案 压力模型拆分 业务模型拆分--主链路拆分--领域模型拆分--用户群体拆分--前后...

  • day 41 Nginx数据库拆分

    拆分数据库扩展服务器拆分静态资源至独立服务器 一、拆分数据库 拆分数据库的原因:单台服务器运行LNMP架构,会导致...

  • 微服务——目的、特点和核心要点

    这章具体介绍微服务。1.微服务的目的2.微服务的特点3.微服务的核心要点 微服务的目的 以拆分和服务化为基础,将海...

  • springcloud

    微服务 服务拆分的原则 高内聚、低耦合 服务正交性原则 拆分层级最多三层 粒度适中,演进式拆分 避免循环依赖 通用...

网友评论

      本文标题:SpringCould介绍及服务拆分

      本文链接:https://www.haomeiwen.com/subject/ieauuftx.html