zoukankan      html  css  js  c++  java
  • 随想

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

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

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

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

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

  • 相关阅读:
    iOS开发UI篇—使用storyboard创建导航控制器以及控制器的生命周期
    iOS开发UI篇—UIWindow简单介绍
    第三方框架-纯代码布局:Masonry的简单使用
    (转)Foundation-性能优化之NSDateFormatter
    Foundation框架—时间输出格式NSDateFormatter
    物联网MQTT协议分析和开源Mosquitto部署验证
    玩转物联网之MQTT
    Android实现推送方式解决方案
    互联网推送服务原理:长连接+心跳机制(MQTT协议)
    将MySQL数据库转移到SqlServer2008数据库
  • 原文地址:https://www.cnblogs.com/beaglebone/p/8413312.html
Copyright © 2011-2022 走看看