linux - Rabb.it 如何为用户流式传输浏览器窗口

标签 linux vps vnc

我只是想知道 rabbit 如何能够为每个用户提供不同的浏览器,让他们从 linux 机器上使用它似乎是 vnc 技术,但我不知道如果你知道他们是如何做到这一点的,请告诉我。

最佳答案

这里有一篇关于他们的架构的详细博客文章:https://bloggeek.me/rabbit-webrtc-interview/

我将引用长寿的相关部分:

We have two main stacks, one for audio/video and one for our business logic:

rabb.it architecture overview

Our audio/video stack is built in Java on top of Netty:

Our SFU allows us to use WebRTC with much larger groups than the normal use case. For our shared viewing feature (called Rabbitcast™), we had to build a native extension to capture and delivery an HD stream with audio from our virtual machines. Both of them use our own WebRTC server stack to talk to the clients. Our Business Logic stack is built on top of Node.js using a promise-based approach to keep our sanity.

Lastly we use Redis both for intelligent caching and pub/sub. MongoDB is our persistent storage.

关于linux - Rabb.it 如何为用户流式传输浏览器窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49537926/

相关文章:

ubuntu - 如何在 Amazon EC2 Ubuntu 服务器上设置 GUI

macos - Mac 是否可以有多个客户端使用其桌面?

linux - Bash 并行 dd 和 mkfs

node.js - 是否可以在 URL 中不显示端口号的情况下使用 Node.js 服务器。

PHP上传问题

python - VPS 服务器上的 Pygame.display.init() 错误 : "No available video device",

mysql - CentOs 6.9 Mysqld 启动失败(InnoDB Error : innodb_system data file './ibdata1' is of a different size)

encryption - VNC 定义了哪些协议(protocol)代码? (RFB 协议(protocol))

linux - forrtl : severe (174): SIGSEGV, 发生段错误

php - PDO 查询停止循环 - Php