- 博客(6)
- 收藏
- 关注
原创 记录编写DockerFile常用的一些指令
目录1.FROM(最开始的语法 定制基本的镜像)2.RUN (运行指令)3.WORKDIR(设置当前目录)4.ADD and COPY ( 主机资源添加到镜像中 ,解压缩等)4.ENV 定义环境变量5.VOLUME EXPOSE6.CMD ENTRYPOINT7.LABEL (描述信息:作者,版本等)1.FROM(最开始的语法 定制基本的镜像)1.FORM scrath 制作base image2.FROM centos base image3.FROM ubantu2.RUN (运行
2021-06-21 16:16:58
271
1
原创 ReentrantReadWriteLock 锁降级的一些思考
目录1.什么是锁降级2.锁升级3.锁降级的好处1.什么是锁降级写线程获取写入锁后可以获取读取锁, 然后释放写入锁, 这样就从写入锁变成了读取锁, 从而实现锁降级的特征2.锁升级先是获取读锁,然后再升级为写锁,叫锁的升级:这个风险非常大 因为很可能读锁还没有释放就上去获取写锁,导致写锁等待.在ReentrantReadWriteLock 不支持这样做。3.锁降级的好处普通流程:获取写锁-写-释放写锁-读操作-获取读锁锁降级:获取写锁-获取读锁-写-释放写锁有什么好处 :1.数
2021-05-27 15:58:10
351
1
原创 (不懂就问)Mysql索引与ES索引 都是索引,他们差别在哪里呢?(1)
(不懂就问)Mysql索引与ES索引 都是索引,他们差别在哪里呢?文章目录(不懂就问)Mysql索引与ES索引 都是索引,他们差别在哪里呢?一、mysql索引1.1 索引有哪些好处1.2 应该创建索引的列1.3 Mysql里的索引探秘 (重点)二、es索引2.1 正排索引和倒排索引2.2 特性一、mysql索引1.1 索引有哪些好处好处有:索引大大减小了服务器需要扫描的数据量,从而大大加快数据的检索速度,这也是创建索引的最主要的原因。索引可以帮助服务器避免排序和创建临时表索引可以将随机
2021-05-10 14:11:56
1589
1
原创 java共享锁 Semaphore与ReentrantReadWriteLock
Semaphore与限流1.什么是SemaphoreSemaphore,现在普遍翻译为“信号量”,以前也曾被翻译成“信号灯”,因为类似现实生活里的红绿灯,车辆能不能通行,要看是不是绿灯。同样,在编程世界里,线程能不能执行,也要看信号量是不是允许。这三个方法详细的语义具体如下所示。init():设置计数器的初始值。down():计数器的值减 1;如果此时计数器的值小于 0,则当前线程将被阻塞,否则当前线程可以继续执行。up():计数器的值加 1;如果此时计数器的值小于或者等于 0,则唤醒等待队列
2021-04-23 16:45:26
417
1
原创 并发编程工具类- Lock和Condition
Lock和ConditionOne. lock接口1.synchronized与Lock前提:synchronized:1.5以前Sy性能不行,1.6进行了优化。但是他还存在一个致命的问题。如果没有申请到资源,线程会直接阻塞。也释放不了已经占有的资源,非常容易发生死锁。所以才有了Lock()能够响应中断 synchronized的问题是,持有锁 A 后,如果尝试获取锁 B 失败,那么线程就进入阻塞状态,一旦发生死锁,就没有任何机会来唤醒阻塞的线程。但如果阻塞状态的线程能够响应中断信号,
2021-04-15 14:24:46
190
1
原创 并发编程-初级之认识并发编程
并发编程-初级之认识并发编程1.并发领域可以处理的问题分工;同步:分好工之后,就可以具体执行。任务之间是有依赖的,一个任务结束之后将去去通知后续的任务。java里面 Executor、Fork/Join、Future本质上都是分工方法,但同时也能解决线程协作的问题。例如,用 Future 可以发起一个异步调用,主线程通过 get() 方法取结果时,主线程就会等待,当异步执行的结果返回时,get() 方法就自动返回了。我之前用的是CountDownLatch,先创建多个线程实现分工,再用Co
2021-04-14 17:00:02
985
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人