聊天室 基于 Redis+Golang

需求很简单,如下:

  1. 连接服务器
  2. 查看当前的有哪些聊天室
  3. 加入某一个聊天室
    • 如果没有该聊天室,则自动创建
    • 如果之前有加入聊天室,则自动退出
  4. 发布消息(格式为 21:09:52 XXX: hello world)

最终实现如下:

欢迎,请问您是?
>>> xue
请输入服务器地址,默认为127.0.0.1:6379
>>>
未输入内容,使用默认地址
连接服务器成功
>>> help

Commands:
  clear      clear the screen
  exit       exit the program
  help       display help
  join       加入某一个聊天房间
  list       列出当前聊天房间
  say        讲一句话

>>> list
获取成功,当前房间: 0
>>> join room1
加入成功
>>> l01:34:43  xue加入
>>> list
获取成功,当前房间: 1
房间: room1
>>> say hello
>>> 01:34:54  xue:hello

可以加入多个客户端,并进行聊天

欢迎,请问您是?
>>> zhao
请输入服务器地址,默认为127.0.0.1:6379
>>>
未输入内容,使用默认地址
连接服务器成功
>>> list
获取成功,当前房间: 1
房间: room1
>>> join room1
加入成功
>>> 01:37:58  zhao加入
>>>
>>> 01:38:34  xue:hi zhao
>>>
>>> say hi,xue
>>> 01:38:45  zhao:hi,xue
>>> 01:38:55  xue离开

github地址:https://github.com/xuezhaojun/learn_redis_with_go/tree/master/pub_sub/chat_room/cmd/client

go build 编译后, 直接执行二进制即可

如果觉得有帮助,希望赏个star哈~

你可能感兴趣的:(golang,redis,chatroom,聊天室,pubsub,golang)