I am quite new to this buzzword “serverless”.
All that I understand is that at minimum you need one server for any deployment. In serverless you just don’t have to manage the server side of things and only focus on code development.
Since Discourse is a SaaS, I wanted to know if it’s possible for Discourse to be run as serverless application?
Like on AWS Lambda? If yes what are the benefits over running on normal instances.
performance? bandwidth? cost?
Serverless just means “running on someone else’s server”. Kind of like calling takeout kitchenless.
In this case what serverless means is that you as the application owner don’t need to think about the server - the first example that comes to mind is probably Google App Engine.
While it may be possible with a lot of effort, Discourse isn’t expected to run this way and we don’t support it.
我对这个很感兴趣,但它可能需要大量的工作。
Google Cloud Run 最近发布,它不再仅仅是“函数即服务”,而更像是“无服务器 Docker”。
我认为需要解决的主要问题包括:
- 上传的文件需要存储到 S3;
- MessageBus 需要一个专用的推送服务(如 Mercure、Pusher.io 或 Ably),或者将其禁用。
我假设当前用于通知的长轮询设置会导致您的 Lambda 或 Cloud Run 实例在超时后仍继续运行,从而抵消您所有的成本节省。