为了账号安全,请及时绑定邮箱和手机立即绑定

k七国际网站,博彩网注册送现金

2018.11.02 09:11 2074浏览

前言

本文地址:http://www.bgel.cn/article/258458
文章摘要:k七国际网站,博彩网注册送现金,在澳门玩百家乐,扎金花棋牌游戏官网

今天分享的是MySelf自己以前工作项目中的一个模块实例实现的思路还有流程,在这过程中也是遇到了很多问题,能过顺利解决也是团队沟通的结果。

项目模拟背景:假设我们有一个软件平台,我们的线下产品是一些探测器(传感器)硬件,它们需要在一定范围下定时上传数据给服务器,而且服务器可能还需要对他们下达命令(针对单个),或者广播指令(针对全部),且可能是在管理员的后台下令,也可能是在用户的小程序(APP)等前端应用下令,这样我们就需要一个双向,并发,异步的通信模块,且产品量大,需要考虑到连接池的状态,所以就考虑到了线程的作用。对于连接的监听端口,最好只能一个。

好,通过以上模拟场景,我们在构建思路时,需要将主要的核心点给理解清楚: 1、单端口多连接 2、双向、并发、异步 3、下令、广播 4、数据对数据库的写操作 5、对链接的实例做安全排查 6、系统自保功能(不是所有人都能链接)

整理了这几个点后,由于项目开始时选用了SSM的底层框架(后期迁移Spring Boot)所以需要考虑到最简易的模块化配置方式,在搜罗了几天的开源项目后,我决定使用Netty来帮助我们解决这一问题。

架构

接下来我直接进入主题,由于平时工作时间长(9小时,研究2小时)所以写技术分享时,可能不会所有点都细讲。

我们先看看我画的项目架构图,算是一个流程吧。
图片描述恰如SSM也是运行在Tomcat容器的一个Server项目,我在web.xml添加了一个新的监听器,监听器将启动Netty的线程服务启动类,其将运行Netty的主配置类,BossGroup是处理连接进来的链接实例,WorkerGroup是工作运行的链接,我们对业务的处理就放在TCPServerHandler里面,我对每个实例做了唯一ID的存储,这样Service层可以通过ID获取到链接实例,然后进行下令或广播指令,同时TCPServerHandler也有数据库写的操作,这要针对不同的指令头参数而言。

项目目录

图片描述以上是我们项目的目录,这是引入的关于netty的包。

有关于通信的协议定义还有安全性,这个要看你们项目的业务或要求吧,我们项目采用的是:帧头+ID+指令类型+指令内容+CRC16+帧尾 服务器和单片机那边都以这种协议做处理,保证了数据的安全性。

图片描述最后,我截图了测试服务器的日志,可以看到连接的实例ID 还有API下令的广播测试事件。

GitHub

本项目的功能已经整合为开源项目,扎金花棋牌游戏官网
项目介绍:【预计终版仿腾讯IM项目,目前迭代中…】基于Netty4与SpringBoot,聊天室WebSocket(文字图片)加API调用Netty长链接执行发送消息(在线数、用户列表)、Iot物联网-MQTT协议、TCP/IP协议单片机通信,异步存储聊天数据

点击查看更多内容

本文原创发布于慕课网 ,转载请注明出处,谢谢合作

10人点赞

若觉得本文不错,就分享一下吧!

评论

相关文章推荐

正在加载中
意见反馈 帮助中心 APP下载
官方微信
扎金花棋牌游戏官网

举报

0/150
提交
取消
网站地图 亚洲城电脑版 嘉年华国际娱乐app 利澳娱乐 国足世界排名最新
色色网站 龙8-APP下载 世界国家足球队排名 飞行走兽老虎机
大班bet登陆 a8娱乐官网 新利棋牌官网 天天娱乐手机版
钱柜娱乐下载 天天娱乐 优乐国际娱乐 奥斯卡娱乐线路检测
利澳娱乐 全世界足球排名 w88优德 app 下载龙8app
www.76yn.cn m.jkbxcc.cn wap.faluinn.cn www.73fg.cn m.r99p9zj.cn
www.fabytmw.cn www.h66j.cn wap.kwbled.cn oodnf.tw www.qiaang.cn
wap.bzdok.tw m.fRIWTVK.tw www.hezhangonline.cn wap.f4G048Z.tw wap.lvlr99j.cn
shangluool.cn m.f7TYSYR.tw www.f10C9EP.tw wap.fMULCYK.tw uoepa.tw