java版QQ斗地主Socket心跳机制实现思路

摘要: 小项目开源地址:https://gitee.com/ansatsing/QQLandlords 简要概述: 客户端登录成功后,就持续每隔3秒向服务器端发送心跳包!服务器端每收到一次心跳包就更新lastReveHeatTime的变量值;服务器在启动的时候就开启 一个只针对入座玩家的监听线程,这个线程每 阅读全文
posted @ 2017-11-14 15:56 安清 阅读(1284) 评论(0) 推荐(0) 编辑

socket长连接_短连接_心跳机制

摘要: 短连接:建立连接,发送数据包,关闭连接长连接:建立连接,发送数据包,发送心跳包,发送数据包,发送心跳包,发送心跳包。。。。。。 所以又频繁的数据收发的话,短连接会频繁创建TCP连接,而对于长连接,则始终用的是同一个TCP连接 心跳: socket模拟网页的报文连接某个网站,创建tcp的socket后 阅读全文
posted @ 2017-11-13 23:31 安清 阅读(1209) 评论(0) 推荐(0) 编辑

QQ斗地主项目简介

摘要: 整体采用C/S架构,即服务器端/客户端!目前关系1对多关系,如果将来并发量大可能服务器会多些,但相对于客户端的数量来说服务端的数量还是微不足道的! 目前项目通信机制采用原生Socket通信机制!其实无论是b/s还是c/s底层的处理机制都一样,客户端在自己电脑进行请求操作比如输入网址然后回车或者qq输 阅读全文
posted @ 2017-11-13 23:29 安清 阅读(526) 评论(0) 推荐(0) 编辑

重构消息处理机制

摘要: 没有重构前,代码了有多处n多if()else if() 这样的代码块,这样的代码可读性非常差,而且扩展的时候需要改动这些代码块,而且要修改的类的地方也非常多!包括这些代码快的类如下: 这次重构主要用到技术java的反射机制,以及结合策略设计模式一起完成的!以后增加消息,比如qq斗地主踢人功能,那服务 阅读全文
posted @ 2017-11-08 18:14 安清 阅读(280) 评论(0) 推荐(0) 编辑

qq斗地主游戏其实和web服务器性质一样

摘要: 其实qq斗地主游戏就是类似一个实现http协议的web服务器和浏览器的集合体!我们之所以能在浏览器输入网址然后得到我们想要的内容,这是因为我们按http协议的格式对web服务器发送请求信息,然后web服务器根据你的请求信息进行解析以及处理然后向客户端发送响应信息!这种响应信息浏览器也是能读懂的!! 阅读全文
posted @ 2017-11-06 09:04 安清 阅读(867) 评论(0) 推荐(0) 编辑

模拟qq斗地主-准备发牌抢地主都是农民下一轮准备

摘要: 为什么要搞这样一个项目?? 1,满足自己的java网络多线程编程的欲望!因为之前一直都是搞web开发,服务器和客户端数据交流人家web服务器早就给你搞好了,比如tomcat,jetty...等等,其实之前脑子里就有想过--是否可以自己开发一个简单的类似tomcat的web服务器,这样做了的话,至少知 阅读全文
posted @ 2017-10-31 15:40 安清 阅读(1510) 评论(0) 推荐(0) 编辑

qq斗地主纸牌排序实现细节

摘要: 由于之前的博客被关了,今天重新开始博客了! 排牌规则:大王 >小王>2>A>K>Q>J>10>9>8>7>6>5>4>3,牌的点数一样就按牌的花色排序[红桃>方块>黑桃>棉花]! 纸牌图片存储地址格式如下图, 基于我们的图片地址是这样的存储格式,所以后面的代码都要围绕这点来展开! 数据结构: 其实也 阅读全文
posted @ 2017-10-26 11:48 安清 阅读(2513) 评论(0) 推荐(0) 编辑