鸽了 3 年的 Egg 3.0 带来了一个好消息!

简介: 鸽了 3 年的 Egg 3.0 带来了一个好消息!

点击预约 NodeParty 线上直播哟👇🏾


8月8日,NodeParty 线上直播,多位 Node.js 领域专家邀你一起云端相聚,快来预约直播吧!

EggJS 开源已经 7 年了,它的初心是能帮助前端架构师孵化出适合团队业务场景的上层框架,为此它提供了一套 Loader 规范以及延伸出的插件和框架能力,并支持渐进式的研发模型,从而很好的帮助开发者解决了企业框架的差异化定制与统一维护问题。



在具体实现上,其实 egg-core 这个库才是框架的框架的承载者,egg 则是一个集成了常用插件列表的可以开箱即用的应用框架。这是当时设计上的一个局限性,虽然也正因如此让 EggJS 在社区使用更广泛,但毕竟给上层框架的定制带来了一些束缚。

同时在那个时代,Typescript 还不像今天这样成为事实标准,采用 JavaScript 并拥抱 TC39 的规范才是当时的主流共识。虽然我们后续通过 Declaration Merging 的方式,很好的解决了 Loader 动态加载带来的智能提示问题。但插件的 d.ts 生态这块一直没有很好的维护。在应用层可以完全使用 TS 的情况下,使用 TS 重写 EggJS 底层代码是一个 ROI 不太高的事,毕竟谁也没想到 ESM 在未来几年的时间内居然发展的如此之慢。尽管如此,EggJS 为什么不基于 Typescript 编写,以及何时能支持更加彻底的 Typescript 编程界面而非约定优先的 Javascript 挂载风格,类似这样的讨论几乎伴随着整个 EggJS 自身的发展周期内。

2019 年 4 月的时候,EggJS 3.0 的里程碑第一次被确立下来,彼时 EggJS 团队的声音还是倾向于基于 ES Module 开发,更好的支持云原生为主要的演进方向,因为我们判断 BFF 到了一个需要 Serverless 解决运维成本的时候了,更多精力投入到了这一块探索中,对于这一个目标而言,更多的投入是在于 PaaS 和 中间件服务 的云原生化,在应用框架这一层现有的定制能力基本能满足。

之后因为种种原因,EggJS 3.0 最终没能在当年预设的十月如期发布,可能发布 3.0 Milestone 的 贯高 自己也没想到,这一鸽就到了 2022 年。

直到 2021 年我们重启了 Egg 3.0 的项目,产出了第一份 3.0 RFC(https://www.yuque.com/egg/3.0/rfc-v1),又重新吸引回小伙伴们的目光,最后经过各方的讨论,我们决定在 RFC 的基础上继续做一个能更加彻底解决 EggJS 维护过程中的痛点,同时可以满足各个小伙伴所在公司需求的全新驱动内核,更纯粹的框架的框架。



  • 更纯粹的框架的框架:提供插件复用能力及上层框架封装能力,渐进式的研发体验,初心不能忘。
  • 协议请求处理模型:不再基于 Koa,同时剥离原来的各种协议相关的内置插件,不再局限于 HTTP 场景。
  • 基于 IoC 的挂载机制,拥抱 TypeScript。
  • 基于 Manifest 的加载机制,新增构建期行为,增强企业级的扩展能力。

正如同 Egg 是框架的框架,拉丁语是英语的源头,因此我们把这个框架起了一个新的名字:Artus,它来自于拉丁语的框架。

Artus 刚刚面世,还在持续完善中,不过也是时候跟大家打个招呼了,我们将在支付宝体验科技举办的 NodeParty 2022.08.08 线上直播中分享跟它相关的故事,欢迎关注。


相关文章
|
监控 负载均衡 算法
基于docker的haproxy的反向代理
基于docker的haproxy的L7的反向代理
9660 0
|
3月前
|
存储 网络协议 Java
【Spring全家桶】Spring Cloud 2023.0.x:服务注册与发现:Nacos、Eureka、Consul(附《思维导图》+《面试高频考点清单》)
本文系统梳理Spring Cloud 2023.0.x(Leyton)服务注册与发现核心体系,涵盖Nacos(AP/CP双模)、Consul(CP)、Eureka(维护模式)三大组件原理、对比与实战,深度解析CAP理论、健康检查、高可用集群及迁移方案,助力微服务架构落地。
|
10月前
|
弹性计算 运维 安全
毅硕HPC | Pritunl + ECS + Frp 搭建远程办公VPN
本教程将介绍一种 “鱼与熊掌兼得” 的创新方案:核心VPN服务(Pritunl)部署在您本地的强大工作站上,通过轻量级的FRP内网穿透工具,借助阿里云ECS提供的稳定公网入口,安全地将其服务能力发布到互联网。 这样,远程员工只需连接到一个统一的云上地址,即可直接接入您办公室或实验室的本地网络,访问其中的设备,实现真正意义上的“远程局域网”体验。
1211 1
毅硕HPC | Pritunl + ECS + Frp 搭建远程办公VPN
|
6月前
|
安全 Linux API
OpenClaw(Clawdbot)保姆级教程:无影云电脑/本地部署+免费大模型API配置+Skills集成与常见问题解答
2026年,OpenClaw(曾用名Clawdbot、Moltbot)作为开源AI自动化代理框架,凭借“自然语言驱动+全场景任务执行+插件化扩展”的核心优势,成为个人与轻量团队提升效率的核心工具,被称为“24小时在岗的私人数字助理”。它无需手动编写脚本,仅需口语化指令,即可自主完成文件处理、网页操作、办公自动化、数据监控、内容创作等各类重复性任务,数据存储在本地或自有云端,隐私安全可控,完美适配零基础用户的使用需求。
1267 1
|
10月前
|
NoSQL 关系型数据库 Apache
Apache Doris 登顶 RTABench —— 实时分析领域的性能王者
Apache Doris 在最新 RTABench 实时分析榜单中登顶,性能达 ClickHouse 的6倍、PostgreSQL 的30倍、MongoDB 的100倍。依托 MPP 架构、列式存储、Pipeline 引擎与智能优化器,Doris 在多表关联、实时查询等场景表现卓越,成为实时分析新标杆。
792 12
Apache Doris 登顶 RTABench —— 实时分析领域的性能王者
|
9月前
|
机器学习/深度学习 人工智能 边缘计算
AI视觉在市政道路无人机巡检中的技术
通过深度学习目标检测与实例分割技术,实现裂缝、井盖缺失等缺陷自动识别;采用本地化边缘计算架构,保障数据安全与离线运行。
630 0
|
存储 移动开发 前端开发
HTML 入门与深度解析:从基础到高级特性
HTML(超文本标记语言)是构建网页的基础,通过标签和元素定义页面结构与内容。它支持文本、图片、链接、多媒体等元素,并具备语义化、跨平台、结构清晰等特点。HTML5 引入了新标签(如 `<header>`、`<nav>`、`<article>`)、表单增强、本地存储、地理定位等高级功能,极大提升了网页的交互性与用户体验。结合 CSS 与 JavaScript,HTML 构成了现代 Web 开发的核心。
681 0
|
设计模式 安全 数据库连接
particles 粒子背景插件在vue3中的使用
本文介绍了如何在Vue 3项目中使用`particles.vue3`库来创建粒子背景特效。文章提供了粒子背景插件的概述、安装步骤、配置参数说明,并展示了粒子特效的实现效果。同时,提供了在main.js中进行全局配置、在Vue组件中使用粒子背景组件的示例代码,以及完整代码的下载链接。

热门文章

最新文章