- 博客(10)
- 收藏
- 关注
转载 2021-02-22
ID生成算法(一)——雪花算法JavaScript生成有序GUID或者UUID,这时就想到了雪花算法。原理介绍:snowFlake算法最终生成ID的结果为一个64bit大小的整数,结构如下图:解释:1bit。二进制中最高位为1表示负数,但是我们最终生成的ID一般都是整数,所以这个最高位固定为0。 41bit。用于记录时间戳(毫秒) 41bit可以表示241-1个数字 如果只用来表示正整数(计算机中正数包含0),可以表示的数值范围是0到241-1,减1是因为可表示的数值范.
2021-02-22 10:29:05 247
原创 繁琐的if else替代
在开发中我们总会遇到很多需要根据不同的状态活着标识判断执行不同的操作,当有大量的这种代码出现时,对于后期的维护就是灾难int a = 1;if(a == 1){}else if(a == 2){ doSomeThing();}else if(a == 3){ doSomeThing();}else if(a == 4){ doSomeThing();}el...
2020-02-12 16:29:30 266
转载 RSA 非对称加密原理(小白也能看懂哦~)
RSA 加密原理步骤 说明 描述 备注1 找出质数 P 、Q -2 计算公共模数 N = P * Q -3 欧拉函数 φ(N) = (P-1)(Q-1) -4 计算公钥E 1 < E < φ(N) E的取值必须是整数E 和 φ(N) 必须是互质数5 计算私钥D E * ...
2019-12-04 11:52:19 237
原创 springboot项目启动全过程
1.一般我们会以以下方式启动springboot项目。2.进入run方法,会发现传入的Object实例被包装到了一个Class数组,接着调用一个重载的静态run方法。由此,我们也发现,在启动时,我们可以传入一个Class数组,也就是调用接收数组的重载方法来启动多个实例。3.进来1标注的类构造器,这里主要初始化了容器的类型、几个初始化类以及监听器。4.跟踪进入run方法,这里...
2019-12-03 15:53:53 290
转载 springCloud服务链路追踪(sleuth+zipkin)
sleuth主要功能是在分布式系统中提供追踪解决方案,并且兼容支持了zipkin(提供了链路追踪的可视化功能)zipkin原理:在服务调用的请求和响应中加入ID,表明上下游请求的关系。 利用这些信息,可以可视化地分析服务调用链路和服务间的依赖关系。sleuth是对zipkin的封装,对应Span,Trace等信息的生成、接入http request,以及向Zipkin server发送...
2019-12-03 15:51:27 644
原创 HASMAP结构图
为什么HashMap是线程不安全的1.如果多个线程同时使用put方法添加元素会丢失元素假设正好存在两个put的key发生了碰撞,那么根据HashMap的实现,这两个key会添加到数组的同一个位置,这样最终就会发生其中一个线程的put的数据被覆盖。2.多线程同时扩容会造成死循环多线程同时检查到扩容,并且执行扩容操作,在进行rehash的时候会造成闭环链表,从而在get该位置元素的...
2019-11-28 10:37:00 325
转载 架构视图之4+1
作者:动力节点链接:https://www.zhihu.com/question/19841397/answer/778335946来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。经典的当属“4+1”视图模型:逻辑视图: 一般针对客户、用户、业务人员、开发组织,主要从系统的功能元素、以及它们的接口、职责、交互维度入手。 主要元素包括系统、子系统、...
2019-11-27 17:19:02 1227
原创 设计模式的六大原则
1、开闭原则(Open Close Principle)开闭原则的意思是:对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。想要达到这样的效果,我们需要使用接口和抽象类,后面的具体设计中我们会提到这点。2、里氏代换原则(Liskov Substitution Principle)里氏代换原则是面...
2019-06-28 13:47:03 88
原创 eos测试网络搭建
eos搭建步骤:1.下载源码git clone https://github.com/EOSIO/eos --recursive2.进入sctipt目录cd ./eos/script3.自动编译./eosio_build.sh编译过程可能会出现多次失败的情况,出现下面画面表示编译成功4.部署合约1)启动服务cd /mnt/eos/bui...
2019-06-26 10:58:55 452
转载 Cloudflare免费CDN加速及防护
一般来讲,如果你的网站的空间放在香港或者国外的话,国内用户访问的速度会慢于那些空间放在国内的。站速度慢,使用cdn是最好的选择,国内也有很多免费CDN工具,都是需要网站备案后才能使用。网站没有备案的站长可以选择使用国外CDN工具,操作起来也没有我们想象的那么麻烦。 CloudFlare免费CDN加速使用教程: 1.有了cloudflare账户后,登录进去,然后点击「Add Site...
2019-02-13 10:41:11 9370 2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人