摘要:
ThreadLocal总结 ThreadLocal作用:为每一个线程开辟一个副本,意思是线程本地 1、代码证明ThreadLocal为每个线程创建线程 线程==> public class ThreadDemo extends Thread { ThreadLocal<Long> threadLoc 阅读全文
摘要:
zookeeper学习笔记 一、 应用场景 1) 订阅与发布 2)负载均衡 3)命名服务 4)分布式协调,通知,心跳 注意: 使用zk时,可以将所有的服务都注册成一个临时节点(临时节点是存储在内存中的) 我们判断一个服务是否可用只需要判断这个节点在zk集群中是否存在 二、Linux中下载和安 阅读全文
摘要:
1.下载相关软件 下载jdk yum -y install java-1.8.0-openjdk 下载docker yum -y install docker 下载wget yum -y install wget 下载solr wget https://mirrors.tuna.tsinghua.e 阅读全文
摘要:
VirtualBox安装Centos7 一、软件准备 virtualBox Centos7 二、安装virtualBox 普通软件一样一直向下安装 三、安装Centos7 1. 创建虚拟机 2. 设置虚拟机 1)把光驱上调 2)选择Centos7安装镜像 3)设置网络 3. 启动安装 四、测试连接 阅读全文
摘要:
Solr学习 一、安装solr 1.安装概述 需要配置jdk8 下载solr/Linux解压 solr以前是用tomcat作为容器;而在solr以后内部集成jetty 2.安装solr 1)下载solr wget solr镜像url 2)解压solr 解压并移动到 /usr/local 阅读全文
摘要:
一、缓存击穿 1.概念: 指某一条数据失效了;缓存中没有数据,数据库中有数据 对于热点数据的访问 2.造成原因: 原因1:之前没有人访问过,缓存里没有 原因2:缓存中的数据刚好失效 3.解决方案: 分布式锁 redis zk mysql 二、缓存穿透 1.概念: 值多条数据失效了/没有,数据库中也没 阅读全文
摘要:
数据库 MySQL基本架构 数据库的索引有哪些? 最左前缀匹配 explain 工具 binLog 脏读/幻读 事务的隔离级别 B+Tree/B Tree/红黑树的原理 为什么选择B+Tree WAL技术 缓存 缓存雪崩/穿透等问题 Redis为什么设计成单线程的 Redis如何数据搬迁 内存模型 阅读全文
摘要:
一、为什么要分库分表 1.网站架构: IE > tomcat(登录、注册、下单商品) > mysql 2.高并发下,数据库优化 1.换数据库,Oracle、mongodb 2.分库分表 3.读写分离 二、什么是分库分表 500w到1000w的数据,会引发问题 1.分库分表的思路 2.分库 垂直 水平 阅读全文
摘要:
Java内存模型 1、线程与JVM 2、java内存区域与java内存模型的区别 3、硬件内存架构与java内存模型 4、java内存模型对并发特征的保证 1基本概念: 程序:代码,完成某一件任务,代码序列(静态的概念) 进程:程序在某些数据上的一次运行(动态的概念) 线程:一个进程可能包含一个或多 阅读全文
摘要:
jdk1.7HashMap的特点: 1.发生hash冲突时,头插法处理,再整体向下移动一位 2.扩容 1)扩容主要是为对数组扩容 对数组copy一份,把原来数组和链表上的所有元素专业到新的数组上; 循环数组上的所有链表(双重循环) 扩容完毕头插法所有元素的顺序变成逆序了 多个线程循环链表 在jdk8 阅读全文