想用Node.js,老板不同意?
Posted 前端开发
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了想用Node.js,老板不同意?相关的知识,希望对你有一定的参考价值。
经过这几年的发展,前端普遍进入了技术深水区,只会Web页面开发已经难以满足企业需求,Node逐渐成为了刚性技能。
但有些人在业务上还没有使用过Node,想用老板也不同意。能够创造价值,提升效率的东西老板没有理由说不吧?下面将从4个角度分析为什么一定要用Node?
先了解什么是中间层
在翻看很多技术文章时,大家都提到“中间层”,在很多大型企业中,Node确实承担了“中间层”的角色,那么,Node为什么被广泛的应用在“中间层”呢?
要回答这个问题,先来陈述下什么是中间层。
通常我们把Web领域分为客户端和服务端,也就是前端和后端,这里的后端就包含了网关,静态资源,接口,缓存,数据库等。而中间层呢,就是在后端这里再抽离一层出来,在业务上处理和客户端衔接更紧密的部分,比如页面渲染(SSR),数据聚合,接口转发等等。
以SSR来说,在服务端将页面渲染好,可以加快用户的首屏加载速度,避免请求时白屏,还有利于网站做SEO,他的好处是比较好理解的。那么对于数据的聚合,接口转发来说,这样做有什么意义呢?
用Node的4点意义
01
业务驱动
Node有个突出的优势,他的开发者可以是前端。
前端对于页面所需要的数据有更好的理解,每个页面要用到哪些接口,每个接口要用到哪些字段前端是最清楚的。再加上实际业务开发中,前端页面需求经常会发生变化,需要修改字段或者数据结构,所以对接页面的这部分接口由前端直接开发非常合适,可以显著的减少沟通成本。
02
架构需要
面向用户的接口由Node中间层负责以后,真正的服务端可以专注于提供基于领域模型的对内接口,做微服务。
比如可以基于Goods模型,提供所有商品相关的接口,基于Users模型,提供所有用户相关,当一个接口需要商品+用户信息时,由Node分别查询组装。从整体业务代码维护角度来说,变得更容易,不会因为业务发展使得每个接口都异常繁杂。
03
性能满足
如果仅仅是架构层面的需求,需要有一个中间层来沉淀业务,那用Java,php也可以做到,为什么说Node更适合做呢?
因为Node天生异步!
众所周知,js是一门单线程语言,所以Node在实现的时候,需要借助libuv来实现异步。
如图所示,libuv为Node提供了线程池,事件池,异步I/O等能力。正是因为其中网络I/O的异步能力,可以让Node做接口聚合时,能够更高效的异步并发处理。
04
成本较低
Node使用js开发,只需要学习简单的api,前端开发者就可以无障碍使用,学习成本很低。
而且,Node具有活跃的社区和丰富的模块池,拥有很多现成的功能实现,框架方面,也有成熟的koa,express等基本框架和egg等二次封装框架,可根据需求选择上手也比较方便。
看完这篇,如果领导还不让你用Node.js,那你不如来网易云课堂进阶自己的Node技能,还有Vue,Node,javascript,Reacet,Flutter...
课程四大主题
扫码免费领取
前端进阶系列直播课
微信:weizhuanye066
8.5-8.11前端进阶课程安排
1. 源码:《从源码中能学到的事:分析源码学架构》
如何从源码中学习
分析jquery,express框架架构
这些框架有哪些亮点
2. 项目:《全栈技能:1小时轻松掌握SSR》
深入理解SSR与CSR的异同点
SSR与CSR在不同业务模式下的不同应用
SSR在前端中的应用
3. 架构:《两小时精通jq+bs插件开发》
bs从入门到精通
jq+bs插件化权威开发指南
立即可用的设计模式技巧分享
4.架构:《生产环境下如何部署Node.js》
生产环境的设置
产环境下如何部署Node.js
nginx的基本配置
5. 技能:《网易内部Vue自定义插件库NPM集成》
网易内部封装Vue插件考虑的方方面面
如何让自己的插件通过NPM管理
如何提升自己的插件化开发思维
6. 技能:《谁说前端不用懂安全:XSS跨站脚本的危害》
Web开发中常见的安全漏洞
什么是xss跨站脚本
xss跨站脚本的防御
7. 实战:《Webpack的loader到底是什么样的?两小时带你写一个自己loader》
Webpack关键概念解析
loader到底是什么?
构建一个简单的源码
以上是关于想用Node.js,老板不同意?的主要内容,如果未能解决你的问题,请参考以下文章