来源: 最后更新:22-10-21 12:05:45
1、获取游戏公告,也放在web服务中。公告一般是游戏登陆的时候向服务器获取一次。把它放在web服务器中,与业务逻辑分离的好处是,当业务逻辑服务器维护或更新的时候,不影响用户的登陆,和获取公告,这样用户体验会好一些。
2、创建用户唯一的id,因为棋牌类游戏服务器是世界服,无分区,所以用户的id必须是全局唯一的。可以利用redis的incr方法,原子的递增,如果不想被别人根据userid的递增推算出有多少注册用户,递增的梯度可以随机,比如每次递增的值从1到1024中随机一个。
3、创建房间,当房间主创建房间时,房间的id需要在任何台服务器上可以查询到,所以创建房间成功后,房间id要存储在共享内存redis中,每个房间id对应一个房间所在的ip地址或服务器id.这样,当有用户要进入房间,在查询房间id时,可能判断这个房间是否和自己登陆的游戏服务器相同。
4、查找加入房间。根据房间id查询房间,查找到房间后,获取房间所在的ip地址或服务器id,如果发现和自己所登陆的服务器一样,直接可以加入房间。
5、玩家同屏玩家同屏是棋牌游戏中的一个重点,对于做过那些大型的arpg,或mmo游戏的程序员来说,这并不是什么难事。因为同屏就是服务器对客户端的消息进行转发。
帮同学化妆最高日入近千 帮学生化妆帮同学化妆最高日入近千?浙江大二女生冲上热搜,彩妆,妆容,模特,王
2023吉林省紧缺急需职业工种目录政策解读 2024张杰上海演唱会启东直通车专线时间+票价 马龙谢幕,孙颖莎显示统治力,林诗栋紧追王楚钦,国乒新奥运周期竞争已启动 全世界都被吓了一跳 全世界都被吓了一跳是什么歌