Noticing that they use Akka, I wonder how a solution in Phoenix/OTP would look.
I think it’s pretty insane when people use anything other than Erlang or Elixir for instant messaging - in my experience nothing comes close to WhatsApp in terms of stability and speed; not iMessage not Telegram nor FB messenger.
From what I remember WhatsApp had some issues early on but for the last few years it has been completely solid. Even the mighty Apple with all their resources has not achieved the same level of stability with iMessage imo.
Granted, I think LinkedIn is highly invested in the JVM so their choices were limited. I agree with you that messaging apps are well suited for Erlang/Elixir.
Wow that article is a great find. Reading through, it sounds very similar to what I’ve seen on the 2 Million Connections, but in the Java ecosystem and with production data.
Looking at the 2 Million Connections Tsung Client Config, they are using port 4000. At an interesting GitHub Reproduction of 2 Million Connection with Docker, it is also configured for port 4000. I wonder how just the TLS 20K hit mentioned in the LinkedIn article would affect the overall performance.
In addition to the TLS aspect, the LinkedIn article mentions server nodes with 64 MB of RAM. It would be interesting to know exactly their configuration in comparison to the one mentioned with Phoenix