编程语言,技巧

事务隔离级别及其缺陷

事务隔离级别及其缺陷

事务隔离级别/缺陷 脏读 不可重复读 幻读 读未提交(read uncommit) 可能 可能 可能 读已提交(read commit) 不可能 可能 可能 可重复读(repeated read) 不可能 不可能 可能 可串行化(Serializable ) 不可能 不可能 不可能 脏读是一个事务读取到另一个事务未提交的数据。……

k8s安装及部署步骤

k8s安装及部署步骤

国内安装k8s的四种途径: 1. 使用kubeadmin通过离线镜像安装 2. 使用阿里公有云平台k8s,钞能力 3. 通过yum官方仓库安装,上古版本 4. 二进制包的形式进行安装,kubeasz (github) 安装步骤: 一、 环境配置: 1. 设置主机名与时区 timedatectl set-time……

使用阿里云yum源安装docker-ce版本后启动失败

使用阿里云yum源安装docker-ce版本后启动失败

利用阿里云yum的docker仓库安装docker-ce版本后启东docker失败: 报错内容: Redirecting to /bin/systemctl start docker.service Job for docker.service failed because the control process exited with error code……

java语言中的锁

java语言中的锁

从java的集合线程安全开始说起 平时经常使用的集合类如ArrayList,LinkedList,HashSet等以及Map都是线程不安全的,如果进行多线程操作会出现线程安全问题,那么java是如何解决这些常用类的线程安全问题呢 几个常用的保证集合类线程安全的方法 使用synchronized关键字 使用Collections提供的工具方法保证线程……

CAS问题简述

CAS问题简述

什么是CAS compareAndSwap 对比并交换,是一条CPU原语,执行必须是连续的不能够被打断。Atomic类使用CAS原理实现 java语言中利用,sun.misc.Unsafe类实现了CAS java8中里有do…while循环实现了CAS public final int getAndSetInt(Object paramOb……

线程池相关知识点

线程池相关知识点

从阻塞队列开始说起 在操作阻塞队列时,如果队列内容为空,那么消费线程会被阻塞;如果队列已经满了,那么生产线程将会阻塞 阻塞队列的分类 ArrayBlockingQueue 有界队列 底层为Array形式存储 如果所有的任务都是按顺序执行,不存在“插队”和从队伍中离开,则适合使用ArrayBlockingQueue LinkedBlockingQu……

volatile是如何保证内存可见性的

volatile是如何保证内存可见性的

在java的内存模型中,每个线程都要将主内存中的变量复制到线程的工作内存中,在线程操作完成后将工作内存中的变量写会到主内存中。如果一个变脸被复制到线程的工作空间中,在线程工作空间中的修改,如果不能及时写回主内存中,那么其他线程是无法获取大这个变量已被修改的状态。 java引入volatile关键字来实现指令在读取变量时,必须去读主内存中的变量,而不将变量复制……

指令重排造成双重检验方式的单例模型线程不安全问题

指令重排造成双重检验方式的单例模型线程不安全问题

要不断打磨,技术才会不断进步 之前写过单例模式的几种实现方式,原文链接http://www.full-stacker.com/archives/256 之前犯了个严重的错误,一直以为双重判断方式的实现是线程安全的,但真实却不是这样的。。。。 先看下双重判断方式的实现代码: package com.fullstacker.study.designpattern……

分库分表相关

分库分表相关

查询本文需要浏览器支持flash功能,如flash无法播放可在百度脑图中查看 [freemind file=”/freeMind/高并发相关.mm” /] ……

分布式相关知识

分布式相关知识

查询本文需要浏览器支持flash功能,如flash无法播放可在百度脑图中查看 [freemind file=”/freeMind/分布式相关.mm” /] ……