- skynet_ts 测试示例
- 构建参见
build
或使用编译好的文件 - skynet
- skynet config配置
js_loader
: js服务入口文件,例如:./js/skynet_ts/ts/lib/loader.js
,loader生成的js对应路径jslib
: js库搜索路径,例如:js/demo/lib/?.js;js/demo/lib/?/index.js;js/skynet_ts/ts/lib/?.js;js/skynet_ts/ts/lib/?/index.js;js/skynet_ts/ts/lib/skynet/?.js;js/skynet_ts/ts/lib/skynet/?/index.js
jsservice
: js服务搜索路径,例如:js/demo/service/?.js;js/demo/service/?/main.js;js/skynet_ts/ts/service/?.js;js/skynet_ts/ts/service/?/main.js
- 启动js服务
skynet.call(".launcher", "lua" , "LAUNCH", "snjs", "test")
- 使用skynet消息接口
import * as skynet from "skynet"
skynet.start(async () => {
skynet.dispatch("lua", async (context: skynet.CONTEXT, cmd: string, ...params: any) => {
console.log(cmd);
});
skynet.register(".test")
})
- 使用deno接口
import * as skynet from "skynet"
import * as uuid from "std/uuid/mod"
skynet.start(async () => {
let data = await fetch("https://www.baidu.com");
console.log(data);
console.log(WebSocket);
console.log(uuid.v4.generate());
})
apt install autoconf autogen gcc g++ python openssl libssl-dev pkg-config build-essential libglib2.0-dev npm
- Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
- TypeScript
npm install typescript -g
- 配置http代理 编译google v8 例:
export https_proxy=192.168.163.1:10809
export http_proxy=192.168.163.1:10809
- clone && make
windows编译 比较麻烦可以考虑编译好的文件
- 环境配置
set https_proxy=192.168.163.1:10809
set http_proxy=192.168.163.1:10809
* `msys2_shell.cmd` 开启 `set MSYS2_PATH_TYPE=inherit`
- 编译
- 执行
msys2_shell.cmd
git clone https://github.com/lsg2020/skynet_ts_demo
- 编译skynet mingw版本
cd skynet_ts_demo && make -f win.mk
- 编译skynet_ts windows版本
cd skynet_ts && set V8_FROM_SOURCE=1 && cargo build --release && copy target\release\sndeno.dll ..\build\cservice\snjs.so /y
- 执行
- 测试
.\build\skynet config