讨论一下利用vm热更新
发布于 18 小时前 作者 jiangzhuo 93 次浏览 来自 分享

首先说一下情景。服务器有状态(比如网游服务器,服务有玩家的状态数据和游戏逻辑),不能像无状态的http服务器可以杀掉进程,或者利用集群调度更新。 相信用过pomelo做服务器,都用过pomelo-admin这个模块,其中有利用vm的一段代码,原理大致如下 https://gist.github.com/jiangzhuo/fb61ddd9c1bb0cba6b30#file-gistfile1-js 效果大致如下 curl -X GET 'http://localhost:3000' Hello what! curl -X POST -H "Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW" -F "what=hell" 'http://localhost:3000/helloWhat' curl -X GET 'http://localhost:3000' Hello hell! 基本上可以达到更改任何传入沙箱的东西的效果 我以前也一直这么使用,还没发现什么太大的问题,想跟大家讨论一下有什么不妥的地方。

3 回复

出门去看星战了哦

看起来每次调用都是动态的,这样的效率不会很低吗?

@alsotang http://localhost:3000/helloWhat 至少用来更新,更新不会很频繁,而且sandbox里没有什么逻辑,就是替换一下函数

回到顶部