返回介绍

11.2 数据结构

发布于 2025-04-21 20:58:46 字数 1598 浏览 0 评论 0 收藏

后台服务接口与投放活动接口涉及关系型数据库 MySQL 与非关系型数据库 Redis。本节主要设计接口需要的数据结构。

11.2.1 MySQL 数据结构

根据需求描述,后台管理需要有一个促销活动的详情信息表。新建表 promotion 的结构如表 11.1 所示。

表 11.1 promotion 表

168-1

建表语句如下:

CREATE TABLE `promotion` (
                `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键 id',
                `name` varchar(255) NOT NULL COMMENT '促销活动名称',
                `begin_time` int(11) DEFAULT NULL COMMENT '促销活动开始时间',
                `end_time` int(11) DEFAULT NULL COMMENT '促销活动结束时间',
                `prize` varchar(128) DEFAULT NULL COMMENT '促销活动奖品',
                `create_time` timestamp DEFAULT NULL COMMENT '创建时间',
                `update_time` timestamp DEFAULT NULL COMMENT '修改时间',
                PRIMARY KEY (`id`)
        ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8 COMMENT=
'促销活动表';

11.2.2 Redis 数据结构

Redis 作为内存存储数据库,其并发效率更高,因此在开发促销活动的微服务系统时,为了提高微服务接口的访问效率,采用 Redis 存储结构。

本项目需要两个 Redis 存储结构,一个是 Hash 结构,用来存储促销活动信息表,另一个是 String 类型结构,用于存储赠送奖品的记录表。

促销活动信息表采用 Hash 结构,其 key 格式为 promotion:{id},其中,{id}为促销活动 id,hkey 与 hvalue 如表 11.2 所示。

表 11.2 Hash 表结构

169-1

赠送奖品记录表采用 String 结构,如表 11.3 所示。

表 11.3 String 表结构

169-2

每个设备领取成功后,置为 1。

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。