netty之微信-客户端互聊原理与实现(十七)

实战:客户端互聊原理与实现

之前写过一篇非严肃的微信单聊原理,得到广大网友的一致好评,有很多读者留言问我如何使用 Netty 来具体实现这个逻辑,学完本小节,你会发现其实很简单。

在开始本小节之前,我们先来看一下本小节学完之后,单聊的实现的效果是什么样的?

1. 最终效果

服务端

 

image.png

 

 

服务端启动之后,两个客户端陆续登录

客户端 1

 

image.png

 

 

客户端 2

 

image.png

 

 

  1. 客户端启动之后,我们在控制台输入用户名,服务端随机分配一个 userId 给客户端,这里我们省去了通过账号密码注册的过程,userId 就在服务端随机生成了,生产环境中可能会持久化在数据库,然后每次通过账号密码去“捞”。

  2. 当有两个客户端登录成功之后,在控制台输入userId + 空格 + 消息,这里的 userId 是消息接收方的标识, 消息接收方的控制台接着就会显示另外一个客户端发来的消息。

一对一单聊的本质其实就这么简单,稍加改动其实就可以用在生产环境下,下面,我们就来一起学习一下如何实现控制台一对一单聊

2. 一对一单聊原理

一对一单聊的原理我们在 仿微信 IM 系统简介 已经学习过,我们再来重温一下

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值