我的提交概述

终端内一个非常简单的聊天应用程序。该应用程序使用 pubsub 将消息发布到其他频道,使用 Golang 实现,这是我最近学习的编程语言。

投稿类别:

  • 古怪的通配符

使用的语言

  • Go 1.18 用于开发应用程序。

  • 使用bubbletea框架制作终端ui。

链接到代码

GitHub logo扣篮/tchat

终端聊天应用

带有 Golang 和 Redis Pub/Sub 的终端内的简单聊天应用程序。

工作原理

数据的存储方式:

  • 聊天数据存储为key

  • 对于每个频道内容,channel:为前缀键,后跟频道名称。

  • 对于每条消息内容,message:为前缀键,后面是json格式的channel-namemessage-data

数据是如何访问的:

  • 下面是使用 Go Redis 访问频道消息的示例代码:

# 获取频道的消息

ctx :u003d context.Background()

iter :u003d redis.Client.Scan(ctx, 0, fmt.Sprintf("%s%s*", messagePrefix, m.channel), 0).Iterator()

var 消息 [] 字符串

对于 iter.Next(ctx) {

rawMsg :u003d iter.Val()

rawMsg \u003d strings.Replace(rawMsg, fmt

...

进入全屏模式 退出全屏模式

在 GitHub 上查看

其他资源/信息

没有任何

合作者

@dunkbing


Logo

Redis社区为您提供最前沿的新闻资讯和知识内容

更多推荐