自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Beal的博客

随笔

  • 博客(6)
  • 资源 (1)
  • 收藏
  • 关注

原创 深入理解幂等性

什么是幂等性 HTTP/1.1中对幂等性的定义是:一次和多次请求某一个资源对于资源本身应该具有同样的结果(网络超时等问题除外)。也就是说,其任意多次执行对资源本身所产生的影响均与一次执行的影响相同。 Methods can also have the property of “idempotence” in that (aside from error or expiration issue...

2019-10-24 18:35:26 110

原创 可重入锁 VS 非可重入锁以及AQS概述

可重入锁又名递归锁,是指在同一个线程在外层方法获取锁的时候,再进入该线程的内层方法会自动获取锁(前提锁对象得是同一个对象或者class),不会因为之前已经获取过还没释放而阻塞。Java中ReentrantLock和synchronized都是可重入锁,可重入锁的一个优点是可一定程度避免死锁。 之前我们说过ReentrantLock和synchronized都是重入锁,那么我们通过重入锁Reent...

2019-10-17 18:30:13 400

原创 HashMap的扩容机制------resize()

参考:HashMap的扩容机制------resize() 一:首先要知道HashMap什么时候扩容 当元素向HashMap容器中添加元素的时候,会判断当前元素的个数,如果当前元素的个数大于等于阈值时,即当前数组table的长度*加载因子就要进行自动扩容。 由于HashMap的底层数据结构是“链表散列”,即数组和链表的组合,而数组是无法自动扩容的,所以只能是换一个更大的数组去装填以前的元素和将...

2019-10-16 21:44:42 247

原创 CurrentHashMap详解(JDK1.8)

摘要 在涉及到Java多线程开发时,如果我们使用HashMap可能会导致死锁问题,使用HashTable效率又不高。而ConcurrentHashMap既可以保持同步也可以提高并发效率,所以这个时候ConcurrentHashmap是我们最好的选择。 为什么使用ConcurrentHashMap 在多线程环境中使用HashMap的put方法有可能导致程序死循环,因为多线程可能会导致HashMap...

2019-10-16 21:38:58 4645 1

原创 ES分布式架构及底层原理

参考:es详解 elasticsearch设计的理念就是分布式搜索引擎,底层实现还是基于Lucene的,核心思想是在多态机器上启动多个es进程实例,组成一个es集群。一下是es的几个概念: 接近实时 es是一个接近实时的搜索平台,这就意味着,从索引一个文档直到文档能够被搜索到有一个轻微的延迟 集群(cluster) 一个集群有多个节点(服务器)组成,通过所有的节点一起保存你的全部数据并且...

2019-10-14 13:37:27 304

原创 线程池原理

详细内容可参见:Java并发编程:线程池的使用 核心线程(corePool):线程池最终执行任务的角色肯定还是线程,同时我们也会限制线程的数量,所以我们可以这样理解核心线程,有新任务提交时,首先检查核心线程数,如果核心线程都在工作,而且数量也已经达到最大核心线程数,则不会继续新建核心线程,而会将任务放入等待队列。 等待队列 (workQueue):等待队列用于存储当核心线程都在忙时,继续新增的...

2019-10-14 12:39:58 107

摄像头智能签到系统

利用ARM板连接摄像头,编写人脸识别算法,APP端实现注册登录,网页端实现签到人数查看

2017-04-24

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除