文章来源于网络收集而来,版权归原创者所有,如有侵权请及时联系!
11.2 数据结构
后台服务接口与投放活动接口涉及关系型数据库 MySQL 与非关系型数据库 Redis。本节主要设计接口需要的数据结构。
11.2.1 MySQL 数据结构
根据需求描述,后台管理需要有一个促销活动的详情信息表。新建表 promotion 的结构如表 11.1 所示。
表 11.1 promotion 表
建表语句如下:
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 表结构
赠送奖品记录表采用 String 结构,如表 11.3 所示。
表 11.3 String 表结构
每个设备领取成功后,置为 1。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论