kaixuan1115 / notes

笔记收录
6 stars 0 forks source link

Quick-pomelo使用中的坑 #19

Closed xiaokaixuan closed 5 years ago

xiaokaixuan commented 5 years ago

尚未实施

  1. 增加缓存服务 cache, 管理大列表等数据。
  2. 所有逻辑服添加以下类
    Roler类 -> 操作memdb玩家数据或角色相关数据 -> 某些数据需要RPC同步到cache服务。
    RolerManager类 -> 管理Roler(包括查找,新建,删除等)。
    DataManager类 -> 管理多角色共用或与角色无关数据 -> 某些数据需要RPC同步到cache服务。
  3. MongoDB避免使用子文档存储,采用查分单条+索引存储。
xiaokaixuan commented 5 years ago

已实施

  1. 后端增加单独的缓存服务cacheserver,用于缓存背包数据,并加入缓存淘汰机制避免内存占用过大。
  2. 所有获取背包物品列表的请求由原来的查询memdb改为RPC调用缓存服务。
  3. 所有进程增加背包管理类BagManager,用于直接修改单个或多个物品,去除RPC到大厅操作背包。然后调用RPC同步到缓存。
  4. 对于特定物品触发事件或统计,由BagManager判定后用RPC通知相关进程做操作。
xiaokaixuan commented 4 years ago

VSCode用户配置增加JSHint:

"jshint.options": {
    "esversion": 6,
    "node": true,
    "unused": true, // 变量未被使用
    "-W018": true,  // 忽略!(xx >= 0)警告
    "-W033": true,  // 忽略少分号警告
    "-W069": true,  // ['name']和.name互通
    "-W093": true,  // return a = 1;同时赋值
    "-W124": true,  // function* (){}缺少yield
    "-W004": true,  // var重复声明警告
    "-W083": true   // 循环内定义函数
}