ionorg / ion

Real-Distributed RTC System by pure Go and Flutter

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Storing rooms in redis

atbe opened this issue · comments

Summary

I would suggest storing the room objects in redis rather than in memory to account for biz node failures.

Motivation

Why are we doing this? What use cases does it support? What is the expected outcome? Is this available in other implementations? Can this not be implemented using primitives?

I'm not entirely sure why the project stores rooms in memory. Are they intended to be ephemeral? If so, why?

This also would limit the ability to horizontally scale the biz server. I would love some insight on this.

Describe alternatives you've considered

Storing the room objects in redis.

Additional context

Add any other context or screenshots about the feature request here.

https://github.com/pion/ion/blob/v1.5.2/pkg/node/biz/room.go#L12

Thank you for your suggestion. The ion cluster is being improved and the room should be stored in the redis cluster.

commented

biz can't read/write redis directly.
islb can