pinus学习

Posted dmc-nero

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了pinus学习相关的知识,希望对你有一定的参考价值。

本篇学习:

  1、route压缩

  2、Protobuf压缩

 

开始学习:

  1、route压缩

  {

    概念:

      技术图片

      1、使用route压缩的目的,节省网络资源。

      2、压缩原理:

        服务端:扫描所有handler。

        客户端:在config/dictionary.json声明所有客户端使用的路由。

        最后将所有客户端和服务器路由信息映射为一个小整数。

      3、目前路由信息压缩仅支持hybridconnector的方式,不支持sioconnector的方式。

      

    使用:

      1、配置 game-serverdistconfigdictionary.json 文件。

        技术图片

        在服务端的 game-serverdistconfigdictionary.json 文件中,把路由填上即可。

        表示给 onAdd 这个路由,添加路由压缩功能。没填写的,表示不启用。

 

      2、配置 app.ts 文件。

        技术图片

        app.configure()这个API有三个参数:

          第一个参数:表示给开发环境还是生产环境配置。

          第二个参数:给哪个服务器设置配置。如果不填写,则给所有服务器设置配置。

          第三个参数:具体配置。

  }

  2、Protobuf压缩

  {

    概念:

      技术图片

      1、用于给通信消息压缩用的,比json更小。

      2、原生的protobuf编译需要多个步骤,想当消耗性能。

      3、pinus将protobuf实现成json的格式就可以配置,相当方便。

      4、服务端只需配置 config/serverProtos.json 即可。

      5、客户端只需配置 config/clientProtos.json 即可。

 

    使用:

      首先,先配置服务端 config/serverProtos.json:

        技术图片

        由于服务端推送的消息只有一个user字段,所以只写一个即可。

        总之:

          服务端推送给客户端的消息格式一定要正确。

          比如服务端通过 onAdd 路由 推送给客户端的消息格式是:

          { user:"" }

          那么,就要配置成:

          "onAdd":{
            "required string user":1
           }

      再次,配置客户端 config/clientProtos.json:

        技术图片

        这边客户端的配置也要注意:

          客户端通过路由,向服务端发起请求时,附带的消息格式是什么,就要配置什么。

          如:    

            1、客户端通过 gate.gateHandler.entry 这个路由向服务端发起请求。

            2、且同时附带了 {uid:""} 格式的数据。

            3、那么,就要写成这种格式技术图片

      最后,开启 protobuf:

        技术图片

  }

以上是关于pinus学习的主要内容,如果未能解决你的问题,请参考以下文章

pinus学习

pinus 前端服务器向后端服务器发送消息

pinus 启动 server "xxxx" "xxx" register master failed问题

《机器学习实战》-机器学习基础

机器学习系列1-学习资料和学习路线

怎么快速入门深度学习