入门指引
开放的端口及协议在start_gateway.php中更改。参见Gateway类的使用一章。
1、服务端启动成功,但是无法通讯,请检查服务器防火墙。
2、客户端只能连接Gateway端口,不要连接Register端口。
3、客户端与服务端要能保持正常通讯,需要保证客户端与服务端的通讯协议是一致的。比如服务端是websocket协议,客户端也要使用websocket协议才能通讯,否则无法通讯。
说明
一般来说开发者只需要关注Applications/YourApp/Events.php。因为所有业务代码都在这里开始的。vendor目录为框架目录,开发者不要改动,也不用去理解。
其它start_gateway.php start_businessworker.php start_register.php分别是进程启动脚本,开发者一般不需要改动这三个文件。三个脚本统一由根目录的start.php启动。
例如下面是一个简单的聊天室示例
Events.php中定义5个事件回调方法,
- onWorkerStart businessWorker进程启动事件(一般用不到)
- onConnect 连接事件(比较少用到)
- onMessage 消息事件(必用)
- onWorkerStop businessWorker进程退出事件(几乎用不到)
其中消息事件onMessage是必须的,其它事件回调可以不实现。
start_gateway.php
start_gateway.php为gateway进程启动脚本,主要定义了客户端连接的端口号、协议等信息,具体参见 Gateway类的使用一节。
客户端连接的就是start_gateway.php中初始化的Gateway端口。
start_businessworker.php为businessWorker进程启动脚本,也即是调用Events.php的业务处理进程,具体参见 BusinessWorker类的使用一节。