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

asp.net个人网站淮南 搭建一个企业展示网站

asp.net个人网站,淮南 搭建一个企业展示网站,wordpress ftp 更新,做网站效果怎么样【雪花算法】雪花算法#xff08;Snowflake Algorithm#xff09;是Twitter开源的用于生成唯一ID的算法#xff0c;它可以在分布式系统中生成唯一的64位长整数ID。这种ID生成方式既保证了趋势递增#xff0c;又保证了在不同数据中心、不同机器上生成的ID的唯一性。 符号位Snowflake Algorithm是Twitter开源的用于生成唯一ID的算法它可以在分布式系统中生成唯一的64位长整数ID。这种ID生成方式既保证了趋势递增又保证了在不同数据中心、不同机器上生成的ID的唯一性。 符号位占用1位。 时间戳通常占用41位表示从某个固定时间点如1970年1月1日起的毫秒数。这使得生成的ID具有时间排序性。 机器ID占用10位表示生成ID的机器节点以确保不同机器生成的ID不冲突。 序列号占用12位允许同一毫秒内生成多个ID通常用于支持高并发。 public class SnowflakeIdGenerator {private static final long EPOCH 1640995200000L; // 自定义的开始时间戳2022年1月1日private static final long MACHINE_ID_BITS 10L; // 机器ID的位数private static final long SEQUENCE_BITS 12L; // 序列号的位数private static final long MAX_MACHINE_ID ~(-1L MACHINE_ID_BITS); // 机器ID最大值private static final long SEQUENCE_MASK ~(-1L SEQUENCE_BITS); // 序列号最大值private long machineId; // 当前机器IDprivate long sequence 0L; // 当前序列号private long lastTimestamp -1L; // 上次生成ID的时间戳public SnowflakeIdGenerator(long machineId) {if (machineId MAX_MACHINE_ID || machineId 0) {throw new IllegalArgumentException(Machine ID cant be greater than MAX_MACHINE_ID or less than 0);}this.machineId machineId;}public synchronized long generateId() {long timestamp System.currentTimeMillis();// 如果当前时间小于上次生成ID的时间戳说明系统时钟回拨抛出异常if (timestamp lastTimestamp) {throw new RuntimeException(Clock is moving backwards. Rejecting requests until lastTimestamp);}// 如果在同一毫秒内增加序列号if (lastTimestamp timestamp) {sequence (sequence 1) SEQUENCE_MASK; // 使用位运算确保序列号循环// 如果序列号溢出等待下一毫秒if (sequence 0) {timestamp waitForNextMillis(lastTimestamp);}} else {sequence 0L; // 如果是新的毫秒重置序列号}lastTimestamp timestamp; // 更新上次生成ID的时间戳// 组合IDreturn ((timestamp - EPOCH) (MACHINE_ID_BITS SEQUENCE_BITS)) | (machineId SEQUENCE_BITS) | sequence;}private long waitForNextMillis(long lastTimestamp) {long timestamp System.currentTimeMillis();while (timestamp lastTimestamp) {timestamp System.currentTimeMillis(); // 等待下一毫秒}return timestamp;} }【雪花算法-修正版】 /** Long: 1,000,000,000,000,000,000-9,223,372,036,854,775,807共19位* 雪花算法变种实现: {HHmmssSSS-9位}{系统号-2位}{毫秒递增seq-4位}{随机数-3位}* */ public class TiDBRandomPrimaryKeyGenerator {//机器号private String machineId;public static AtomicInteger machineIndex new AtomicInteger(0);//序列号private long sequence 0L;//上一个时间戳用于保证同一毫秒内序列号不重复。private long lastTimestamp -1L;//序列号最大值private static final long SEQUENCE_MASK 9999;private String pattern HHmmssSSS;public TiDBRandomPrimaryKeyGenerator() {machineId getInerMachineId();this.sequence (long) (Math.random() * SEQUENCE_MASK);}public synchronized long nextId() {Date currentDate new Date();String dateTime DateFormatUtils.format(currentDate, pattern);String seq getInerSequence(currentDate.getTime());String random generateRandomString(3);StringBuilder id new StringBuilder(32);id.append(dateTime).append(machineId).append(seq).append(random);return Long.parseLong(String.valueOf(id));}private synchronized String getInerSequence(long timestamp) {if (timestamp lastTimestamp) {throw new RuntimeException(Clock moved backwards. Refusing to generate id for (lastTimestamp - timestamp) milliseconds);}// 如果是同一毫秒内的时间戳if (lastTimestamp timestamp) {sequence (sequence 1) % SEQUENCE_MASK;} else {sequence 0;}lastTimestamp timestamp;return String.format(%04d, sequence);}private String getInerMachineId( ) {String machineId String.format(%02d, machineIndex.intValue());this.machineIndex.incrementAndGet();return machineId;}public static String generateRandomString(int length) {Random random new Random();StringBuilder sb new StringBuilder();for (int i 0; i length; i) {// 生成0到9之间的随机数并转换为字符char randomChar (char) (random.nextInt(10) 0);sb.append(randomChar);}return sb.toString();} }
http://www.w-s-a.com/news/207109/

相关文章:

  • 备案关闭网站wordpress 替换
  • 台州建设网站制作wordpress乱码
  • 互联网时代 网站建设做交互设计的网站
  • 网站屏蔽中文浏览器湘潭做网站广告的公司
  • 好看的单页面网站模板免费下载手机网站经典案例
  • 优秀网站建设平台建筑模板工厂价格尺寸
  • 合肥微信网站建设旅游景区网站模板
  • 一个只做百合的网站wordpress文章和博客的区别
  • 编写网站策划方案网站哪里有
  • 网站做得好的公司国家防疫政策最新调整
  • 设计优秀的企业网站做行测的网站
  • 提供做网站公司有哪些关键词优化诊断
  • 建站合肥网络公司seo免费建手机商城网站吗
  • 设计师投资做项目网站外贸网站建设工作室
  • 无聊的网站wordpress的alt属性插件
  • 个股期权系统网站开发小清新wordpress模板
  • 全中文网站开发建筑公司企业愿景文案
  • 广州网站建设正规公司建设银行信用卡中心网站
  • 哪个网站是专门做封面素材怎么制作app平台
  • 网站开发 平均工资商标注册在哪个部门申请
  • 做外贸需要自己的网站吗营销型网站建设市场分析
  • 绍兴网站制作推广wordpress 无法自动升级
  • 阿里云建站数据库用什么app制作开发费用多少
  • 中国住房和城乡建设部网站资质查询中小开网站
  • 交易所网站开发水果营销软文
  • 石家庄有什么好玩的地方2017织梦网站怎么做seo
  • wordpress项目插件seo的含义
  • 网站平台建设的作用电影宣传类网页界面设计
  • 户外网站模板国外优秀的平面设计网站
  • 家政网站怎么做网站机房建设方案