摘要:
一、类的属性的表示方式 在UML类图中,类使用包含类名、属性(field) 和方法(method) 且带有分割线的矩形来表示,比如下图表示一个Employee类,它包含name,age和email这3个属性,以及modifyInfo()方法。 那么属性/方法名称前加的加号和减号是什么意思呢?它们表示 阅读全文
摘要:
1.Future的应用场景 在并发编程中,我们经常用到非阻塞的模型,在之前的多线程的三种实现中,不管是继承thread类还是实现runnable接口,都无法保证获取到之前的执行结果。通过实现callback接口,并用Future可以来接收多线程的执行结果。 Future表示一个可能还没有完成的异步任 阅读全文
摘要:
解决线程安全问题使用ReentrantLock就可以,但是ReentrantLock是独占锁,某时只有一个线程可以获取该锁,而实际中会有写少读多的场景,显然ReentrantLock满足不了这个需求,所以ReentrantReadWriteLock应运而生。 ReentrantReadWriteLo 阅读全文
摘要:
解决线程安全问题使用ReentrantLock就可以,但是ReentrantLock是独占锁,某时只有一个线程可以获取该锁,而实际中会有写少读多的场景,显然ReentrantLock满足不了这个需求,所以ReentrantReadWriteLock应运而生。 ReentrantReadWriteLo 阅读全文
摘要:
安装包:rocketmq-all-4.5.1-bin-release.zip 安装unzip:sudo wget http://downloads.sourceforge.net/infozip/unzip552.tar.gz 解压:tar zxvf unzip552.tar.gz 进入目录:cd 阅读全文
摘要:
一、CAS是什么? CAS的全称是Compare and Swap,即比较并交换。比较的是当前内存中存储的值与预期原值,交换的是新值与内存中的值。这个操作是硬件层面的指令,因此能够保证原子性。Java通过JNI(本地方法调用)来使用这个原子操作,也是乐观锁最常用的机制。 CAS操作包含三个操作数—— 阅读全文
摘要:
官网下载:https://www.haproxy.org/ 环境:centos7 haproxy-2.0.28.tar 解压文件:tar -zxf haproxy-2.0.28.tar.gz 进入解压的文件中:cd haproxy-2.0.28 编译安装gcc:yum install gcc -y 阅读全文
摘要:
RabbitMQ的安装需要首先安装Erlang,因为它是基于Erlang的VM运行的。 RabbitMQ需要的依赖:socat和logrotate,logrotate操作系统中已经存在了,只需要安装socat就 可以了。 1、安装socat依赖:yum install socat -y 2、安装Er 阅读全文
摘要:
第一步:安装 C 语言需要的 GCC 环境 yum install -y gcc-c++ yum install -y wget 第二步:下载并解压缩 Redis 源码压缩包 wget http://download.redis.io/releases/redis-5.0.5.tar.gz tar 阅读全文
摘要:
对应环境:jdk11 解压安装包:tar -xvf neo4j-community-3.5.31-unix.tar.gz 修改配置文件:cd neo4j-community-3.5.31 vi conf/neo4j.conf(注释解开) dbms.connectors.default_listen_ 阅读全文