• 随想


    1.网站架构中,业务服务器和数据库服务器以及文件服务器分离,why?

    首先三者对服务器的要求不一致,业务服务器要求服务器拥有强大的CPU,用来处理业务逻辑。数据库服务器需要的是强大的磁盘检索能力,即更快的硬盘。文件服务器需要存储大量用户上传的文件,因此需要更大的硬盘。

    其次,随着业务的逐渐增多,数据和文件越来越多,单服务器的存储空间不足。

    2.因为80%的业务访问的是数据库中20%的数据,因此如果将这20%的数据存于内存缓存,那么对数据库的访问会大大减少,数据访问速度也会大大提升。还可以通过读数据库进行读写分离,分为主从数据库,主数据库主要用来写入,从数据库服务读取,主数据库服务器的数据更新同步到从服务器上。当然主从服务器的数据之间会有延时,对于一些可以容忍该延时的业务,这是个很好的改善数据库负载压力的方法,并且也是对数据库数据的一项热备份,保证数据的稳定性。最后还可以使用分布式数据库,比如将不同的业务数据,部署在不同的物理服务器上。当然,数据库的检索会随着业务的复杂,而越来越复杂,原先的关系型数据库的检索速度会变慢,这时候会有一些Nosql(not sql或者not only sql),以及目前用比较流行的神经网络索引,代替B-tree。

    3. 应用服务器演变的过程类似,由单服务器到集群,运用负载均衡方法,缓解逐渐增长的业务对服务器的压力,同时也是增加了服务的高可用性,若其中一台服务器宕机,另外一台服务器还能正常工作。再后来,需要对应用服务器进行更加精细的划分,根据业务模块分开部署(分布式部署,离不开对业务的横切和竖切)。多台服务器部署相同的内容,组成集群,通过负载均衡对外提供服务,确保高可用性。

  • 相关阅读:
    牛客练习赛53 A-E
    算导第二章笔记 (归并排序 之 插入排序优化)
    LightOJ 1372 (枚举 + 树状数组)
    LightOJ 1348 (树链剖分 + 线段树(树状数组))
    Light OJ 1343
    Light OJ 1266
    Light OJ 1085
    CodeForces 671C
    Codeforces Round #352 (Div. 2) (A-D)
    ZOJ1008
  • 原文地址:https://www.cnblogs.com/beaglebone/p/8413312.html
Copyright © 2020-2023  润新知