Spring Cloud - 3 (Spring Cloud Netflix Eureka)

pring Cloud Netflix Eureka


传统服务治理

  • XML-RPC -> XML方法描述、方法参数->WSDL(WebServices定义语言)
  • WebServices->SOAP(HTTP、SMTP) ->(头部分、体部分)
  • REST->JSON/XML(Schema:类型、结构)->文本协议(HTTP Header、Body)
  • W3C Schema:xsd:string原子类型,自定义自由组合原子类型
  • Java POJO:int、String
  • Response Header -> Content-Type:application/json;charset=UTF-8
  • Dubbo:Hession、Java Serialization(二进制),跨语言不变,一般通过Client(Java、C++)

       二进制的性能非常好(字节流,免去字节流(字符编码),免去了字符解析,对机器友好、对人不友好)

       序列化:把编程语言数据转换成字节流、反序列化:字节流转换成编程语言的数据结构(原生类型的组合)

高可用架构


URI:统一资源定位符

URI:用于网络资源定位的描述 Universal Resource Identifier

URL:Universal Resource Locator

网络是通讯方式

资源是需要消费媒介

定位是路由

Proxy:一般是代理,路由

        Nginx:反向代理

Broker:包括路由,并且管理,古老的称谓(MOM)

        Message Broker:消息路由、消息管理(消息是否可达)

可用性比率计算

可用性利率:通过时间来计算(一年或者一个月)

比如:一年99.99%

可用时间:365*24*3600*99.99%

不可用时间:365*24*3600*0.01%=3153.6秒<一个小时

不可用时间:1个小时推算一年 1/24/365 = 0.01%

单台机器不可用比率:1%

两台机器不可用比率:1%*1%

N台机器不可用比率:1%^N

可靠性

微服务里面存在的问题:

一次调用

  A    ->   B    ->   C

99% -> 99% -> 99% = 97%

  A    ->   B    ->   C   ->   D

99% -> 99% -> 99% -> 99% =96%

结论:增加机器可以提高可用性,增加服务会降低可靠性,同时降低了可用性。

Eurek服务器

Eurek服务器一般不需要自我注册,也不需要注册其他服务器

Eureka 自我注册的问题,服务器本身没有启动

Fast Fail:快速失败

Fault-Tolerance:容错

通常经验,Eureka服务器不需要开启自动注册,也不需要检索服务

## 取消服务器自我注册
eureka.client.register-with-eureka=false
## 注册中心的服务器,没有必要再去检索服务
eureka.client.fetch-registry=false

但是这两个设置并不影响服务器的使用,不过建议关闭,为了减少不必要的异常堆栈,减少错误的干扰(比如:系统异常和业务异常)

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值