Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> a) Ubiquity — everything understands HTTP. Erlang nodes only talk to Erlang (or a compatible runtime)

OTP includes an http client and server. And ERTS includes an http mode for sockets. You may prefer 3rd party http servers (yaws and Cowboy are popular) or clients, but you have options that come with Erlang.

[No comment on b; I'm not sure I aprechiate the concept of standardized middleware]

> c) Giving up infrastructure (reverse proxies, load balancers, CDNs), You handle distribution yourself or through OTP design

You can put all this stuff between the users and you Erlang cluster. Within your Erlang cluster, I don't think it makes sense to leave the cluster and go back in... If you had a large server process in [language of choice], you probably wouldn't send request out to a load balancer to come back into the same process. If you have an n-tier system you may use a load balancer for requests to the other tier... In Erlang, the simplest analog is processes that serve the same request queue would join a pg group, and processes that want to send a request send to one of the members of the group.

> d) Interoperability with browsers and APIs, requiring bridging via something like Cowboy or gRPC gateway

If you want to talk http, you need something that talks http; there's at least 3 reasonable options, plus an http parser for sockets so you can do it yourself without as much fiddly bits. I guess I don't understand what you're looking for here.





Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: