自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (1)
  • 收藏
  • 关注

原创 ThreadLocal 简述

ThreadLocal 简述文章目录ThreadLocal 简述前言场景实现原理ThreadLocal`set``get()`ThreadLocal$ ThreadLocalMap`Thread`关系引用图总结附录为何`Entry`使用弱引用?前言之前面试又被问过关于 ThreadLocal 的使用以及实现原理,回答的不是很好,在这里会对 ThreadLocal进行分析,介绍,以及总结性概述场景最常见的ThreadLocal使用场景为 用来解决 数据库连接、Session管理等。如class C

2020-06-04 08:55:28 210

原创 Integer使用==的几种情况

今天主要说一下 java 中的 Integer 的==比较的几种结果,知识点比较基础,但是需要细心。public class CompareInteger { /** * 基于 JDK自身属性,我们可以在这里给出几个前提: * <p> * 1.== 比较的是对内对象的地址 * 2.equals比较的是对象的值是否相等(可重写) * 3.int,long等基础类型的值存储在栈中 * 4.Integer的常量池大小范围为-128

2020-06-03 15:01:36 4313

原创 Java7/8中的 HashMap 和 ConcurrentHashMap

Java7/8中的 HashMap 和 ConcurrentHashMap文章目录Java7/8中的 HashMap 和 ConcurrentHashMapJava7 HashMapput 过程分析数组初始化计算具体数组位置添加节点到链表中数组扩容get 过程分析Java7 ConcurrentHashMap初始化put 过程分析初始化槽: ensureSegment获取写入锁: scanAndLockForPut扩容: rehashget 过程分析并发问题分析Java8 HashMapput 过程分析数

2020-05-28 18:57:11 203

原创 Zookeeper--知识点整理

Zookeeper–知识点整理文章目录Zookeeper--知识点整理前言Zab 协议zookeeper 概览会话(Session)Znode版本Watcher(事件监听器)ACL应用发布订阅命名服务协调分布式事务分布式锁总结参考前言最近在准备面试,看到简章中 的要求,熟悉zookeeper,扪心自问一下,发现对 zookeeper 的了解知之甚少,只知道Zookeeper 可以被用作注册中心。 Zookeeper 是 Hadoop 生态系统的一员;Zookeeper 集群有高性能和高容错性,以及简单

2020-05-27 17:36:54 254

原创 SpringBoot + Redis实现布隆过滤器拦截无效请求

SpringBoot + Redis布隆过滤器拦截无效请求文章目录SpringBoot + Redis布隆过滤器拦截无效请求简述Redis 安装 Bloom Filter基本指令结合 SpingBoot方式一方式二参考简述关于布隆过滤器的详细介绍,我在这里就不再赘述一遍了,不了解的可以移步BloomFilter 布隆过滤器-简述本文重点是在 springboot 中使用 redis 的布隆过滤器我们首先知道:BloomFilter使用长度为m bit的字节数组,使用k个hash函数,增加一个元素:

2020-05-27 10:36:10 1049 2

转载 Redisson 分布式锁实现分析

Redisson 分布式锁实现分析文章目录Redisson 分布式锁实现分析分布式锁常见问题互斥死锁性能重入RedissonLock 源码解析分布式锁使用*getLock()**lock()**tryAcquire()**unlock()*注意参考分布式锁常见问题互斥分布式系统中运行着多个节点,必须确保在同一时刻只能有一个节点的一个线程获得锁,这是最基本的一点。死锁分布式系统中,可能产生死锁的情况要相对复杂一些。分布式系统是处在复杂网络环境中的,当一个节点获取到锁,如果它在释放锁之前挂掉了,或者

2020-05-26 17:33:52 550

原创 mysql--知识点整理

mysql–知识点整理文章目录mysql--知识点整理mysql 慢查询开启 mysql 慢查询日志慢日志分析工具Mysqldumpslowshow processlist 命令explainsql优化添加索引适合使用索引的场景不适合使用索引的场景mysql 慢查询开启 mysql 慢查询日志mysql> show variables like 'long%';long_query_time | 10.000000mysql> set long_query_time=1;mysql

2020-05-26 14:21:21 205

转载 jvm调优-命令篇

jvm调优-命令篇文章目录jvm调优-命令篇jpsjstatjmap**jhat**jstackjinfo转载运用jvm自带的命令可以方便的在生产监控和打印堆栈的日志信息帮忙我们来定位问题!虽然jvm调优成熟的工具已经有很多:jconsole、大名鼎鼎的VisualVM,IBM的Memory Analyzer等等,但是在生产环境出现问题的时候,一方面工具的使用会有所限制,另一方面喜欢装X的我们,总喜欢在出现问题的时候在终端输入一些命令来解决。所有的工具几乎都是依赖于jdk的接口和底层的这些命令,研究这些

2020-05-25 18:10:03 249

原创 JVM-知识点整理

JVM-知识点整理文章目录JVM-知识点整理JVM内存结构Java堆(Heap)方法区(Method Area)程序计数器(Program Counter Register)JVM栈(JVM Stacks)本地方法栈(Native Method Stacks)垃圾收集算法对象存活判断标记 -清除算法复制算法标记-压缩算法分代收集算法垃圾收集器Serial收集器ParNew收集器Parallel收集器Parallel Old 收集器CMS收集器G1收集器内存划分G1 工作流程年轻代收集Old GC / 并发

2020-05-25 17:03:07 230

原创 Redis-知识点整理

Redis文章目录Redisredis 特性性能集群模式持久化RDBAOF持久化处理过期 Key混合NOSql 对比对比Memcached数据结构StringHashListSetSortSetredis 内部机制过期策略内存淘汰机制redis哨兵分布式分布式缓存分布式锁应用场景热点数据排行榜/计数共享Session消息队列发布/订阅常见问题缓存击穿缓存穿透缓存雪崩参考最近准备面试,做一些技术栈整理和总结,希望能有更多的收货。redis 是一个数据库,不过与传统数据库不同的是 redis 的数据是存

2020-05-25 10:15:56 216

原创 Spring-- 事务

Spring-- 事务文章目录Spring-- 事务前言事务的特性(ACID)Spring对事务的支持事务管理方式编程式事务管理声明式事务管理Spring 事务管理接口PlatformTransactionManager:事务管理接口TransactionDefinition:事务属性TransactionStatus:事务状态事务属性详解事务传播行为事务隔离级别事务超时属性事务只读属性事务回滚规则@Transactional 注解使用详解`@Transactional` 的使用注意事项总结参考前言事

2020-05-22 17:34:34 178

原创 Java 并发--线程池设计思想和源码实现

Java 并发–线程池设计思想和源码实现文章目录Java 并发--线程池设计思想和源码实现总览Executor 接口ExecutorServiceFutureTaskAbstractExecutorService**`AbstractExecutorService`****`invokeAny`****`invokeAll`**ThreadPoolExecutor**`Worker`****`addWorker(Runnable firstTask, boolean core) `****`addWork

2020-05-21 15:15:14 198

原创 Java并发--AQS共享模式

Java并发–AQS共享模式文章目录Java并发--AQS共享模式CountDownLatch案例源码分析分析案例**`await()`****`countDown()`**CyclicBarrier源码分析Semaphore参考CountDownLatchCountDownLatch 这个类是比较典型的 AQS 的共享模式的使用,这是一个高频使用的类。latch 的中文意思是门栓、栅栏,具体怎么解释我就不废话了,大家随意,看两个例子就知道在哪里用、怎么用了。案例假设我们有 N ( N >

2020-05-19 20:11:06 859

原创 Java并发--AQS ( Condition )

Java并发–AQS ( Condition )文章目录Java并发--AQS ( Condition )Condition使用场景将节点加入到条件队列完全释放独占锁等待进入阻塞队列signal 唤醒线程,转移到阻塞队列唤醒后检查中断状态获取独占锁处理中断状态带超时机制的 await不抛出 InterruptedException 的 awaitAbstractQueuedSynchronizer 独占锁的取消排队参考Condition使用场景import java.util.concurrent.

2020-05-19 16:38:21 382

原创 java 线程中断和 InterruptedException 异常

java 线程中断和 InterruptedException 异常文章目录java 线程中断和 InterruptedException 异常线程中断InterruptedException 概述处理中断参考线程中断首先,我们要明白,中断不是类似 linux 里面的命令 kill -9 pid,不是说我们中断某个线程,这个线程就停止运行了。中断代表线程状态,每个线程都关联了一个中断状态,是一个 true 或 false 的 boolean 值,初始值为 false。Java 中的中断和操作系统的

2020-05-19 16:15:51 1514

原创 Java 并发--AQS(通过ReentrantLock理解 AQS)

Java 并发–AQS文章目录Java 并发--AQSAQS 结构AQS 属性线程抢锁????解锁操作总结补充参考AQS 结构AQS 属性// 头结点,你直接把它当做 当前持有锁的线程 可能是最好理解的private transient volatile Node head;// 阻塞的尾节点,每个新的节点进来,都插入到最后,也就形成了一个链表private transient volatile Node tail;// 这个是最重要的,代表当前锁的状态,0代表没有被占用,大于 0 代表

2020-05-19 13:21:25 157

原创 设计模式--行为型模式

设计模式–行为型模式文章目录设计模式--行为型模式前言策略模式观察者模式责任链模式模板方法模式状态模式总结参考前言行为型模式关注的是各个类之间的相互作用,将职责划分清楚,使得我们的代码更加地清晰。策略模式先定义一个策略接口:public interface Strategy { public void draw(int radius, int x, int y);}然后我们定义具体的几个策略:public class RedPen implements Strategy {

2020-05-17 10:44:42 122

原创 设计模式--结构型模式

设计模式–结构型模式文章目录设计模式--结构型模式前言代理模式适配器模式默认适配器模式对象适配器模式类适配器模式适配器模式总结桥梁模式装饰模式门面模式组合模式享元模式总结参考前言结构型模式旨在通过改变代码结构来达到解耦的目的,使得我们的代码容易维护和扩展。代理模式代理模式是我们最常用的模式之一了,用一个代理来隐藏具体实现类的实现细节,通常还用于在真实的实现的前后添加一部分逻辑。既然说是代理,那就要对客户端隐藏真实实现,由代理来负责客户端的所有请求。当然,代理只是个代理,它不会完成实际的业务逻辑,

2020-05-16 22:36:35 208

原创 设计模式--创建型模式

设计模式–创建型模式文章目录设计模式--创建型模式前言工厂模式简单工厂模式工厂模式抽象工厂模式单例模式饿汉模式饱汉模式经典嵌套类枚举单例实现(推荐)建造者模式原型模式总结参考前言设计模式是对大家实际工作中写的各种代码进行高层次抽象的总结,其中最出名的当属 Gang of Four (GoF) 的分类了,他们将设计模式分类为 23 种经典的模式,根据用途我们又可以分为三大类,分别为创建型模式、结构型模式和行为型模式。有一些重要的设计原则在开篇和大家分享下,这些原则将贯通全文:面向接口编程,而不是面

2020-05-16 17:49:08 2237

原创 Spring--IOC容器

Spring–IOC容器文章目录Spring--IOC容器简介上帝视角简述IOC 体系架构BeanFactory体系架构Application体系架构参考简介Spring 通过一个配置文件描述 Bean 及 Bean 之间的依赖关系,利用 Java 语言的反射功能实例化 Bean 并建立 Bean 之间的依赖关系。 Spring 的 IoC 容器在完成这些底层工作的基础上,还提供了 Bean 实例缓存、生命周期管理、 Bean 实例代理、事件发布、资源装载等高级服务。上帝视角简述[外链图片转存失败

2020-05-13 20:42:29 126

原创 BloomFilter 布隆过滤器-简述

BloomFilter 布隆过滤器文章目录BloomFilter 布隆过滤器遇到问题布隆过滤器介绍原理优点缺点使用场景具体实现google guava实现的布隆过滤器简单使用问题解决方案遇到问题在实际开发过程中,为了应对高并发请求,需要对系统做缓存处理,设计缓存系统时,不得不考虑缓存穿透,缓存穿透、缓存击穿与失效时的雪崩效应缓存穿透是指查询一个一定不存在的数据,由于缓存是不命中时被动写的,...

2020-05-08 11:44:55 340

原创 使用RabbitMq实现延迟队列

延迟队列的需求:在生产环境中,出现用户下单后,需要在半个小时之内进行支付,如果半个小时之内未进行支付,该订单将被处理。这时候就需要使用到了延迟队列。RabbitMq的特性TTL(time to live)RabbitMQ可以针对Queue设置x-expires 或者 针对Message设置 x-message-ttl,来控制消息的生存时间,如果超时(两者同时设置以最先到期的时间为准),则消息...

2020-03-30 09:09:01 242

原创 Hadoop2.0架构及其运行机制,HA原理

文章目录一、Hadoop2.0架构1.架构图2.HA1)NameNode主备切换2)watcher监听3)脑裂问题3.组件1.HDFS2.MapReduce3.Yarn1.组件2.调度流程一、Hadoop2.0架构1.架构图以上是hadoop2.0的架构图,根据hadoop1.0的不足,改进而来。1.NameNode节点,由原先的一个变成两个,解决单点故障问题2.JournalNode...

2020-03-18 11:10:33 1156

原创 Hadoop架构之1.0

Hadoop架构之1.0本文主要讲述Hadoop中HDFS的架构,详细的MapReduce将放到后面写一篇专门的博客文章目录Hadoop架构之1.0hadoop1.0架构HDFS组件HDFS存储过程写入操作读取过程HDFS的不足MapReduce架构MapReduce组件MapReduce数据处理过程MapReduce不足hadoop1.0架构HDFS组件NameNode管理整...

2020-03-09 15:05:00 683

原创 简述大数据

简述大数据本文暂不考虑市场的定义,仅从两个技术角度叙述;大数据的特点大数据的流程大数据的特点根据IBM的概括,表现为5VVolume数据量大。包括采集、存储和计算的量都非常大。大数据的起始计量单位至少是P(1000个T)、E(100万个T)或Z(10亿个T)Variety**种类和来源多样化。**包括结构化、半结构化和非结构化数据,具体表现为网络日志、音频、视频、图片、地理...

2020-03-08 14:15:16 453

原创 kafka安装运行

kafka安装,运行1.安装> tar -xzf kafka_2.12-2.3.0.tgz> cd kafka_2.12-2.3.02.启动服务> bin/kafka-server-start.sh config/server.properties &> #无zookeeper> bin/zookeeper-server-start.sh co...

2020-02-02 22:54:26 2869

原创 linux安装大数据相关软件

1.安装ipconfigyum install net-tools.x86_642.安装wgetyum install wget

2020-01-20 17:54:25 278

原创 linux命令

linux命令一、查看文件夹大小df 用于查看设备的空间使用率$ df -h$ du -h$ du -ah#-h:用K、M、G的人性化形式显示#-a:显示目录和文件du -h tmpdu -ah tmp#只查看当前目录下的tmp目录(包含子目录)的大小#查看当前目录及其指定深度目录的大小du -h –-max-depth=0#-–max-depth=n:只...

2020-01-19 10:39:05 145 1

原创 亲测好用,同步服务器时间

服务器时间同步网上找了很多时间服务器的地址,很多不好用方法:ntpdate cn.ntp.org.cn亲测可用

2020-01-13 15:24:31 174

原创 CentOS 安装mysql 5.7

CentOS 安装mysql 5.7方式一、rpm 安装包1.安装 mysql 源在 https://dev.mysql.com/downloads/repo/yum/ 找到 yum 源 rpm 安装包# 下载shell> wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm# 安装 ...

2019-08-09 10:20:27 85

原创 Zookeeper 集群搭建

Zookeeper 集群搭建1.安装包下载与解压搭建zookeeper集群最少需要三台机器安装包下载与解压,前往apache官网下载,不做赘述我是将zookeeper放置在/usr/local目录下2.修改配置文件在zookeeper安装目录的conf中将zoo_sample.cfg修改为zoo.cfg修改其中配置[root@hadoop1 conf] mv zoo_sample....

2019-07-11 11:41:39 55

原创 Hadoop--mac 上利用虚拟机安装hadoop步骤整理

Hadoop–mac 上利用虚拟机安装hadoop步骤整理本文仅提供详细步骤,不提供详尽解释VMware fusion虚拟机配置静态IP######mac book 执行获取[tonerMac-Pro:~ toner]$ cd /Library/Preferences/VMware\ Fusion/vmnet8[tonerMac-Pro:~ toner]$ cat dhcpd.con...

2019-07-09 09:12:23 1631

转载 转载|大数据学习路线

大数据学习路线以下内容转载自https://www.imooc.com/article/26678?block_id=tuijian_wz,侵权必删!1.Linux基础和分布式集群技术学完此阶段可掌握的核心能力:熟练使用Linux,熟练安装Linux上的软件,了解熟悉负载均衡、高可靠等集群相关概念,搭建互联网高并发、高可靠的服务架构;学完此阶段可解决的现实问题:搭建负载均衡、高可靠的服...

2019-06-12 09:14:59 115

原创 踩坑记录|Result Maps collection does not contain value for java.lang.Long

##踩坑记录 Result Maps collection does not contain value for java.lang.Long异常信息:[ERROR] [DUBBO] Got unchecked and undeclared exception which called by 127.0.0.1. service: com.hylandtec.riviews.service....

2019-05-27 16:25:11 234 1

原创 spring boot @value 无法注入static 修饰的参数

spring boot 拒绝 @value 注入static 修饰的参数中在spring boot中@value 的值是不能被注入进static 修饰的静态变量中,示例:import org.springframework.beans.factory.annotation.Value;import org.springframework.stereotype.Component;@Com...

2019-05-27 10:40:02 992

原创 超级简单的guava配置

由于实际业务开发,现有需求如下: public class LightupCityRelation implements Serializable { private static final long serialVersionUID = -3086558476279595830L; private Long id;//唯一标识 ...

2019-04-04 16:11:31 1040

原创 JDK1.8新特性知识点梳理

JDK1.8新特性知识点梳理JDK1.8新特性知识点梳理特性详解1.接口的默认方法(`default`关键字)lambda表达式JDK1.8新特性知识点梳理引言由于刚刚换份工作,之前公司用的是JDk1.7,新公司用的JDK1.8,虽然之前对JDK1.8有过零零碎碎的了解,但是还是不是非常系统,今天乘着空余时间,梳理一下JDK1.8新增的一些特性!特性详解1.接口的默认方法(default...

2019-03-22 13:32:22 263

test-bloomfilter.zip

分布式环境中使用 redis 实现布隆过滤器的两种方式,使用 官方Redisson 实现,使用原始lua 脚本实现,运行环境使用 springboot 的环境

2020-05-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除