Scaling is a major challenge. Most serverless compute engines rely on an internal load balancer, and all instances are ephemeral. This means instance-to-instance communication is not possible. Scaling can be achieved through a message bus like Pub/Sub, but this introduces another problem. Requests and responses published to topics are replicated across all active instances, which is inefficient.
Other annoying limitations are that the compute process is bound to a request and ends immediately when the request completes. Another is the need to hack subscription leaks caused by the ephemeral nature of the instances (I really hate this).
Cons:
- Scaling is inefficient.
- WebSocket is stateful, which defeats the purpose of cost optimization for serverless. If a client stays connected, the cost can exceed that of running dedicated servers.
- Protocol and platform options are limited.
- Strong vendor lock-in.
Pros:
- Performance is good enough for most use cases.
- Scaling and infrastructure are fully managed.
- No usage means no cost, while the service remains available.
- Small usage is often free, as most cloud providers offer free tiers.
I think building this as a SaaS is a bad idea. It does not reduce costs, in fact it increases them, and it adds significant complexity. Running it as a SaaS is very likely not profitable in today market I assume.
That said, do you think any organization would be interested in an open source version? It is scalable, costs nothing to run aside from initial setup time, and can be more secure if they can properly manage network access. I am not even sure if anyone would be willing to pay a small fee for this.
Maybe I'm building trash. I'm asking here to find out if it could be someone's treasure.