iohao / ioGame

无锁异步化、事件驱动架构设计的 java netty 网络编程框架; 轻量级,无需依赖任何第三方中间件或数据库就能支持集群、分布式; 适用于网络游戏服务器、物联网、内部系统及各种需要长连接的场景; 通过 ioGame 你可以很容易的搭建出一个集群无中心节点、集群自动化、分布式的网络服务器;FXGL、Unity、UE、Cocos Creator、Godot、Netty、Protobuf、webSocket、tcp、socket;java Netty 游戏服务器框架;
http://game.iohao.com
GNU Affero General Public License v3.0
904 stars 201 forks source link

请问如何在action处理业务的方法中拿到当前的逻辑服对象? #163

Closed LiXiangpan closed 1 year ago

LiXiangpan commented 1 year ago

RT

iohao commented 1 year ago

https://www.yuque.com/iohao/game/zz8xiz#biYvJ

可以通过动态属性得到

@ActionController(1)
public class HelloAction {
    LongAdder inc = new LongAdder();

    @ActionMethod(1)
    public void inc(FlowContext flowContext) {
        BrokerClientContext brokerClientContext = flowContext.option(FlowAttr.brokerClientContext);
    }
}
LiXiangpan commented 1 year ago

谢谢~顺便再问下,假如逻辑服希望缓存一些DB数据,在action处理请求时直接从内存中取到这些数据,请问这种缓存数据放在哪里比较合适呢?

iohao commented 1 year ago

谢谢~顺便再问下,假如逻辑服希望缓存一些DB数据,在action处理请求时直接从内存中取到这些数据,请问这种缓存数据放在哪里比较合适呢?

简单的使用 map 就行。

或选择专业的缓存库

  1. Caffeine
  2. cache2k
  3. ehcache
  4. JetCache
iohao commented 1 year ago

76

框架近期会推出一个简单的游戏对外服缓存,有兴趣可以提前了解一下。