Orbited浏览器间的实时通讯框架
Orbited 提供一个纯 JavaScript 和 HTML 的浏览器 Socket 通讯包,你可以把它看成是web的路由器和防火墙,允许你的web应用和后端的系统进行通讯,在这基础上你可以实现任何的网络通信协议。
要使用 Oribited 当然还需要一个服务器端,这是用 Python 开发的一个服务程序,用来处理来自浏览器之间的通讯请求。点击这里查看在 Windows 下的安装方法。
这里有一个使用 Oribited 搭建的Web聊天室的在线演示。
体系结构图:
一段示例代码:
<script type="text/JavaScript">
Orbited.settings.port = 9000;
amqp_broker_port = 7000;
amqp_conn = amqp.Connection({host: 'localhost',
port: amqp_broker_port,
send_hook: function(msg) { // for debugging
append_msg('SENT', msg);
},
recive_hook: function(data) { // for debugging
append_msg('RECV', data);
}
});
amqp_conn.start();
// You should have your server generate a UUID since browser methods
// are unreliable at best
session = amqp_conn.create_session('not_a_great_id' + (new Date().getTime() + Math.random()));
var fedoraproject = "org.fedoraproject-" + session.name;
session.Queue('declare', {queue:fedoraproject, exclusive:true});
session.Exchange('bind', {exchange: "amq.topic",
queue: fedoraproject,
binding_key: "org.fedoraproject.#"});
// Bind each queue to the control queue so we know when to stop
session.Exchange('bind', {exchange:"amq.topic",
queue: fedoraproject,
binding_key:"control"});
</script>
评论
KivEntKivy 的实时渲染框架
KivEnt是一个在Kivy中构建高性能,动态实时场景的框架。虽然没有像虚幻引擎或Unity3d那样强大的功能,但KivEnt能够创建处理几千到几万个实体的游戏,这取决于我们对它们进行的处理类型。
KivEntKivy 的实时渲染框架
0
libre实时通讯库
libre是一个利用异步I/O实现了实时通讯库。采用可移植的POSIX源码编写,符合ANSIC89和ISOC99标准。这是一个可靠、快速、低内存占用的库,兼容RFC,支持IPv4和IPv6,协议实现包
libre实时通讯库
0