Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

midway-serverless 方案讨论 #99

Closed
ZQun opened this issue Jan 2, 2019 · 12 comments
Closed

midway-serverless 方案讨论 #99

ZQun opened this issue Jan 2, 2019 · 12 comments
Assignees

Comments

@ZQun
Copy link
Member

ZQun commented Jan 2, 2019

重新开个issues,在这里讨论有关midway-serverless吧😊
#96

@czy88840616
Copy link
Member

@kurten @Lellansin

@ZQun
Copy link
Member Author

ZQun commented Jan 3, 2019

eggjs/egg#3352 (comment)

@Akimotorakiyu
Copy link

Akimotorakiyu commented Jan 4, 2019

midway-serverless很棒棒哦,那么问题来了,midway-serverless和函数计算怎么选择或者处理好呢?

@czy88840616
Copy link
Member

czy88840616 commented Jan 4, 2019

midway-serverless 可以看成一个 serverless framework,解决的是不同平台希望能有统一的开发体验的问题,也方便常见的应用迁移到 FaaS 体系。

@Akimotorakiyu
Copy link

还没方案吗?凉了吗?

@czy88840616
Copy link
Member

我们现在主要在做函数计算这块。正在内部使用中。

@Akimotorakiyu
Copy link

Akimotorakiyu commented Apr 12, 2019

焦急又耐心地等待

@ZQun
Copy link
Member Author

ZQun commented Apr 20, 2019

@czy88840616 函数计算大概什么时候上线?

@czy88840616
Copy link
Member

现在的问题在于内部方案和社区方案并没有特别一致。简单来说现在阿里云的fc是没法自定义运行时的,只是开放了函数部分,如果要一致的话,这样很多的逻辑就得从运行时移动到用户代码中,感觉不是特别好。

为了和 midway 系列的注入用法,以及跨模块的复用,我们目前还是希望 fc 的写法是 ts + 装饰器的用法,通过不同的生成器来屏蔽入口的差异,这样可以部署到 fc/amazon 等不同的平台上。

举个例子:

我们会把 fc 的参数进行一些包装。

exports.handler = (event, callback) => {
}

变成类似下面的形式。

@func()
export class MainFunction {

  @inject()
  ctx;

  async handler(event) {

  }
}

就目前来说,集团内的场景趋于稳定,但是社区的变数还是比较多,如何和各方的工具链协作也是一个问题,不过 就 midway-faas 本身的代码变化不大,大概也就 150 行代码,非常简单。。

@ZQun
Copy link
Member Author

ZQun commented Apr 21, 2019

@czy88840616 可以先开源一部分,在慢慢升级吗?

@danielsss
Copy link
Contributor

黄花菜都凉透了~ @czy88840616 赶紧申请开源啊!

@czy88840616
Copy link
Member

本周提流程。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

6 participants