That's am impressive bit of technology, and nice to see it's making extensive use of Erlang (we're using Elixir). I'd be interested to know if the service works across multiple regions though. Some of the biggest challenges we've faced when engineering our realtime platform has been in having no single point of congestion and effectively peer-to-peer routing within the cluster. This is not that important if all your…
Riot accounts are tied to different geographical regions, so I would expect the service doesn't have to span across them, http://leagueoflegends.wikia.com/wiki/Servers
Riot Games Messaging Service
21–30 of 39 posts
Re: Riot Games Messaging Service
#22Nice to see yet another game studio making use of Erlang.
Re: Riot Games Messaging Service
#23Nice to see yet another game studio making use of Erlang.
I thought the post might shed more light on their use of Erlang for this service, but it focuses more on high level topology, AWS infrastructure, and load balancing. It's interesting to get a sense of the level of high level deployment tooling they used, because in a way Erlang marketing gives the impression that the language and VM are all you need.
Re: Riot Games Messaging Service
#24I realize the article isn't actually about a chat service, but I continue to be confused because there exists Riot[1], the messaging client of the Matrix network. [1] https://riot.im/
Off-topic: do you guys at matrix/riot have a bot that automatically creates a ticket when it finds keywords such as {IRC|messaging|chat} in any hn thread without any mention of {riot.im|matrix.org} URL being also in the comments? Honest question. Isn't there a publicly hosted database of hn comments so someone could make stats on this topic? I'm sure you are close to 100% match.
Yes. I, too, have heard of that other thing...
Re: Riot Games Messaging Service
#25Nice to see yet another game studio making use of Erlang.
I thought the post might shed more light on their use of Erlang for this service, but it focuses more on high level topology, AWS infrastructure, and load balancing. It's interesting to get a sense of the level of high level deployment tooling they used, because in a way Erlang marketing gives the impression that the language and VM are all you need.
https://engineering.riotgames.com/news/chat-service-architec...
Re: Riot Games Messaging Service
#26Earlier quoted context omitted.
Off-topic: do you guys at matrix/riot have a bot that automatically creates a ticket when it finds keywords such as {IRC|messaging|chat} in any hn thread without any mention of {riot.im|matrix.org} URL being also in the comments? Honest question. Isn't there a publicly hosted database of hn comments so someone could make stats on this topic? I'm sure you are close to 100% match.
The only folks who work on matrix/riot who comment on HN are basically me (project lead) and sometimes jkire (synapse maintainer). And we don't plug the project, but respond to stuff like this & questions when they come up. Anyone else commenting about Matrix are doing so completely independently and without any input or knowledge from the actual dev team. For instance, I have absolutely no idea who sanqui is (althou…
Re: Riot Games Messaging Service
#27wondering why they have the edge nodes and not just a load balancer. looking at their responsibilities it looks like a lot of the overlap with the responsibilities of a load balancer.
Looks like a load issue, a single server can only take care of so many conn, auth, etc... So having several solves the problem and can scale horizontally easily, but each edge maintains conn information, so a given user needs to be routed to that same server every time. On the other hand, all LBs share a single address and all should be replaceable by each other, they exist purely to route the user to the right edge…
The edge servers are not clustered and share no state. We require at least 2 servers as minimum for fault tolerance.
Re: Riot Games Messaging Service
#28That's am impressive bit of technology, and nice to see it's making extensive use of Erlang (we're using Elixir). I'd be interested to know if the service works across multiple regions though. Some of the biggest challenges we've faced when engineering our realtime platform has been in having no single point of congestion and effectively peer-to-peer routing within the cluster. This is not that important if all your…
(I work on same team with Michal)
Re: Riot Games Messaging Service
#29Re: Riot Games Messaging Service
#30Earlier quoted context omitted.
Looks like a load issue, a single server can only take care of so many conn, auth, etc... So having several solves the problem and can scale horizontally easily, but each edge maintains conn information, so a given user needs to be routed to that same server every time. On the other hand, all LBs share a single address and all should be replaceable by each other, they exist purely to route the user to the right edge…
Not the OP, but I work on the same team. The edge servers are not clustered and share no state. We require at least 2 servers as minimum for fault tolerance.