Serverless 原生框架:Malagu Framework

本文涉及的产品
简介: 背景 早期,Serverless Framework 的定位是偏运维侧,通过 Yaml 文件定义规则,Serverless Framework 负责部署到对应的云厂商。Serverless Framework 提供了一种方案去适配不同的云厂商。

背景

早期,Serverless Framework 的定位是偏运维侧,通过 Yaml 文件定义规则,Serverless Framework 负责部署到对应的云厂商。Serverless Framework 提供了一种方案去适配不同的云厂商。

最近 Serverless 提供了一个 Serverless Component 方案,这个方案更面向开发侧。在同一时间,Malagu Framework 也想到了 Component 类似的方案。

Malagu Framework 一开始定位就是偏开发侧的。Malagu Component 与 Serverless Component 解决的问题是一样的:适配不同平台的服务(阿里云函数计算、阿里云 oss、腾讯云函数、aws lambda 等等)和封装通用的业务代码。

Malagu Component 与 Serverless Component 设计上也存在不同的地方,后面可以单独写一篇文章介绍一下。

Malagu 由 CLI + Framework 组成,其中 Framework 本身就是基于 Malagu Component 实现。

简介

Malagu 是基于 TypeScript 的 Serverless First、可扩展和组件化的应用框架。

在 Malagu 的世界里一切皆组件,应用也是组件:根组件。高级组件可以基于低阶组件实现,组件的编排形成我们的应用。

Malagu 组件的实现就是一个标准的 node module。只需要将 Malagu 组件发布到 npmjs 仓库,就可以与大家分享你自定义的组件。

特点

  1. Serverless First,默认提供适配 Serverless 最佳实践,也支持运行在服务器上
  2. 支持前后端一体化,基于 JSON RPC,前端像调用本地方法一样调用后端方法
  3. 前后端支持 rpc 和 mvc 两种通信形式,mvc 可以满足传统纯后端 rest 风格接口开发需要
  4. 支持 typeorm,事务 AOP 和事务传播行为,也可以集成其他的开源 ORM 框架
  5. 提供类 spring security 的认证和授权,现在已经集成了开箱即用的 authing 平台,实现了 oidc 认证和授权
  6. 组件化,框架本身也是基于组件化实现,将复杂大型项目拆解成一个个 Malagu 组件,提高了代码的复用能力、降低了代码维护难度
  7. 依赖注入和 AOP,抽象了一套前后端统一的依赖注入,依赖注入的体验与 spring 差不多
  8. 命令行工具插件化,默认提供初始化、运行、构建、部署能力,通过插件可以扩展命令行的能力
  9. 零配置,提供了一套默认行为,你也可以通过 Malagu 配置文件覆盖默认行为
  10. 支持适配任意前端框架,目前集成了 React 前端框架,另外,UI 框架集成了 antd、md 等

快速体验

  1. 创建应用


先安装命令行,然后初始化一个模板:

npm install -g yarn
npm install -g malagu
malagu init

Malagu_Backend_App_

  1. 本地运行应用
malagu serve

Malagu_Backend_App_

  1. 本地调试应用


使用 vscode 单步调试工具。

Malagu_Backend_App_

  1. 部署应用
malagu deploy

Malagu_Backend_App_

相关链接

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
目录
相关文章
|
26天前
|
运维 Serverless API
Serverless 应用引擎产品使用合集之如何实现一键迁移Web框架
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
2月前
|
Serverless PyTorch 算法框架/工具
Serverless应用引擎部署问题之下个节点不可用如何解决
Serverless部署是指将应用程序部署到无服务器架构中,该架构允许开发者专注于代码而无需关心底层服务器的运行和维护;针对Serverless部署过程中可能遇到的挑战,本合集提供全面的指南和最佳实践,帮助开发者顺利实现应用的无服务器化部署。
382 2
|
2月前
|
存储 缓存 运维
Serverless 应用引擎产品使用之阿里云函数计算3.0接入Go的框架goframe的步骤如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
|
2月前
|
Serverless 数据库连接 数据库
函数计算常见问题之框架报错如何解决
函数计算(Function Compute, FC)是阿里云提供的无服务器计算服务,它允许用户在无需管理服务器的情况下运行代码,但在配置和执行过程中可能遇到报错,本合集致力于梳理FC服务中的常见报错和配置问题,并提供解决方案,帮助用户优化函数执行环境。
函数计算常见问题之框架报错如何解决
|
2月前
|
人工智能 Cloud Native Serverless
活动回顾丨阿里云云原生 Serverless 技术实践营西安站 PPT 下载
活动回顾丨阿里云云原生 Serverless 技术实践营西安站 PPT 下载
|
2月前
|
监控 Kubernetes Serverless
解密最受欢迎的开源 Serverless 框架:流量篇
解密最受欢迎的开源 Serverless 框架:流量篇
|
2月前
|
人工智能 Cloud Native Serverless
邀请报名|12月22日阿里云原生 Serverless 技术实践营 西安站
12月22日,西安 · 阿里中心举办阿里云原生 Serverless 技术实践营
邀请报名|12月22日阿里云原生 Serverless 技术实践营 西安站
|
7月前
|
人工智能 Cloud Native Serverless
邀请报名丨11 月 24 日阿里云原生 Serverless 技术实践营深圳站
邀请报名丨11 月 24 日阿里云原生 Serverless 技术实践营深圳站
|
8月前
|
人工智能 Cloud Native Serverless
邀请报名|11月24日阿里云原生 Serverless 技术实践营 深圳站
11月24日,深圳阿里中心举办阿里云原生 Serverless 技术实践营
邀请报名|11月24日阿里云原生 Serverless 技术实践营 深圳站
|
10月前
|
IDE Java Serverless
通过部署流行Web框架掌握Serverless技术
本课程通过学习部署流行Web框架,如SpringBoot,Express,Web IDE,让你掌握Serverless函数计算架构和技术,领略弹性并发,高可用的好处。
901 1

热门文章

最新文章

相关产品

  • 函数计算