远程rpc调用

关联文件

最常用API

  • M:new(svr_name,module_name,instance_name) 创建调用对象。
    参数:
    * svr_name(string) 访问节点名称。
    * module_name(string) 模块名称,需要send或者call通信的模块名称(相当于一级索引)。
    * instance_name(string) 实例名称,它是模块的二级分类(相当于二级索引)。
    返回值:
    1. client(table) rpc客户端对象。

  • M:instance(svr_name,module_name,instance_name) 使用单例访问对象(很多时候并不需要创建管理rpc调用对象)。
    参数:
    * svr_name(string) 访问节点名称。
    * module_name(string) 模块名称,需要send或者call通信的模块名称(相当于一级索引)。
    * instance_name(string) 实例名称,它是模块的二级分类(相当于二级索引)。
    返回值:
    1. client(table) rpc客户端对象。

  • M:one_balance_send(…) 用简单轮询负载均衡给单个结点的module_name模板用balance_send的方式发送消息
    参数: server接受的参数。
    返回值: 无。

  • M:one_balance_call(…)one_balance_send一致,唯一区别是使用call的方式发消息。

  • M:one_mod_send(…) 用简单轮询负载均衡给单个结点的module_name模板用mod_send的方式发送消息。
    参数: server接受的参数。
    返回值: 无。

  • M:one_mod_call(…)balance_send一致,唯一区别是使用call的方式发消息。

  • M:one_send_by_name(…) 通过skynet.regiter(name)注册的别名方式调用,module_name填对应别名。

  • M:one_call_by_name(…) 通过skynet.regiter(name)注册的别名方式调用,module_name填对应别名。

  • M:one_broadcast(…) 用简单轮询负载均衡给单个结点的module_name模板用broadcast的方式发送消息。

  • M:one_broadcast_call(…) 用简单轮询负载均衡给单个结点的module_name模板用broadcast_call的方式发送消息。

  • M:byid_balance_send(…) 用svr_id映射的方式给单个结点的module_name模板用balance_send的方式发送消息。

  • M:byid_balance_call(…) 用svr_id映射的方式给单个结点的module_name模板用balance_call的方式发送消息。

  • M:byid_mod_send(…) 用svr_id映射的方式给单个结点的module_name模板用mod_send的方式发送消息。

  • M:byid_mod_call(name) 用svr_id映射的方式给单个结点的module_name模板用mod_call的方式发送消息。

  • M:byid_send_by_name(…) 通过skynet.regiter(name)注册的别名方式调用,module_name填对应别名。

  • M:byid_call_by_name(…) 通过skynet.regiter(name)注册的别名方式调用,module_name填对应别名。

  • M:byid_broadcast(name) 用svr_id映射的方式给单个结点的module_name模板用broadcast的方式发送消息。

  • M:byid_broadcast_call(name) 用svr_id映射的方式给单个结点的module_name模板用broadcast_call的方式发送消息。

  • M:all_balance_send(…) 给所有结点的module_name模板用balance_send的方式发送消息。

  • M:all_balance_call(…) 给所有结点的module_name模板用balance_call的方式发送消息。

  • M:all_mod_send(…) 给所有结点的module_name模板用mod_send的方式发送消息。

  • M:all_mod_call(name) 给所有结点的module_name模板用mod_call的方式发送消息。

  • M:all_send_by_name(…) 通过skynet.regiter(name)注册的别名方式调用,module_name填对应别名。

  • M:all_call_by_name(…) 通过skynet.regiter(name)注册的别名方式调用,module_name填对应别名。

  • M:all_broadcast(name) 给所有结点的module_name模板用broadcast的方式发送消息。

  • M:all_broadcast_call(name) 给所有结点的module_name模板用broadcast_call的方式发送消息。

  • M:one_balance_send_by_name(…)

  • M:one_balance_call_by_name(…)

  • M:one_mod_send_by_name(…)

  • M:one_mod_call_by_name(name)

  • M:one_broadcast_by_name(name)

  • M:one_broadcast_call_by_name(name)

  • M:byid_balance_send_by_name(…)

  • M:byid_balance_call_by_name(…)

  • M:byid_mod_send_by_name(…)

  • M:byid_mod_call_by_name(name)

  • M:byid_broadcast_by_name(name)

  • M:byid_broadcast_call_by_name(name)

  • M:all_balance_send_by_name(…)

  • M:all_balance_call_by_name(…)

  • M:all_mod_send_by_name(…)

  • M:all_mod_call_by_name(name)

  • M:all_broadcast_by_name(name)

  • M:all_broadcast_call_by_name(name)

不常用API

  • M:set_svr_id(…) 指定服务id。
  • M:set_instance_name(…) 指定访问实例名
  • M:set_mod_num(…) 指定mod映射数

使用注意点:

服务start之前不能使用rpc调用,因为服务还没有准备好,如果这样使用会抛出错误。


远程rpc调用
https://huahua132.github.io/2024/01/07/skynet_fly_api/rpcf/
作者
huahua132
发布于
2024年1月7日
许可协议