20200521

各种注解:
@Config(""), @Model(""), @Cache(""), @Remote(""), @Admin(""), @Dao(""), 可以多注解同时使用

hall模块:主要使用http请求,使用IOB,不停服。
(1)使用http(客户端请求) -> cmds ->@Command ,推送数据使用 ConnDataUtils()。
(2)使用remote(游戏内部接口,各个模块间调用) -> @Remote(model/function),推送数据使用 RemoteDataUtils()。http:(内部)/remote/…
(3)@Admin命令(管理后台使用,Jfinal的后台接口。http:()/admin/。数据推送使用AdminDataUtils().
Remote或者Admin使用的http链接不用手动,使用RemoteModel.api()或者AdminModel.api()方法,可以自动拼接url。
注:使用http请求,加大响应的数据量,减少客户端的请求。
wolf模块:使用 ws;
chat模块:使用 ws;

model和cmds模块对于数据的操作全部是直接用cache层,cache根据业务逻辑选择性的使用dao层操作MySQL。 cache ->使用 redis(所有缓存都要带过期时间) 和 内存(要坚决防止内存泄漏),缓存至Redis中的条件:访问次数多,并且容易缓存。

各种访问时间的控制范围:
内存 1ms
Redis: 1ms - 3ms;
MySQL: 5ms - 20ms;

各种操作的技巧:
insert -> mysql (直接插入 MySQL)
update -> delete redis
update mysql
delete redis (update的时候 双删机制)
select -> 先查询 cahce, cache中不存在的话,在查询MySQL,同时存入cache
delete -> 先删除 MySQL,再删除 cache (先删除最慢的)
update的时候不需要更新至缓存或者内存,只用删除即可。

小技巧:项目出现红点报错,jar包问题,可以从仓库中删除jar包,在pom.xml文件中随便输入空格,再删除并保存,则可以重新下载对应的jar包。

你可能感兴趣的:(java)