摘要: 1.确保yum包更新到最新yum update 2.卸载旧版本(如果安装过旧版本的话)yum remove docker docker-common docker-selinux docker-engine 3.安装需要的软件包, yum-util 提供yum-config-manager功能,另外 阅读全文
posted @ 2019-11-22 00:05 北溪 阅读(440) 评论(0) 推荐(0) 编辑
摘要: linux里快速安装jdk1.8 查看可以安装的jdk 命令:yum -y list java* 选择1.8的版本安装 命令:yum install -y java-1.8.0-openjdk-devel.x86_64 安装完成! 查看当前版本 命令:java -version 阅读全文
posted @ 2019-11-21 23:54 北溪 阅读(869) 评论(0) 推荐(0) 编辑
摘要: 快速使用分布式定时任务 xxl-job 需要linux服务器环境安装: jdk1.8 ,docker 安装步骤地址 : linux快速安装jdk 、 在linux里安装docker 1.docker安装mysql数据库网站 https://hub.docker.com/_/mysql?tab=tag 阅读全文
posted @ 2019-11-21 23:46 北溪 阅读(2211) 评论(0) 推荐(1) 编辑
摘要: 模仿ReentrantLock,来手写一把锁。 先上版本一。 package com.itbac.lock; import java.util.Iterator; import java.util.concurrent.LinkedBlockingQueue; import java.util.co 阅读全文
posted @ 2019-11-20 23:29 北溪 阅读(490) 评论(0) 推荐(0) 编辑
摘要: 先跑起mysql数据库主从,并有nacos_config数据库。 有nacos-standalone-mysql.yaml 文件 [root@localhost example]# cat nacos-standalone-mysql.yaml version: "2" services: naco 阅读全文
posted @ 2019-10-05 22:23 北溪 阅读(45419) 评论(2) 推荐(0) 编辑
摘要: ReentrantReadWriteLock 源码解析,欢迎指正。 读写锁同样依赖AQS抽象队列同步器来实现同步功能,而读写状态就是其同步器的同步状态。回想ReentrantLock中自定义同步器的实现,同步状态表示锁被一个线程重复获取的次数, 而读写锁的自定义同步器需要在同步状态(一个整形变量)上 阅读全文
posted @ 2019-09-19 16:32 北溪 阅读(319) 评论(0) 推荐(0) 编辑
摘要: 先改造 测试一下是不是线程安全 观察输出结果,确实是读的时候不会写,写的时候不会读。避免出现脏读现象。 嗯,就是这样。虽然用读写锁,改造了hashmap ,但是这是任何的key都会加上读写锁,控制上还是不够精细,可以优化成相同的key 才会有竞争关系,有竞争关系才需要加读写锁。更精细的控制就能让性能 阅读全文
posted @ 2019-09-19 12:04 北溪 阅读(561) 评论(0) 推荐(0) 编辑
摘要: 先定义一个枚举。 自定义一个注解 写获取读写锁的工具类,根据key 不同,使用不同的读写锁。 对注解进行AOP切面编程 遇到一个面试题。修改数据库然后删除缓存的短暂时间内的数据不一致问题怎么解决? 我想用读写锁来进行控制。读缓存的时候,使用读锁或不使用锁。修改数据库&删除缓存的时候,创建读写锁,使用 阅读全文
posted @ 2019-09-17 22:46 北溪 阅读(566) 评论(0) 推荐(0) 编辑
摘要: RPC理论学习 学习目标 1.掌握PRC是什么2.掌握PRC的流程环节3.掌握什么是PRC协议4.掌握什么是PRC框架5.掌握PRC相关术语 1. PRC 是什么remote procedure call ( RPC ) : 远程过程调用 RPC核心概念术语 Client 客户端Server 服务端 阅读全文
posted @ 2019-09-08 19:46 北溪 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 抽象队列同步器: 来一张示意图: 哈,分享就先到这了。 说点励志的话: 目标阿里P6,只去更强的公司,不为更高的工资。让自己变强,成为技术大牛。加油 阅读全文
posted @ 2019-08-24 13:19 北溪 阅读(262) 评论(0) 推荐(0) 编辑