Java开发面试基础题,什么是微服务扩展性和高可用-可扩展性、高可用性和性能

它是一个系统或应用程序的属性,可以处理更多的工作,或者很容易地进行扩展,以响应对网络、处理数据、数据库访问或日益增长的文件系统资源需求。

水平扩展性

当系统进行扩展时,通过添加与现有节点功能相同的新节点,在所有节点之间重新分配负载,可以横向扩展或向外扩展。SOA系统和Web服务器通过向负载平衡网络中添加更多的服务器来扩展,以便传入的请求可以分布在所有服务器中。集群是描述扩展处理系统的常用术语。

图 1: 集群

垂直扩展性

当系统通过向节点添加处理、主内存、存储设备或网络接口来扩展以满足每个系统的更多请求时,系统会垂直或向上扩展。虚拟主机通过增加处理器数量或主内存数量来扩大规模,以便在同一硬件中承载更多虚拟服务器

图 2:虚拟化

高可用性

可用性描述一个系统在一段时间内提供有用资源的能力。高可用性保证了一个时间窗口内的功能连续性的绝对程度,该时间窗口表示为正常运行时间和停机时间之间的关系。

A = 100 – (100*D/U), D ::= unplanned downtime, U ::= uptime; D, U expressed in minutes

正常运行时间和可用性并不是同一个概念。一个系统可能会运行一个完整的测量周期,但可能由于网络中断或相关支持系统的停机而不可用。停机和不可用是同义词

测量可用性

供应商将可用性定义为给定的“9”个数,如表1所示,其中还描述了与365天一年或525600分钟数相关的估计停机时间的分钟或秒数,使U成为其营销目的的常数。

可用性 %停机时间/分钟停机时间/年供应商术语
9052,560.0036.5 天一个9
995,256.004 天两个9
99.9525.608.8 小时三个9
99.9952.5653 分钟四个9
99.9995.265.3 分钟五个9
99.99990.5332 秒六个9

表格1 1: 可用性占每年总正常运行时间的百分比

分析

高可用性取决于为系统需求定义的预期正常运行时间;所以不要被供应商的数据误导。也就是说,拥有高可用性系统及其可测量的正常运行时间的意义是服务级别协议的直接功能。
当考虑到计划的停机时间(如每月8小时的维护时间)时,可用性会增加。每增加9个可用性的成本都会成倍增长。
可用性是将系统向上或向外扩展并实现系统、网络和存储冗余的功能。

服务等级协议 (SLA)

惊喜

最后还准备了一套上面资料对应的面试题(有答案哦)和面试时的高频面试算法题(如果面试准备时间不够,那么集中把这些算法题做完即可,命中率高达85%+)

image.png

image.png

28283523292)]

[外链图片转存中…(img-pzFTeUuc-1628283523294)]

资料获取方式:戳这里免费领取

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值