Egg.js 在阿里巴巴集团的的实践运用庄少/ngot 从⼑耕⽕种,铁犁⽜耕,迈向机械化⽣ 产 Egg.js 在阿⾥巴巴集团的的实践运⽤ 关于我 ▸ 庄少/ngot ▸ Egg.js 核⼼心开发者;fibjs 核⼼心开发者; ▸ Follow me at : ngot ngot Ngot_ftd ⼑耕⽕种 裸⽤社区框架 ✤ 裸⽤ koa, express 等 ✤ 各团队独⾃野蛮发展,开发规范混乱 基础组件复⽤度低 ✤ 跨 BU 合作依然困难重重 迈向机械化⽣产 天下归⼀ ✤ 联合整个公司制定 Node.js 企业级的开发标准 ✤ 基于标准规范开发对应的 Web 框架(Egg.js) ✤ 开源回馈社区 Egg.js 为企业级框架和应⽤⽽⽣ express vs koa ✤ 基于 Generator/Async 的中间件(同步写法更适合企业 应⽤) ✤ 核⼼精简(req/res/ctx),易于扩展 易⽤的框架,丰富的库,能够快速搞定业务才是王道 ✤ 架构师 ✤ 降低团队成员学习门槛,基础组件沉淀复⽤,公司内 部⽣态建设,打通开源社区 设计原则 ✤ 追求规范和共建 ✤ 微内核,可扩展 ✤ 约定优于配置 Egg.js 项⽬⼀览 showcase ��� app � ��� controller (控制器器) � � ��� home.js � ��� service (业务逻辑) � �0 码力 | 29 页 | 2.39 MB | 1 年前3
TypeScript 多场景设计方案及应用实践
增加接⼝口描述 TS 体验 增加接⼝口描述 TS 第⼆二代设计 第⼆二代设计 TS 解决 Egg.js 体验 虽然服务层的使⽤用已经解决了了,但是和 egg 耦合的部分还是沿⽤用了了 egg 的写法,虽然有 变通的办法,但是需要在体验上更更进⼀一步。 TS 和 Egg.js 解耦 1、保留留原有能⼒力力,可以快速迭代升级(继 承 egg-loader) 2、实现装饰器器的⽅方式,利利⽤用现有的 的扩展, loadController,load系列列的 保留留 Egg.js 的能⼒力力同时做出提升 TS 和 Egg.js 解耦 保留留 Egg.js 的能⼒力力同时做出提升 TS 和 Egg.js 解耦 保留留 Egg.js 的能⼒力力同时做出提升 TS 和 Egg.js 解耦 保留留 Egg.js 的能⼒力力同时做出提升 TS 和⽬目录解耦 做完了了之后,我们发现了了,加载模式的⾃自动0 码力 | 95 页 | 8.28 MB | 1 年前3
聊聊 Node.js 构建部署时我们要关心的数据2017 蚂蚁金服 目录 CONTENTS ✦ 源起 ✦ 构建数据 ✦ 部署结果 ✦ 启动数据 ✦ 大盘 / 健康模型 1 源起 我是如何扎入这个坑位的。 Egg.js 插件开发者视角 400+ Node.js 应用 来自灵魂的拷问 我是谁? 我要做什么? 谁用了我? 初衷 egg-niubility 构建部署流程 构建任务 统一脚本 触发部署 Node.js / 框架版本(可出大盘) ‣ 直接依赖的新旧 ‣ 依赖树内的搜索 ‣ 应用的风险依赖巡检 + ?邮件通知 4 启动数据 我要关心启动时的哪些数据?以 Egg.js 为例。 最终的脱敏配置信息 Egg.js 启动时最终合并出来的 config 信息 ‣ ./run/application_config.json ‣ ./run/application_config_meta 插件特化信息上报 ‣ 全量配置上报不够结构化 / 清晰 ‣ 有需求的插件自行按规范合成结构化的上报信息 ๏更易消化的配置信息 ๏一些有用的元信息 启动时长 / 阶段时长 * 蚂蚁金服一个普通 Egg.js 应用正常启动时间应该在 10 秒左右 ‣ ./run/agent_timing_{pid}.json ‣ ./run/application_timing_{pid}.json 5 大盘0 码力 | 47 页 | 5.80 MB | 1 年前3
共 3 条
- 1













