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

银川网站网站建设橘子皮主题wordpress

银川网站网站建设,橘子皮主题wordpress,四平网站建设公司,长安网站建设制作公司其实雪花算法比较简单#xff0c;可能称不上什么算法就是一种构造UID的方法。 点1#xff1a;UID是一个long类型的41位时间戳#xff0c;10位存储机器码#xff0c;12位存储序列号。 点2#xff1a;时间戳的单位是毫秒#xff0c;可以同时链接1024台机器#xff0c;每台…其实雪花算法比较简单可能称不上什么算法就是一种构造UID的方法。 点1UID是一个long类型的41位时间戳10位存储机器码12位存储序列号。 点2时间戳的单位是毫秒可以同时链接1024台机器每台机器每毫秒可以使用4096个序列好我们会给生成id上一个同步锁阻塞住其他线程的访问。 点3利用掩码我们可以检测序列是否溢出如果溢出的话就强制等待到下一毫秒。 /*** author hardstone* since 29 July 2023(1690603385473)*/ public class SnowFlakes {//开始的时间戳private final long start 1690603385473L;//机器标识长度5位private final long machineIdBits 5L;//机器集群标识长度5位private final long centerIdBits 5L;//序列标识所占位数12位private final long sequenceBits 12L;//机器标识最大值private final long maxMachineId -1L ^ (-1L machineIdBits);//机器集群标识最大值private final long maxCenterId -1L ^ (-1L centerIdBits);//序列标识的最大值private final long sequenceMask -1L ^ (-1L sequenceBits);//机器标识左移长度private final long machineIdShift sequenceBits;//机器集群标识左移长度private final long centerIdShift sequenceBits machineIdBits;//时间戳左移长度private final long timeStampIdShift sequenceBits machineIdBits centerIdBits;//序列Idprivate long sequence 0L;//机器Idprivate long machineId;//机器集群Idprivate long centerId;//时间戳private long lastTimeStamp -1L;public SnowFlakes(long machineId, long centerId) {if (machineId maxMachineId || machineId 0) {throw new IllegalArgumentException(String.format(WorkerId should be between 0 and 31));}if (centerId maxCenterId || centerId 0) {throw new IllegalArgumentException(String.format(CenterId should be between 0 and 31));}}public synchronized long nextId() {long timeStamp System.currentTimeMillis();//时间回滚现象if (timeStamp lastTimeStamp) {throw new RuntimeException(String.format(Time gone backwards!));}if (lastTimeStamp timeStamp) {sequence (sequence 1) sequenceMask;//如果序列分配完了if (sequence 0) {timeStamp getNextMillis(lastTimeStamp);}} else {sequence 0L;}lastTimeStamp timeStamp;return ((timeStamp - start) timeStampIdShift)| (centerId centerIdShift)| (machineId machineIdShift)| sequence;}protected long getNextMillis(long lastTimeStamp) {long timeStamp System.currentTimeMillis();while (timeStamp lastTimeStamp) {timeStamp System.currentTimeMillis();}return timeStamp;}public static void main(String[] args) {System.out.println(new SnowFlakes(0, 0).nextId());} }
http://www.dnsts.com.cn/news/93913.html

相关文章:

  • 搜多多搜索引擎入口星沙网站优化seo
  • 网站建设工作方案范文如何做自己的网站百度推广
  • 制造动漫网站开发目的免费网站统计代码
  • 珠海企业网站建设企业如何建官方网站
  • wpf做的网站易思网站管理系统收费
  • 印刷公司网站模板月租网站空间
  • 沧州网站制作报价长春市经济开发区人才网
  • 益阳网站建设详细教程wordpress 修改评论函数
  • 文化馆网站建设意义开发网站的可行性
  • 竞价托管代运营seo快速上排名
  • 第三方网站建设crm管理系统
  • 鹰潭网站建设外链交换平台
  • 百度云怎么做网站情感营销经典案例
  • 河南做网站送记账网站常用颜色
  • 如何创建网站的过程视频相亲网站开发成本
  • DW怎么做招聘网站网站编辑做图片用什么
  • 三 加强门户网站等新媒体建设网站结构怎么分析
  • wordpress下载网站学计算机的出路
  • 资源优化排名网站北海网站建设网络公司
  • 做机械的有什么网站网站开发模块分类
  • 东阳网站推广抖音营销推广
  • 网站标题没有排名中企动力做网站收费标准
  • 网站建设与制作段考试题如何进入公司网站后台
  • ssp网站怎么做网站单页面可以做302跳转吗
  • 校园招聘网站策划书免费注册网站免登录
  • 网站自己做余额充值自动扣款wordpress if分类
  • 中国建设银行公积金网站首页重庆网站推广公司
  • 旅游网站建设方案背景描述淘宝seo具体优化方法
  • 网站批量修改医院网站的建设
  • 淮安建设工程协会网站查询福州网站建设制作首选荧光信息