Comments (2)
Had a look at the Protoo repo. Its light, simple and fast.
I don't know if this is helpful OR if your happy for the system to just be able to be used for Chat and nothing else, but i will point of the issues that i see.
Your presuming no network partitions will occur currently. No Durability server side.
You have designed the Use case semantics around Rooms.
My 2 cents :) :
- Adopt a Namespace rather than room, because the namespace is much easier to reason about in terms of all data and multi party synchronisation. Basically, it can be used for any data and not just rooms.
- Because of message propagation delays / partitions, you need durable, at least once. Basically a message Broker. Centrifugo uses Redis and NATS, and does at least have a namespace, but is a messy system currently. Maybe also look at Resgate ( https://github.com/resgateio/resgate). It uses a namespace approach. The way the data collections are used is very nice because its holding the data as denormalized structures. This makes it very easy to do subscriptions to many clients.
Also because Dart FFI is now going ahead well, you can compile the golang client code to a c shared lib and call it directly from the Flutter Dart code without going through the Swift or java layers.
In this way the only thing really at the Dart level is the GUI and the Data - All transport aspects are in the golang. I have used this for many flutter and golang combined projects and for me it make all the transport and network code much more resilient because its golang on the client and Server.
from ion.
Very good suggestions! Thanks!
- Maybe
channel
is better thanroom
, Someone cat sub streams/signals from two different channels. - Think about signal history record, I will consider it
from ion.
Related Issues (20)
- my network is NAT forwarding, How do I configure HOT 1
- my network is NAT forwarding, How do I configure HOT 1
- nats server error HOT 1
- about the uid binding in ontrackevent and ontrack HOT 1
- add an area directly inside of the sfu that allows users to point to their ssl certs HOT 3
- How to deploy ION to kubernetes? HOT 5
- AWS Ec2 Deployement HOT 20
- Promise on rtc.join never gets call
- How to set room name?
- when i open the signal TLS,ion-app-web connect failed
- docker-start-services not support multi-times execute. HOT 2
- 使用nginx代理5551端口流量,默认一分钟关闭连接,是否有心跳 api?
- ERROR: for redis Cannot start service redis HOT 7
- How to do load balancing?
- The 'ontrackevent' event is called regardless of the session
- open does not work on linux
- panic: (*logrus.Entry) Error
- [QUERY] Understand ICE implementation in ion
- Websocket messages can be sent, but the server has not responded
- whats the browser connection url when running under docker compose ? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from ion.