zoukankan      html  css  js  c++  java
  • 服务的扩展性

    1、前言

      最近在看大型网站架构的书籍,书中介绍了大型网站支持扩展性。大概意思就是当服务器出现性能的不足的时,如何调整服务器,用来满足更多的请求。之前对这个扩展概念不是很清楚,仔细看了一下扩展分为水平扩展和垂直扩展两种。今天总结一下服务扩展性的知识点。主要内容为(1)服务器扩展性是什么?为什么需要扩展性,在什么场景下需要考虑服务扩展性?(2)扩展性有哪些实现方式,各自有什么区别,实际工作中如何选择?

    2、基本概念

      以一个网站的应用场景为例进行讲解。任何一个大型的网站都是从小网站一步一步发展过来的,因此在刚开始的时候,只部署了一台Web服务器,在访问量不多的时候,网站运行的很好。随着访问量越来越多,由于单台Web服务器对外提供的服务有限,此时就容易出现部分用户无法正常访问网站,这个时候就需要考虑如何改进Web服务器的性能。如何做到对现有系统影响最小的情况下,系统功能可以持续扩展或提升性能。首先排除从代码优化角度考虑,如何从服务器扩展考虑。扩展其实就是服务器资源的添加,例如内存资源、CPU资源、磁盘资源等。添加资源后,保证Web服务器可以正常运行。扩展分为水平扩展和垂直扩展两种方式。

      垂直扩展:

        假设刚开始有一台Web服务器,在使用过程中,发现内存资源不足,当前内存只有16G,正好服务器还有剩余的内存槽可以使用,于是买一根内存条插上即可。

      水平扩展:

        Web服务器上内存槽都被用完了,没有地方可以扩展内存了,这个时候就需要重新购买一太Web服务器。这个时候就有两台Web服务器对外提供服务了,需要考虑负载均衡。

  • 相关阅读:
    Sqoop的导入及可能遇到的问题
    Docker搭建MongoDB集群(副本分片)
    微信小程序框架部署:mpvue+typescript
    关系型数据库与非关系型数据库
    PWA 学习笔记(五)
    PWA 学习笔记(四)
    PWA 学习笔记(三)
    PWA学习笔记(二)
    PWA 学习笔记(一)
    部分设计模式对比分析
  • 原文地址:https://www.cnblogs.com/Anker/p/6101266.html
Copyright © 2011-2022 走看看