当前位置: 首页 > news >正文

在深圳做网站平台需要什么备案树莓派3 WordPress

在深圳做网站平台需要什么备案,树莓派3 WordPress,jsp手机销售网站的建设,制作一个企业网站多少钱系列博客目录 文章目录 系列博客目录WhyRedis自增ID策略 Why 我们需要设置全局唯一ID。原因:当用户抢购时,就会生成订单并保存到tb_voucher_order这张表中,而订单表如果使用数据库自增ID就存在一些问题。 问题:id的规律性太明显、…

系列博客目录


文章目录

  • 系列博客目录
  • Why
  • Redis自增ID策略


Why

我们需要设置全局唯一ID。原因:当用户抢购时,就会生成订单并保存到tb_voucher_order这张表中,而订单表如果使用数据库自增ID就存在一些问题。
问题:id的规律性太明显、受单表数据量的限制。所以在自己的项目中,针对上传的数据的ID的生成也可以使用全局唯一ID。表中有ID,属性类型(文本、音频、图像)以及存储位置,文件名(文件名由ID+原始文件名作为后缀组成)。
多种ID比如用户ID,订单ID。

全局ID生成器,是一种在分布式系统下用来生成全局唯一ID的工具,一般要满足下列特性:高可用、唯一性、高性能、递增性、安全性。

Redis自增ID策略

为了增加ID的安全性,我们可以不直接使用Redis自增的数值,而是拼接一些其它信息:
在这里插入图片描述

ID的组成部分:

  • 符号位:1bit,永远为0
  • 时间戳:31bit,以秒为单位,可以使用69年
  • 序列号:32bit,秒内的计数器,支持每秒产生2^32个不同ID
package com.hmdp.utils;import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;import java.time.LocalDateTime;
import java.time.ZoneOffset;
import java.time.format.DateTimeFormatter;@Component
public class RedisIdWorker {/*** 开始时间戳*/private static final long BEGIN_TIMESTAMP = 1640995200L;/*** 序列号的位数*/private static final int COUNT_BITS = 32;private StringRedisTemplate stringRedisTemplate;public RedisIdWorker(StringRedisTemplate stringRedisTemplate) {this.stringRedisTemplate = stringRedisTemplate;}public long nextId(String keyPrefix) {// 1.生成时间戳LocalDateTime now = LocalDateTime.now();long nowSecond = now.toEpochSecond(ZoneOffset.UTC);long timestamp = nowSecond - BEGIN_TIMESTAMP;// 2.生成序列号// 2.1.获取当前日期,精确到天String date = now.format(DateTimeFormatter.ofPattern("yyyy:MM:dd"));// 2.2.自增长long count = stringRedisTemplate.opsForValue().increment("icr:" + keyPrefix + ":" + date);// 3.拼接并返回return timestamp << COUNT_BITS | count;}
}

使用的示例代码如下:

// 7.创建订单
VoucherOrder voucherOrder = new VoucherOrder();
// 7.1.订单id
long orderId = redisIdWorker.nextId("order");
voucherOrder.setId(orderId);
// 7.2.用户id
voucherOrder.setUserId(userId);
// 7.3.代金券id
voucherOrder.setVoucherId(voucherId);
save(voucherOrder);// 7.返回订单id
return Result.ok(orderId);

每天一个key,方便统计订单量
ID 的构造是 :时间戳 + 计数器

http://www.yayakq.cn/news/92806/

相关文章:

  • 电子商务网站建设的技术综述论文wordpress主题模板收费会员系统
  • 德州建设银行兑换网站把自己做的网站开放到外网
  • 做外贸没有网站可以吗内部网站建设方案
  • 农业生态园电商网站建设响应式衣柜网站
  • 龙岩网站建设极速建站网站线框
  • PHP网站开发常用函数wordpress 国内最好主题
  • 试用网站如何做河北恒山建设集团网站
  • 网站+做内容分发资格网站要怎么做关键词
  • 一个网站主机多少钱一年全球做网站的公司排名
  • 网站左下角命名怎么做aso优化费用
  • 高端网站配色南京每月做社保明细在哪个网站查
  • 网站策划用培训吗深圳网站制作公司报价单
  • 网站大数据怎么做的广州手机app软件开发
  • 一个空间怎么放2个网站营销型网站的功能
  • 大连企业网站建设定制不为建盏公司简介
  • 内推网站网站备案取消接入
  • 做传销网站微信公众号微网站怎么建设
  • 珠海品牌机械网站建设注册了域名怎样做网站
  • 粮食门户网站建设方案wordpress主题缺少样表
  • 抽奖网站怎么做青岛网站建设方案优化
  • 建立网站准备工作流程一天必赚100元的游戏
  • 重庆品牌网站建设公司wordpress 4.7.8
  • 影视网站建设要多少钱河北建设工程信息网辅助系统
  • 网站服务公司特点资讯网站开发
  • 网站分页导航诚信网站费用
  • 移动端网站建设的意义企业推广品牌
  • 找项目网站WordPress整合phpems
  • 站外推广渠道有哪些网页设计总结5000字
  • 有哪些网站可以做设计挣钱电商网站设计欣赏
  • 英语网站的建设需要公司网站用服务器