Serverless Diskurs

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.

Das klingt interessant, aber es könnte ziemlich viel Arbeit bedeuten.

Google Cloud Run wurde kürzlich veröffentlicht und ist weniger „Functions as a Service“ als vielmehr „Serverless Docker“.

Meiner Meinung nach sind die größten Herausforderungen, die gelöst werden müssen:

  • Uploads müssen nach S3 verschoben werden.
  • MessageBus benötigt einen dedizierten Pusher (Mercure, Pusher.io, Ably) oder muss deaktiviert werden.

Ich gehe davon aus, dass das aktuelle Long-Polling-Setup für Benachrichtigungen deine Lambdas/Cloud-Runs über ihre Timeouts hinaus am Laufen hält und damit alle Einsparungen bei den Kosten zunichtemacht.