Ribbon简介

Ribbon简介

Ribbon简介一、Ribbon概念介绍Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端 负载均衡的工具。简单的说,Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法和服务调用。Ribbon客户端组件提供一系列完善的配置项如连接超时,重试等。简单的说,就是在配置文件中列出Load Balancer(简称LB)后面所有的...

Java 2020-03-14 PM 87次 0条
【转载】Java锁知识总结(二)

【转载】Java锁知识总结(二)

【转载】Java锁知识总结(二)1. 锁类型可重入锁:广义上的可重入锁指的是可重复可递归调用的锁,在外层使用锁之后,在内层仍然可以使用,并且不发生死锁(前提得是同一个对象或者class),这样的锁就叫做可重入锁。即在执行对象中所有同步方法不用再次获得锁。ReentrantLock和synchronized都是可重入锁。举个简单的例子,当一个线程执行到某个synchronized方法时,比如说...

Java 2020-03-08 AM 107次 0条
Java锁知识总结

Java锁知识总结

Java锁知识总结前言本篇在网上总结了一下关于Java锁的一些相关概念,希望可以给大家带来一点帮助1. 什么是线程安全,如何保证线程安全?1.线程安全:就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。线程不安全就是不提供数据访问保护,有可能出现多个线程先后 更改数据造成所得到的...

Java 2020-03-06 AM 98次 0条
【转载】并发问题是怎样造成的

【转载】并发问题是怎样造成的

【转载】并发问题是怎样造成的我们的程序要运行,离不开CPU、内存、IO设备,但是他们三者之间的执行速度是有差异的。CPU 的执行速度最快,内存的速度次之,IO设备的速度最慢。一、为什么会有内存缓存CPU执行一条指令非常快,但是他从内存中读取某个数据时,就需要等待很长的时间,为了弥补速度上的巨大差距,让CPU不被内存拖垮,所以在CPU上增加了缓存。当CPU请求内存中的数据时,会先查看缓存中是否...

Java 2020-03-05 PM 102次 0条
线程池简单介绍

线程池简单介绍

线程池简单介绍一、线程池的优势线程池做的工作主要是控制运行的线程的数量,处理过程中将任务放入队列,然后在线程创建后启动这些任务,如果线程数量超过了最大数量超出数量的线程排队等候,等其它线程执行完毕,再从队列中取出任务来执行。他的主要特点为:线程复用;控制最大并发数;管理线程。第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。第二:提高响应速度。当任务到达时,任务可以不...

Java 2020-03-02 PM 98次 0条
【转载】ReentrantLock和synchronized的比较

【转载】ReentrantLock和synchronized的比较

【转载】ReentrantLock和synchronized的比较ReentrantLock和synchronized的比较。Monitor是原理和作用开始今天,我们来聊聊ReentrantLock和synchronized的相似与不同。都是阻塞ReentrantLock和synchronized都是加锁式同步,当一个线程获取了对象锁后,其它要进入同步块的线程就必须阻塞在同步块外等待。线程的...

Java 2020-03-01 PM 119次 0条
线程通信之传统版生产者消费者模式

线程通信之传统版生产者消费者模式

线程通信之传统版生产者消费者模式使用ReentrantLock完成生产者消费者模式import java.util.concurrent.locks.Condition; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.ReentrantLock; class ShareData {//资源...

Java 2020-03-01 PM 107次 0条
CyclicBarrier和Semaphore简介

CyclicBarrier和Semaphore简介

CyclicBarrier和Semaphore简介一、CyclicBarrier简介CyclicBarrier的字面意思是可循环(Cyclic)使用的屏障(Barrier)。它要做的事情是,让一组线程到达一个屏障(也可以叫同步点)时被阻塞,直到最后一个线程到达屏障时,屏障才会开门,所有被屏障拦截的线程才会继续干活,线程进入屏障通过CyclicBarrier的await()方法。需求一个线程组...

Java 2020-02-27 PM 98次 0条
countDownLatch简介

countDownLatch简介

countDownLatch简介前言countDownLatch是在java1.5被引入,存在于java.util.cucurrent包下。一、概念countDownLatch:类使一个线程等待其他线程各自执行完毕后再执行。countDownLatch是通过一个计数器来实现的,计数器的初始值是线程的数量。每当一个线程执行完毕后,计数器的值就-1,当计数器的值为0时,表示所有线程都执行完毕,然...

Java 2020-02-27 PM 100次 0条
Java锁--公平和非公平锁

Java锁--公平和非公平锁

Java锁--公平和非公平锁前言公平锁和非公平锁的理解:如果一个线程组里,如果能保证每个线程都拿到锁,这个锁就是公平锁。相反,如果保证不了每个线程都能拿到锁,也就是存在线程饿死,那么这个锁就是非公平锁。一、概念公平锁:是指多个线程按照申请锁的顺序来获取锁,通过队列FIFO,先进先出,类似排队打饭,先来后到。非公平锁:是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的...

Java 2020-02-26 AM 138次 0条