自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

HELLOW,文浩

优雅的键盘啪啦啦。。

  • 博客(14)
  • 收藏
  • 关注

转载 Linux文件目录结构详解

对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识。  当在使用Linux的时候,如果您通过ls –l / 就会发现,在/下包涵很多的目录,比如etc、usr、var、bin ... ... 等目录,而在这些目录中,我们进去看看,发现也有很多的目录或文件。文件系统在Linux下看上去就象树形结构,所以我们可以把

2020-09-27 19:36:46 272

转载 zookeeper选举

一、前言  前面学习了Zookeeper服务端的相关细节,其中对于集群启动而言,很重要的一部分就是Leader选举,接着就开始深入学习Leader选举。二、Leader选举  2.1 Leader选举概述  Leader选举是保证分布式数据一致性的关键所在。当Zookeeper集群中的一台服务器出现以下两种情况之一时,需要进入Leader选举。  (1) 服务器初始化启动。  (2) 服务器运行期间无法和Leader保持连接。  下面就两种情况进行分析讲解。  1. 服务器启

2020-09-21 19:23:38 168

转载 Kafka选举

Kafka是一个高性能,高容错,多副本,可复制的分布式消息系统。在整个系统中,涉及到多处选举机制,被不少人搞混,这里总结一下,本篇文章大概会从三个方面来讲解。控制器(Broker)选主 分区多副本选主 消费组选主控制器(Broker)选举所谓控制器就是一个Borker,在一个kafka集群中,有多个broker节点,但是它们之间需要选举出一个leader,其他的broker充当follower角色。集群中第一个启动的broker会通过在zookeeper中创建临时节点/controller来让

2020-09-21 19:21:30 150

转载 java常量池

JDK1.7 及之后版本的 JVM 已经将运行时常量池从方法区中移了出来,在 Java 堆(Heap)中开辟了一块区域存放运行时常量池。JDK1.8开始,取消了Java方法区,取而代之的是位于直接内存的元空间(metaSpace)。已知:String A="abc";String B="abc";String C=new String("abc");String D=new String("abc");比较A==B是否相等?比较C==D是否相等?分析:我们知道基本数据类型(int,byt

2020-09-19 17:58:48 72

转载 BitMap原理

经常能够看到有些大厂的面试题里有一些这样的题目:一个10G的文件,里面全部是自然数,一行一个,乱序排列,对其排序。在32位机器上面完成,内存限制为 2G。首先来分析一下题目,10G的文件,只有2G内存,显然,不可能一次性把数据放入内存中直接排序。那么,还有什么其他办法呢?遍寻资料,可以发现大致有两种解决方案:1、把大文件分成多个小文件,分别排序,到最后合并成一个文件(我暂时还没搞懂这个方法,所以不会描述,有兴趣的看官可以自己去查一下);2、另外一种方法就是著名的bitmap算法了。引用一下《编程

2020-09-16 11:48:29 250

转载 redis哨兵模式

1、Sentinel 哨兵    Sentinel(哨兵)是Redis 的高可用性解决方案:由一个或多个Sentinel 实例 组成的Sentinel 系统可以监视任意多个主服务器,以及这些主服务器属下的所有从服务器,并在被监视的主服务器进入下线状态时,自动将下线主服务器属下的某个从服务器升级为新的主服务器。    例如:        在Server1 掉线后:    升级Server2 为新的主服务器:  2、Redis 主从分离 在讲解Sen...

2020-09-16 11:26:16 204

转载 redis 缓存穿透、缓存击穿、缓存雪崩

正文上一期吊打系列我们提到了Redis的基础知识,还没看的小伙伴可以回顾一下敖丙:《吊打面试官》系列- Redis基础​zhuanlan.zhihu.com那提到Redis我相信各位在面试,或者实际开发过程中对缓存雪崩,穿透,击穿也不陌生吧,就算没遇到过但是你肯定听过,那三者到底有什么区别,我们又应该怎么去防止这样的情况发生呢,我们有请下一位受害者。面试开始一个大腹便便,穿着格子衬衣的中年男子,拿着一个满是划痕的mac向你走来,看着快秃顶的头发,心想着肯定是尼玛顶级架构师吧!但是我...

2020-09-15 16:01:32 100

转载 String、StringBuffer和StringBuilder的区别

String、StringBuffer和StringBuilder的区别:文章目录 String StringBuffer StringBuilder StringBuffer是如何实现线程安全的呢? Java9的改进 String  String类是不可变类,即一旦一个String对象被创建以后,包含在这个对象中的字符序列是不可改变的,直至这个对象被销毁。  这个是String类的解释,之前小咸儿看到这个情况,不能理解上述的解释,如下<.

2020-09-14 14:45:50 354

转载 缓存技术

网站技术高速发展的今天,缓存技术已经成为大型网站的一个关键技术,缓存设计好坏直接关系的一个网站访问的速度,以及购置服务器的数量,甚至影响到用户的体验。  网站缓存按照存放的地点不同,可以分为客户端缓存、服务端缓存。客户端缓存  客户端缓存又可分为:浏览器缓存、网关或代理服务器缓存  网关或代理服务器缓存是将网页缓存中网关服务器上,多用户访问同一个页面时,将直接从网关服务器把页面传送给用户。  浏览器缓存是最靠近用户的缓存,如果启用缓存,用户在访问同一个页面时,将不再从服...

2020-09-12 11:05:48 269

转载 缓存穿透、缓存击穿、缓存雪崩区别和解决方案

一、缓存处理流程 前台请求,后台先从缓存中取数据,取到直接返回结果,取不到时从数据库中取,数据库取到更新缓存,并返回结果,数据库也没取到,那直接返回空结果。 二、缓存穿透 描述: 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起为id为“-1”的数据或id为特别大不存在的数据。这时的用户很可能是攻击者,攻击会导致数据库压力过大。 解决方案:接口层增加校验,如用户鉴权校验,id做基础校验,id<=0...

2020-09-11 18:55:36 64

转载 CDN工作基本原理

一、CDN的用途1、提高用户访问的速度。2、减轻源站服务器的压力。3、提升网站的稳定性和安全性。二、CDN组件1、同步源站服务器:提供所有的视频文件下载,仅提供给缓存服务器做文件同步。2、视频源站服务器:当缓存服务器上不存在用户所需的视频文件,将访问源站服务器。3、视频转发服务器:提供某一节点的URL分发服务,根据数据库决定URL转向目标。4、缓存服务器:分布于各个节点,由视频转发服务器决定缓存内容。三、CDN的原理1.用户向浏览器输入www.web.com这个域名,浏览器第一次发

2020-09-11 18:24:26 1081

转载 Nginx动静分离基本概念

前言之前项目中需要用到百度地图,由于项目的特殊环境,所以需要下载百度的离线地图。我们知道,地图的展示其实就是一张张地图的图片展示,我们在网页上浏览查找位置的时候,其实都是在发送图片请求。这些图片请求相对于jsp,servlet来说就是所谓的静态资源,当然服务中的静态资源不仅仅只是图片,像页面样式css文件,js脚本文件这些都可以看着是静态资源。tomcat既可以静态资源也可以处理动态资源。但是单节点的tomcat本身处理请求的资源是有限的,如果项目中的tomcat既处理动态请求有要处理大量的静态资源。显

2020-09-11 17:44:41 870

转载 阿里高级开发的要求

之前有很多读者会经常问我类似的问题:达到什么水品才能进阿里? 阿里的P6有哪些要求? 我想进阿里,我要准备什么?这些问题我之前从来都是不回答的,因为我那个时候也不太知道标准答案是什么。前几天,写了一篇《没想到,我都来阿里5年了》,总结了一下自己这五年的经历与成长。在这过去的5年里,真的经历了太多太多,我也从一个刚刚毕业的懵懂少年,成长成一个独当一面的技术专家了。也回过头思考了很多很多。刚好现在自己在阿里待了5年了,前4年里经历了两次晋升,从P5到P7,算是大概了解了一些阿里对于人才的要求。

2020-09-09 15:15:17 1131

转载 KMP算法

KMP 算法(Knuth-Morris-Pratt 算法)是一个著名的字符串匹配算法,效率很高,但是确实有点复杂。很多读者抱怨 KMP 算法无法理解,这很正常,想到大学教材上关于 KMP 算法的讲解,也不知道有多少未来的 Knuth、Morris、Pratt 被提前劝退了。有一些优秀的同学通过手推 KMP 算法的过程来辅助理解该算法,这是一种办法,不过本文要从逻辑层面帮助读者理解算法的原理。十行代码之间,KMP 灰飞烟灭。先在开头约定,本文用 pat 表示模式串,长度为 M,txt 表示文本串...

2020-09-01 17:03:28 168

空空如也

空空如也

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

TA关注的人

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