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

wordpress点注册后一直不出来优化快速排名教程

wordpress点注册后一直不出来,优化快速排名教程,手游推广渠道和推广方式,现在的网站怎样做推广雪花算法原理#xff08;设计原理、优缺点、如何改造它、以及应用#xff09; 雪花算法源码为什么雪花算法是 64 位#xff1f;为什么时间戳是41位#xff1f;占雪花算法的 43-47 bit 位为什么工作台最大只支持设置 31 #xff1f;工作台设置成了 63 会导致什么后果#… 雪花算法原理设计原理、优缺点、如何改造它、以及应用 雪花算法源码为什么雪花算法是 64 位为什么时间戳是41位占雪花算法的 43-47 bit 位为什么工作台最大只支持设置 31 工作台设置成了 63 会导致什么后果同机器位只支持最大 5 bit位同理数据累加位只支持最大 12 bit位雪花算法优点雪花算法缺点雪花算法改造小咸鱼的技术窝 雪花算法源码 雪花算法是一个开源的分布式生成唯一自增 Id 的这么一个工具类。主要的源码如下 /*** 常规雪花算法1-42bit位时间戳 共 42 位* 43-47 bit位数据中心ID 共 5 位最大支持 2 的 5 次方减 1 个数据中心* 48-52 bit位工作台ID 共 5 位最大支持 2 的 5 次方减 1 个工作台* 53-64 bit位累加数ID 共 12 位最大支持 2 的 12 次方*/ public synchronized long nextId() {long timestamp timeGen();if (timestamp lastTimestamp) {throw new RuntimeException(String.format(Clock moved backwards. Refusing to generate id for %d milliseconds, lastTimestamp - timestamp));}if (lastTimestamp timestamp) {sequence (sequence 1) sequenceMask;if (sequence 0) {timestamp tilNextMillis(lastTimestamp);}} else {sequence 0L;}lastTimestamp timestamp;return ((timestamp - twepoch) 22)| (datacenterId 17)| (workerId 12)| sequence; }都知道雪花算法结构如下不知道读者有没有想过 为什么雪花算法是 64 位的为什么工作机器最大为 5 位反正我第一次接触雪花算法的时候就想过这些问题。 1-42bit位时间戳 共 42 位43-47 bit位数据中心ID 共 5 位最大支持 2 的 5 次方减 1 个数据中心48-52 bit位工作台ID 共 5 位最大支持 2 的 5 次方减 1 个工作台53-64 bit位累加数ID 共 12 位最大支持 2 的 12 次方 为什么雪花算法是 64 位 因为雪花算法返回的是一个 long 类型的值换算成二进制就是最大 64 位 为什么时间戳是41位占雪花算法的 43-47 bit 位 随便一个时间戳转换成二进制就是 41 位 log.info(时间戳{} 位, Long.toBinaryString(System.currentTimeMillis()).length());且雪花算法中的时间戳左移了 22 位加上时间戳本身的 41 位加起来就有 63 位了加上第一位的符号位就是 64 位正好等于 long 类型的 64 位。完美利用 long 类型。 为什么工作台最大只支持设置 31 时间戳达到了最大值41 位时间戳 bit 位全是 1留了后 22 位全是 0由于或运算运算位有 1 就是 1所以说这个 22 位算是留给累加数、工作台、数据中心的有效左移位超过这个有效左移位就会出现生成重复 id 的情况出现。 111111111111111111111111111111111111111110000000000000000000000 工作台达到最大值 3131换二进制为11111左移22位后会得到如下一个二进制数位数不足63位前面用0补齐 000000000000000000000000000000000000000001111100000000000000000 最终得到的运算结果就是这个 111111111111111111111111111111111111111111111100000000000000000 工作台设置成了 63 会导致什么后果 63对应的二进制是 6个1111111参与的运算结果和工作台设置成31得到的结果一样就有产生的重复 id 的风险了。因此这也是工作台最大只支持 5 bit 位的原因 同机器位只支持最大 5 bit位 在时间戳、工作台按最大值运算后留给数据中心的有效运算位只有 17 位了然后数据中心又左移了12 位留给数据中心的参与运算的bit就只有5位了17-125。同理如果数据中心设置成63也会有生成重复id的风险出现 同理数据累加位只支持最大 12 bit位 在时间戳、机器位、工作台按最大值左移后留给累加数的有效位只有12bit位了63-41-5-512看我下图圈绿的地方这个就是有效bit位。 雪花算法优点 按照官方来说就是 不需要搭建服务集群代码逻辑非常简单同一毫秒内订单ID的序列号自增。同步锁只作用于本机机器之间互不影响每毫秒可以生成4百万个订单ID 对比Mysql自增主键 一般雪花算法用于生成订单ID相比于 Mysql 自增主键来说Mysql 自增ID是不是很容易看出你的销量做个差值计算就好了 对比UUID UUID是无序的订单ID都加索引在你插入数据的时候维护B树很好性能需要频繁的调整叶子结点的数据还会导致页分裂。简而言之就是性能不高而雪花算法性能高低延迟 雪花算法缺点 由于时间戳占生成id的41 bit位且这个时间戳是根据服务器时间生成的一旦服务器时间回拨了一下你就嗝屁了可能会生成重复的 id 雪花算法改造 基于基因法改造案例如下详情点击跳转 一文搞懂分库分表算法通俗易懂基因法、一致性 hash、时间维度 //41 bit 位时间戳5 bit 位数据中心5 bit 机器位5 bit累加位7 bit 用户基因位long orderId ((timestamp - twepoch) 22)| (datacenterId 17)| (workerId 12)| (sequence 7)| uid;小咸鱼的技术窝 关注不迷路分享更多技术干货B站、CSDN、微信公众号都是小咸鱼的技术窝更多详情在主页
http://www.yutouwan.com/news/15490/

相关文章:

  • 做全景效果图的网站成都网页设计
  • 济南比较好的网站开发公司网络网站销售
  • 优秀网站设计参考做分类信息网站如何
  • 衡水如何做企业网站如何建设个人免费网站教程视频
  • 装修网网站建设张家港网站设计制作早晨设计
  • 入侵网站怎么做弹出上海网站制作优化公司
  • 吉林省建设信息网电话桔子seo查询
  • 一个空间如何做多个网站wordpress自定义搜索界面
  • 工程机械 网站模板seo如何优化网站步骤
  • 四川网站营销seo什么价格竞价单页网站制作
  • 网站建设动态实训报告网站三要素
  • 如何建网站做推广wordpress 作者名称
  • 创建免费网站网站安全建设模板
  • wordpress文章固定链接seo学院培训班
  • 网站开发流程有哪几个阶段wordpress文章空两格
  • 网站优化软件破解版南京 网站制作公司哪家好
  • 在线做初中题网站crm管理系统使用
  • 网站内容怎么选择宜宾长宁网站建设
  • 重庆做网站制作的公司设计网站价格
  • 制作网站价格不一erp系统教程
  • 做网站什么前端框架方便网站的整体风格
  • 设计网站能否用素材来制作广告在线商城网站备案
  • 宜春招聘网站开发区招工装修案例分析
  • 聊城做网站的公司教程路由器设置用来做网站空间吗
  • 深圳网站建设服务便宜python自学
  • 域名交易网站哪个好帮别人发广告赚钱平台
  • 深圳三玉网站建设长沙网站制作哪家好
  • 网站地图在线制作工具上海货拉拉注册公司地址
  • 企业网站备案资料填写单公司简介ppt案例
  • 有哪些可以做兼职翻译的网站阿里云服务器搭建wordpress