Node实战

会议室:二层 203
出品人:桑世龙(狼叔)

Node.js在大前端布局里意义重大,除了基本构建和Web服务外,这里我还想讲2... 展开 >

专题出品人:桑世龙(狼叔)

阿里巴巴 前端技术专家

狼叔(网名i5ting)现为阿里巴巴前端技术专家,Node.js 技术布道者,Node全栈公众号运营者,曾就职于去哪儿、新浪、网秦,做过前端、后端、数据分析,是一名全栈技术的实践者。目前负责BU的Node.js和基础框架开发,即将出版Node.js《狼书》3卷。

地点:二层 203

专题:Node实战

Node.js在大前端布局里意义重大,除了基本构建和Web服务外,这里我还想讲2点。首先它打破了原有的前端边界,之前应用开发只分前端和API开发。但通过引入Node.js做BFF这样的API Proxy中间层,使得API开发也成了前端的工作范围,让后端同学专注于开发RPC服务,很明显这样明确的分工是极好的。其次,在前端开发过程中,有很多问题不依赖服务器端是做不到的,比如场景的性能优化,在使用React后,导致bundle过大,首屏渲染时间过长,而且存在SEO问题,这时候使用Node.js做SSR就是非常好的。

当然,前端开发使用Node.js还是存在一些成本,要了解运维等技能,会略微复杂一些,不过也有解决方案,比如Servlerless就可以降级运维成本,又能完成前端开发。直白点讲,在已有Node.js拓展的边界内,降级运维成本,提高开发的灵活性,这一定会是一个大趋势。

本次专场,依然专注于Node主要做的2件事儿:前端辅助 + API封装,会重点倾向于Serverless、TypeScript在Web开发框架里的相关实践、性能、SSR以及架构相关的主题进行组织分享。

by 王伟嘉

腾讯云研发工程师
Node 源码核心贡献者
海量Node.js云服务的DevOps实践

Node.js近几年在服务端开发的比重越来越大,各大公司或多或少都选用它作为构建业务链路中不可缺少的一环。但Node.js本身极度灵活、轻量的特性,让它对DevOps上并不是那么的友好,一直被业界诟病为前端工程师的“玩具”。这些问题对于构建高可用服务非常重要。

腾讯云云开发团队从业务最初启动时,就选用了Node.js作为接入层的运行时环境,从业务上线到现在每天数亿级体量的云服务调用,在这个发展过程中,DevOps也从刀耕火种的原始阶段,逐渐构建了一套比较完善、严谨的流程。本次分享主要介绍Node.js在云开发团队业务架构中的定位,如何为Node.js设计一套稳定可靠的DevOps流程,在这个流程中会遇到哪些坑,如何在业务快速迭代的同时,保证服务的高度可用性。

演讲提纲:

1. Node.js in CloudBase

(1)Node.js在云开发团队的发展历程

(2)Node.js在业务架构中的定位

2. 渐进式迁移到静态语言

(1)TypeScript的语言优势

(2)TS在实际业务中的最佳实践

3. 为项目编写高质量的测试

(1)测试的基础知识

(2)单元测试

(3)集成测试

(4)端到端测试

4. 持续集成

(1)持续集成的基础知识

(2)Git Flow + Node.js最佳实践

(3)如何使用CI系统科学、自动地测试代码

(4)发布流程与发布策略

5. 日志、监控与容灾

(1)日志规范与日志系统

(2)如何通过监控告警快速定位问题

(3)容灾:主备、异地多集群

 

听众收益:

1. 了解为Node.js搭建DevOps流程中的技术选型、演化以及经验

2. 了解业界DevOps的最新理念和规范

by 金炳

网易
资深前端开发工程师
网易严选企业级Node及Serverless应用实践

网易严选作为原创生活类自营电商品牌,其供应链、采购、财务、数据等,具有业务变更频繁、流程复杂性高、跨系统协作多的现状,使得业务系统前端开发在开发和维护中变得越来越困难。因此,构建一个架构设计优良、功能全面、质量稳定的Node应用框架显得尤为重要。

我们基于TypeScript设计和开发了严选Node框架,抽象了应用生命周期管理,完成了Node生态建设,建立了与业务系统和技术中台的对接规范。在整个框架的开发和落地过程中,我们还实践了Serverless场景的应用,探索了Service Mesh在Node应用中的价值,希望能给大家带来一些思想的碰撞。

 

演讲提纲:

1. 业务场景

(1)网易严选业务介绍

(2)业务中的难题

2. Node如何解决业务难题

(1)点-面-立体三种角度

(2)角色转变

(3)权限拦截、参数校验

(4)单元测试之依赖注入

3. Node的保障

(1)Node的基建保障

4. Serverless实践介绍

(1)什么是Serverless

(2)方案选型

(3)Knative的原理和扩展

(4)构建严选的Serverless Framework

5. Service Mesh在Node应用中的价值

(1)Service Mesh介绍

(2)Service Mesh的价值

听众收益:

1. 了解如何使用Node去处理高复用的复杂业务,并了解Node框架的设计思想

2. 了解Serverless在严选中的使用方案、了解Service Mesh对Node应用的价值

by 陈仲寅(张挺)

淘宝
前端技术专家
基于 TypeScript 的 Node.js 多场景框架设计方案

未来前端最大的问题是规模化编程和全栈带来的挑战,TypeScript能够很好的应对这2个问题。在传统的Web框架、FaaS框架或者其他微服务框架,基于JavaScript体系实施全栈模型的大型项目开发时往往造成代码复杂度过高,维护成本逐步增加的问题(没有类型系统)。同时在不同的场景下迁移代码、共享代码时也会碰到很多问题。我们通过引入TypeScript 和装饰器模型,通过在跨场景下引用相同的装饰器,但是不同实现逻辑,来解决不同场景下的各种需求。这种做法很好的做到架构解耦,并解决规模化编程问题,提高代码质量,对团队成长也有非常好的帮助。

淘宝从2017年之前就开始探索TypeScript的落地方式,随着时间的推移已经将新的模块和框架全部迁移到TypeScript体系,在2019年,TypeScript应用已经遍地开花,提前完成了非常不错的布局。

本次分享主要介绍淘宝最近开源的Midway框架在新的场景、新的体系下如何和现有的Egg体系保持良好的兼容性,同时又能在TypeScript的使用中有着独特的体验,通过针对不同场景的情况,我们引入相同的解决方案,为未来打下了夯实的基础。

 

演讲提纲:

1. 使用TypeScript

(1)规模化编程和全栈带来的挑战

(2)面向接口编程

(3)新特性,装饰器的使用

2. 基于Egg创造性Web框架Midway

(1) 从Egg开始

(2) 引入 IoC 

(3) 和框架解耦

(4) 和目录结构解耦

(5) 引入自定义装饰器

(6) 实践讲解

3. 多场景设计实践

(1) 跨场景的实现

(2) FaaS场景的设计和代码迁移

(3) 跨其他场景的解决方案

 

听众收益:
当前Node.js的场景越来越多,很多代码都需要跨不同场景进行共享和迁移,在这些过程中,如果代码能够尽可能少的变化,势必会减少很多工作量和重构量,也使得在业务迁移过程中能够更加专注业务本身,而不是新框架的使用方式。

by 陈仲寅(张挺)

淘宝
前端技术专家
使用 Node.js 的 TypeScript 多场景框架和方案实践

未来前端最大的问题是规模化编程和全栈带来的挑战,TypeScript能够很好的应对这2个问题。在传统的Web框架、FaaS框架或者其他微服务框架,基于JavaScript体系实施全栈模型的大型项目开发时往往造成代码复杂度过高,维护成本逐步增加的问题(没有类型系统)。同时在不同的场景下迁移代码、共享代码时也会碰到很多问题。我们通过引入TypeScript 和装饰器模型,通过在跨场景下引用相同的装饰器,但是不同实现逻辑,来解决不同场景下的各种需求。这种做法很好的做到架构解耦,并解决规模化编程问题,提高代码质量,对团队成长也有非常好的帮助。

淘宝从2017年之前就开始探索TypeScript的落地方式,随着时间的推移已经将新的模块和框架全部迁移到TypeScript体系,在2019年,TypeScript应用已经遍地开花,提前完成了非常不错的布局。

本次分享主要介绍淘宝最近开源的Midway框架在新的场景、新的体系下如何和现有的Egg体系保持良好的兼容性,同时又能在TypeScript的使用中有着独特的体验,通过针对不同场景的情况,我们引入相同的解决方案,为未来打下了夯实的基础。

 

演讲提纲:

1. 使用TypeScript

(1)规模化编程和全栈带来的挑战

(2)面向接口编程

(3)新特性,装饰器的使用

2. 基于Egg创造性Web框架Midway

(1) 从Egg开始

(2) 引入 IoC 

(3) 和框架解耦

(4) 和目录结构解耦

(5) 引入自定义装饰器

(6) 实践讲解

3. 多场景设计实践

(1) 跨场景的实现

(2) FaaS场景的设计和代码迁移

(3) 跨其他场景的解决方案

 

听众收益:
当前Node.js的场景越来越多,很多代码都需要跨不同场景进行共享和迁移,在这些过程中,如果代码能够尽可能少的变化,势必会减少很多工作量和重构量,也使得在业务迁移过程中能够更加专注业务本身,而不是新框架的使用方式。

交通指南

© 2019 Baidu - GS(2018)5572号 - 甲测资字1100930 - 京ICP证030173号 - Data © 长地万方
本网站图片存储由七牛云独家支持