5 lip86

尚未进行身份认证

暂无相关描述

等级
TA的排名 3w+

详细领悟ThreadLocal变量

关于对ThreadLocal变量的理解,我今天查看一下午的博客,自己也写了demo来测试来看自己的理解到底是不是那么回事。从看到博客引出不解,到仔细查看ThreadLocal源码(JDK1.8),我觉得我很有必要记录下来我这大半天的收获,今天我研究的最多的就是这两篇文章说理解。我在这里暂称为A文章和B文章。以下是两篇博文地址,我是在看完A文章后,很有疑问,特别是在A文章后的各位网页的评论中,更...

2019-08-12 17:16:24

Linux 基础命令(收藏大全)

linux系统文件结构/根目录/bin存放必要的命令/boot存放内核以及启动所需的文件/dev存放设备文件/etc存放系统配置文件/home普通用户的宿主目录,用户数据存放在其主目录中lib存放必要的运行库/mnt存放临时的映射文件系统,通常用来挂载使用/proc存放存储进程和系统信息/root超级用户的主目录/sbin存放系统...

2019-08-12 10:44:11

还有人不懂分布式锁的实现就把这篇文章丢给他

大多数互联网系统都是分布式部署的,分布式部署确实能带来性能和效率上的提升,但为此,我们就需要多解决一个分布式环境下,数据一致性的问题。当某个资源在多系统之间,具有共享性的时候,为了保证大家访问这个资源数据是一致的,那么就必须要求在同一时刻只能被一个客户端处理,不能并发的执行,否者就会出现同一时刻有人写有人读,大家访问到的数据就不一致了。一、我们为什么需要分布式锁?在单机时代,虽然不...

2019-08-05 16:36:28

玩转linux 这些命令就够了

最近都在和Linux打交道,感觉还不错。我觉得Linux相比windows比较麻烦的就是很多东西都要用命令来控制,当然,这也是很多人喜欢linux的原因,比较短小但却功能强大。我将我了解到的命令列举一下,仅供大家参考:系...

2019-08-05 15:05:13

深入理解负载均衡

前言闲来无事写篇文章总结下负载均衡。正文负载均衡负载均衡是高可用架构的一个关键组件,主要用来提高性能和可用性,通过负载均衡将流量分发到多个服务器,同时多服务器能够消除这部分的单点故障。当然负载均衡器本身就是一个单点故障隐患,可以考虑文章后面说的负载均衡双机热备或其他方案消除单点故障提高可用性。一个没有使用负载均衡的Web架构一般会长得像这样:没有负载均衡的架构...

2019-08-02 15:11:08

分布式消息队列 RocketMQ 源码分析 —— RPC 通信(一)

摘要:原创出处https://mp.weixin.qq.com/s/V_nOevq_2cbrH2_zgOSP-w「胡宗棠」欢迎转载,保留摘要,谢谢! 一、RocketMQ中Remoting通信模块概览 二、RocketMQ中Remoting通信模块的具体实现 1、Remoting通信模块的类结构图 2、消息的协议设计与编码解码 3...

2019-08-02 14:45:08

并发编程之多线程线程安全

来自:掘金(作者:蒋老湿)原文链接:https://juejin.im/post/5bd967915188257f7d68134a什么是线程安全?为什么有线程安全问题?当多个线程同时共享,同一个全局变量或静态变量,做写的操作时,可能会发生数据冲突问题,也就是线程安全问题。但是做读操作是不会发生数据冲突问题。案例:需求现在有100张火车票,有两个窗口同时抢火车票,请使用...

2019-07-31 10:49:52

HashMap和Hashtable的区别

作者:菜鸡小王子链接:https://blog.csdn.net/qq_35181209/article/details/74503362Java架构师之路做了编排线程安全两者最主要的区别在于Hashtabl...

2019-07-30 17:09:28

Java内存区域详解

基本问题: 介绍下Java内存区域(运行时数据区)。 Java对象的创建过程(五步,建议能默写出来并且要知道每一步虚拟机做了什么) 对象的访问定位的两种方式(句柄和直接指针两种方式) 拓展问题: String类和常量池 8种基本类型的包装类和常量池 1概述(为什么要学习Java内存区域)对于Java程序员来说,在虚拟机自动内存管理机制下,不再...

2019-07-26 17:52:49

深入理解Java虚拟机

#概念虚拟机:指以软件的方式模拟具有完整硬件系统功能、运行在一个完全隔离环境中的完整计算机系统,是物理机的软件实现。常用的虚拟机有VMWare,VisualBox,JavaVirtualMachine(Java虚拟机,简称JVM)。Java虚拟机阵营:SunHotSpotVM、BEAJRockitVM、IBMJ9VM、AzulVM、ApacheHarmony、Go...

2019-07-22 14:10:55

分布式锁全网最详解!!

什么是锁?在单进程的系统中,当存在多个线程可以同时改变某个变量(可变共享变量)时,就需要对变量或代码块做同步,使其在修改这种变量时能够线性执行消除并发修改变量。而同步的本质是通过锁来实现的。为了实现多个线程在一个时刻同一个代码块只能有一个线程可执行,就需要在某个地方做个标记,这个标记必须每个线程都能看到,当标记不存在时可以设置该标记,其余后续线程发现已经有标记了,则等待拥有标记的线程结束同...

2019-07-09 16:41:32

static方法内不能调用非static方法

publicclassExportExcelUtil{@AutowiredprivatestaticOrderServiceorderService;publicstaticvoidexportExcel(Stringid){//查询要导出的订单的数据Orderorder=orderService.getById(id...

2019-07-09 10:09:54

BATJ 常考的 21 条 Linux 命令

一、文件和目录1.cd命令(它用于切换当前目录,它的参数是要切换到的目录的路径,可以是绝对路径,也可以是相对路径)cd/home进入'/home'目录cd..返回上一级目录cd../..返回上两级目录cd进入个人的主...

2019-07-08 16:53:17

这几道Redis面试题都不懂,怎么拿offer?

随着系统访问量的提高,复杂度的提升,响应性能成为一个重点的关注点。而缓存的使用成为一个重点。redis作为缓存中间件的一个佼佼者,成为了面试必问项目。本文分享一下Redis几道常见的面试题:缓存雪崩1.1什么是缓存雪崩?如果我们的缓存挂掉了,这意味着我们的全部请求都跑去数据库了。我们都知道Redis不可能把所有的数据都缓存起来(内存昂贵且有限),所以Redis需要对数据...

2019-07-08 13:56:10

如何分析一条sql的性能

这篇文章将给大家介绍如何使用explain来分析一条sql。网上其实已经有非常多的文章都很详细的介绍了explain的使用,这篇文章将实例和原理结合起来,尽量让你有更好的理解,相信我,认真看完你应该会有特别的收获。explain翻译过来就是解释的意思,在mysql里被称作执行计划,即可以通过该命令看出mysql在经过优化器分析后决定要如何执行该条sql。说到...

2019-07-08 11:10:16

如何彻底理解volatile关键字?

导读最近面试,你又被volatile关键字虐了吗?这个问题,是不是问得有点扎心了!的确,有很多朋友反馈面试中在涉及考察Java并发编程知识的时候,经常会被问到volatile关键字。对于有些公司如果你能回答出volatile关键字的基本作用及原理,如:"volatile关键字可以实现线程间的可见性,之所以可以实现这一点,原因在于JVM会保证被volatile修饰的变量,在线程栈中被线程使用时都...

2019-07-05 15:51:53

dubbo 面试18问

作者:DeanWang来源:deanwang1943.github.iodubbo是什么dubbo是一个分布式框架,远程服务调用的分布式框架,其核心部分包含:集群容错:提供基于接口方法的透明远程过程调用,包括多协议支持,以及软负载均衡,失败容错,地址路由,动态配置等集群支持。远程通讯:提供对多种基于长连接的NIO框架抽象封装,包括多种线程模型,序列化,以及“请求-响应”模...

2019-07-05 15:20:21

MySQL之EXPLAIN

今天微信群里一位网友发了一个问题:“mysql根据时间进行过滤,查询速度特别慢,需要30多秒”。然后我问她,数据库中总数据量大概是多少,她告诉我explain执行结果中的rows显示有100多万条。我告诉她这个rows不准确。那么explain执行结果中的rows到底代表了什么意思?本文我们一起来学习一下!EXPLAIN有什么用?MySQL提供了一个EX...

2019-07-05 11:09:27

Java设计模式--单例模式!

在介绍单例模式之前,我们先了解一下,什么是设计模式?设计模式(DesignPattern):是一套被反复使用,多数人知晓的,经过分类编目的,代码设计经验的总结。目的:使用设计模式是为了可重用性代码,让代码更容易被他人理解,保证代码可靠性。本文将会用到的关键词: 单例:Singleton 实例:instance 同步:synchronized 类装载器:Cl...

2019-07-03 15:48:30

收集的MySQL的面试题分享给大家

1、如何登陆mysql数据库MySQL-uusername-p2、如何开启/关闭mysql服务servicemysqlstart/stop3、查看mysql的状态servicemysqlstatus4、如何显示数所有数据库showdatabases5、如何获取表内所有字段对象的名称和类型describetable_name;6、MYSQL支...

2019-07-02 14:50:36

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 1024勋章
    1024勋章
    #1024程序员节#活动勋章,当日发布原创博客即可获得