今天阅读了大型网站技术架构核心原理与案例分析的第一章和第二章,在这两章里面我收获到了不少的新知识。虽然一直在开发一些小型的网站系统,这些所谓的开发也只是对语法的不断熟练。因为在开发的是课程设计或者是一门课程的大作业,所有的开发都是虚拟的项目,并不是实际的开发项目,自然就少了实际的用户需求。
通过阅读这本书的前两章,在实际的网站开发中,网站的使用人数决定了网站的整体架构。如果是一个小型企业内部使用的网站,这在开发的过程中是不需要怎么考虑网站的架构的,因为自带的服务器软件就已经足够应付这么大的访问量了。随着企业规模的不断增大,单一的依靠服务器软件来控制访问的并发量已经不能满足用户的需求。这个时候我们必须站在网站整体设计的角度上面来设计网站的架构。怎么设计呢,总的思路就是要判断网站的哪一个环节造成了网站访问量的瓶颈,我们就要通过技术手段解决这个问题。首先要把应用服务器上面的应用程序、文件、数据库分别存储在不同的服务器上面。整个网站使用三台服务器:应用服务器、文件服务器、数据库服务器,这三台服务器对硬件资源的要求各不相同,应用服务器需要处理大量的业务逻辑,因此需要更快更强大的CPU;数据库服务器需要磁盘检索和数据缓存,因此需要更快的硬盘和更大的内存;文件服务器需要存储大量用户上传的文件,因此需要更大的硬盘。
大部分的业务访问集中在一小部分的数据上,那么如果把这一小部分数据缓存在内存中,是不是就可以减少数据库的访问压力,提高整个网站的数据访问速度,改善数据库的写入性能了呢。网站使用的缓存可以分为两种:缓存在应用服务器上的本地缓存和缓存在专门的分布式缓存服务器的访问速度更快一些,但是收应用服务器内存限制,其缓存数据量有限,而且会出现和应用程序争内存的情况。远程分布式缓存可以使用集群的方式,部署大内存的服务器作为专门的缓存服务器,可以在理论上做到不收内存容量限制的缓存服务器。
转载于:https://www.cnblogs.com/1102whw/p/6322145.html