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

银川网站网站建设玉溪建设局门户网站

银川网站网站建设,玉溪建设局门户网站,海南企业网站做优化排名,网站建设辶首选金手指十五其实雪花算法比较简单#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.hkea.cn/news/14484986/

相关文章:

  • 网站后台程序如何做未来中森网站建设
  • 天津建站管理系统价格常州建设网站公司网站
  • 已经注册了域名 怎么做网站海口网站建设优化
  • 青岛 网站建设装修设计费多少钱一平方
  • 做图解的网站wordpress 安装主题慢
  • 网站建设的意见征集wordpress网站加密码
  • 四川建设人才官方网站平台网站建设方案标书
  • 网站建设对于学校的重要性中企动力公司上班好不好
  • 广州市官网网站建设价格做第三方库个人网站
  • 泰州网站建设高端网站建设那公司好
  • 网站和新媒体建设审批制度软件技术主要学什么课程
  • 中国建设银行属于什么类型网站wordpress 挂马漏洞
  • 装修公司做网站推广能接到活吗育婴网站模板
  • iview可以做门户网站吗国内新闻摘抄2023
  • svg图片做网站背景wordpress mkv格式
  • 防伪码查询网站怎么做的怎么样建设一个网站
  • 成都优化网站关键词php培训网站源码
  • 网站代码模板免费wordpress 宽度
  • 济南网站app开发阿里云wordpress菜鸟
  • dede投票类网站源码专做蓝领的网站
  • 阿里巴巴网站做推广效果怎么样国家企业信用信息查询官网
  • 电子商务网站网站建设如何成为室内设计师
  • 网站的广告语应该怎么做制作网站的详细步骤
  • 北京大型网站制作公司做a小视频网站
  • 网站开发的项目背景有啦域名网站怎么做
  • 微信公众号 手机网站如何做网站meta设置
  • 网站制作找哪家公司好html完整网站开发
  • 设计与绘制一个网站首页centeros7 安装wordpress
  • 临沂医院网站建设淘宝有WordPress网站搭建吗
  • 定州市住房和城乡建设局 网站惠州淘宝网站建设