前端需要了解的后端知识

一名有前端工程师,除了掌握自身知识体系外,在业余时间也应该了解下后端的知识时间,由于前端与后端工作是最最密切相关的,多学习些后端知识对自身也是大有好处的。1、后端语言后端语言用来写后台的三巨头:php、JAVA、ASP.NET三门语言各有特色,php轻量级开发,适合开发论坛和bbs的后台。java就不用说了,比较大型的项目的后台都是用java写的。工作的需求也是很大,但是从业的人员也是 非常多的,ASP.NET是微软提出的开发后台的一门技术。但是因为跨平台的特性不好的原因。是干不过Java的不过听说最近微软最近在搞跨平台性。你是前端工程师的话,可以考虑学习node.js,它给前端转全栈算是一条路吧JAVA的话学习要花费很大的精力和心血。毕竟大牛比较多,但是现在主要需求还是Java吧。2、数据库要懂得数据与数据库的交互过程,日常表的一些操作。 了解一下数据库的优化知识,对于使用数据库的Web站点来说,数据库性能关系整个web应用的性能,如果数据库性能不佳,其他的优化工作也是徒劳无功。所以优化数据库性能, 对提高整个web应用的效率有着举足轻重的作用。 1、 表的设计要规范,即要符合数据库设计范式。  2、 适当建立索引,在频繁作为检索条件,更新较少的字段上建立索引,以提高查询速度。  3、 分表查询,有水平分割、垂直分割。  4、 读写分离,读(read)、写(create、update、delete)。  5、 建立存储过程。 这里特别想提到的是拆分表格这一点。最简单的诸如,根据用户ID的最后1位的数字将其拆分成10个表,即 0,1,2,3,4,5,6,7,9。 这种平行的拆分方式,一方面,可以解决单个数据库并发连接数的限制,另外一方面可以控制单表的大小。很有效的一种优化方式,特别在于解决高并发的需求。3、负载均衡技术单台Web服务器处理能力有限,单台服务器承受的压力达到极限时,需要有更多的服务器分担工作,我们需要想办法将流量合理分配到更多的服务器上。 任何的负载均衡技术都要想办法建立某种一对多的映射机制: 一个请求的入口映射到多个处理请求的节点,从而实现分而治之(divide and Conquer)。 这种映射机制使得多个物理存在对外体现为一个虚拟的整体,对服务的请求者屏蔽了内部的结构。 采用不同的机制建立映射关系,可以形成不同的负载均衡技术,常见的包括:- CDN  - HTTP重定向  - 基于DNS的轮询解析  - 反向代理服务器 4、缓存技术随着网络的发展,数据越来越多,从而导致运算的压力越来越大,为了解决这一问题,就需要合理分级计算资源,充分利用已有资源。缓存的工作实际上计算资源的合理分配。 缓存 (Cache) 原意是指可以进行高速数据交换的存储器。当CPU处理数据时,先到 Cache 中寻找,如果数据因之前的操作已经读取而被暂存其中,就不需要再从随机存取存储器中读取数据了。 现在缓存的概念已被扩充,凡是位于速度相差较大的两种介质之间,用于协调两者数据传输速度差异的结构,均可以称之为 Cache 。 在 web 世界,理论上每一层都可以被缓存。以php应用为例:底层有CPU缓存,磁盘文件系统缓存 数据库层有 Table Cache,Query Cache Apache和Ngix的缓存 应用程序代码级别的Smarty实现的文件缓存 基于HTTP协议和浏览器自身实现的浏览器缓存 基于NoSQL系统的缓存(redis, memcached) 我目前是在职前端开发,如果你现在也想学习前端开发技术,在入门学习前端的过程当中有遇见任何关于学习方法,学习路线,学习效率等方面的问题,你都可以申请加入我的前端学习交流裙:前面:851 中间:231 最后:348。里面聚集了一些正在自学前端的初学者裙文件里面也有我做前端技术这段时间整理的一些前端学习手册,前端面试题,前端开发工具,PDF文档书籍教程,需要的话都可以自行来获取下载。当然除了上述这些,计算机网络、数据结构和算法、计算机组成和原理、离散数学等知识都要涉及。 

本文章由javascript技术分享原创和收集

发表评论 (审核通过后显示评论):