摘要:而后端的知识是与前端工作最密切相关的一部分内容,多了解些后端的知识也是大有裨益的。本文简单叙述了三种构建大型架构的必备知识。而作为一个前端儿,许多技术可能无法在工程项目中亲自去实践,也只能从书,讲座,博文中学习了。
前言
作为一个有追求的前端,在学有余力的同时,不应该把自己仅仅局限于前端的世界中的。
而后端的知识是与前端工作最密切相关的一部分内容,多了解些后端的知识也是大有裨益的。
本文简单叙述了三种构建大型架构的必备知识。也是我做前端这么久以来,一直想知道的如何突破现有的性能瓶颈做到
高并发,高性能,高可靠。文中如有错误,欢迎指正。
优化数据库
负载均衡
缓存技术
优化数据库对于使用数据库的Web站点来说,数据库性能关系整个web应用的性能,如果数据库性能不佳,其他的优化工作也是徒劳无功。所以优化数据库性能,
对提高整个web应用的效率有着举足轻重的作用。
1、 表的设计要规范,即要符合数据库设计范式。
2、 适当建立索引,在频繁作为检索条件,更新较少的字段上建立索引,以提高查询速度。
3、 分表查询,有水平分割、垂直分割。
4、 读写分离,读(read)、写(create、update、delete)。
5、 建立存储过程。
这里特别想提到的是拆分表格这一点。最简单的诸如,根据用户ID的最后1位的数字将其拆分成10个表,即 0,1,2,3,4,5,6,7,9。
这种平行的拆分方式,一方面,可以解决单个数据库并发连接数的限制,另外一方面可以控制单表的大小。很有效的一种优化方式,特别在于解决高并发的需求。
单台Web服务器处理能力有限,单台服务器承受的压力达到极限时,需要有更多的服务器分担工作,我们需要想办法将流量合理分配到更多的服务器上。
任何的负载均衡技术都要想办法建立某种一对多的映射机制: 一个请求的入口映射到多个处理请求的节点,从而实现分而治之(Divide and Conquer)。
这种映射机制使得多个物理存在对外体现为一个虚拟的整体,对服务的请求者屏蔽了内部的结构。
采用不同的机制建立映射关系,可以形成不同的负载均衡技术,常见的包括:
CDN
HTTP重定向
基于DNS的轮询解析
反向代理服务器
详细可以参考 亿级Web系统搭建——单机到分布式集群
缓存随着网络的发展,数据越来越多,从而导致运算的压力越来越大,为了解决这一问题,就需要合理分级计算资源,充分利用已有资源。缓存的工作实际上计算资源的合理分配。
缓存 (Cache) 原意是指可以进行高速数据交换的存储器。当CPU处理数据时,先到 Cache 中寻找,如果数据因之前的操作已经读取而被暂存其中,就不需要再从随机存取存储器中读取数据了。
现在缓存的概念已被扩充,凡是位于速度相差较大的两种介质之间,用于协调两者数据传输速度差异的结构,均可以称之为 Cache 。
在 web 世界,理论上每一层都可以被缓存。以PHP应用为例:
底层有CPU缓存,磁盘文件系统缓存
数据库层有 Table Cache,Query Cache
Apache和Ngix的缓存
应用程序代码级别的Smarty实现的文件缓存
基于HTTP协议和浏览器自身实现的浏览器缓存
基于NoSQL系统的缓存(redis, memcached)
结语上述三种技术手段,是构建大型网络应用的必备技术,展开来每点的水都很深。
而作为一个前端儿,许多技术可能无法在工程项目中亲自去实践,也只能从书,讲座,博文中学习了。
最后推荐一本PHP的书籍《PHP核心技术与最佳实践》,确实如同作者在其书中前言所述,没有讲述HTML,CSS,JS基础,也没有讲PHP语法基础,而是专注于web开发技术的最前沿,深入浅出,探讨高并发大流量的架构。 非常棒的一本进阶书籍。
WilsonLiu"s blog首发地址:http://blog.wilsonliu.cn
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/91364.html
摘要:而后端的知识是与前端工作最密切相关的一部分内容,多了解些后端的知识也是大有裨益的。本文简单叙述了三种构建大型架构的必备知识。而作为一个前端儿,许多技术可能无法在工程项目中亲自去实践,也只能从书,讲座,博文中学习了。 前言 作为一个有追求的前端,在学有余力的同时,不应该把自己仅仅局限于前端的世界中的。而后端的知识是与前端工作最密切相关的一部分内容,多了解些后端的知识也是大有裨益的。 本文...
摘要:转行前端有哪些疑虑在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。写在前面这里前后端指的是开发的前后端。 转行前端有哪些疑虑? 在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。写在前面:这里前后端指的是web开发的前后端。1、前端岗位需...
摘要:转行前端有哪些疑虑在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。写在前面这里前后端指的是开发的前后端。 转行前端有哪些疑虑? 在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。写在前面:这里前后端指的是web开发的前后端。1、前端岗位需...
摘要:转行前端有哪些疑虑在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。写在前面这里前后端指的是开发的前后端。 转行前端有哪些疑虑? 在人生的抉择处,寻求一些别人的经验和总结,无可厚非,但是决定了就一定要坚定的走下去,谨慎是为了更好的坚持,而不是放弃的理由。写在前面:这里前后端指的是web开发的前后端。1、前端岗位需...
摘要:写这篇文章就是想了解手工测试现在的处境为什么手工测试会迷茫呢不知道自动化测试性能测试会不会迷茫。我认为手工测试的迷茫基于两个原因一是重复的测试相同的方法测到自己找不着北,有一天猛然抬头大喊我要改变世界,改变自己,暗示自己换一种工作方法。 ...
阅读 1309·2021-11-22 14:44
阅读 2444·2021-09-30 09:47
阅读 1220·2021-09-09 11:56
阅读 2075·2021-09-08 09:45
阅读 3950·2021-08-31 09:40
阅读 1246·2019-08-30 15:52
阅读 2043·2019-08-30 14:09
阅读 1577·2019-08-26 17:04