自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 史上更全面的数据库分库分表、数据一致性、主键分配思路!

一. 数据切分关系型数据库本身比较容易成为系统瓶颈,单机存储容量、连接数、处理能力都有限。当单表的数据量达到1000W或100G以后,由于查询维度较多,即使添加从库、优化索引,做很多操作时性能仍下降严重。此时就要考虑对其进行切分了,切分的目的就在于减少数据库的负担,缩短查询时间。数据库分布式核心内容无非就是数据切分(Sharding),以及切分后对数据的定位、整合。数据切分就是将数...

2020-01-18 20:23:23 1592 1

原创 摸不到Java的顶峰,咱就转战大数据,绝不在一棵树上吊死

这篇文章的目的是带那些对大数据不了解又有兴趣的人入门。如果你是老手可以忽略,或者想看看有没有不一样的东西也行。我们学习一个新知识,第一步应该是给它个明确的定义。这样才能知道你学的是什么,哪些该学,哪些又可以先不用管。然而,大数据虽然很火,但其实是个概念没那么清晰的东西,不同的人可能有不同的理解。这次我们不去纠结具体的定义,也忽略那些 4 个 V、6 个 C 之类传统说教的东西,甚至不想...

2020-01-18 20:13:01 603

原创 从基础到高级,Java面试题73道,看看你掌握多少了?

java基础:简述JDK跟JRE的区别 简述path跟classpath的区别 Java的关键字中有没有goto ”static”关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法? Java中的方法覆盖(Overriding)和方法重载(Overloading)是什么意思? Overload和Override的区别? ...

2020-01-18 17:06:30 1953

原创 阿里集团中间件4面:J.U.C并发框架+RocketMQ +MyCat+锁机制+架构

这是一位同学想要阿里中间件的面试题,来了~需要各互联网公司面试题的,可以到文章留言区,告诉你们想要的面试题,小编会持续更新给到大家~中间件一面自我介绍 擅长哪方面的技术? Java有哪些锁种类?(乐观锁&悲观锁、可重入锁&Synchronize等) 比较重要的数据结构,如链表,队列,栈的基本理解及大致实现 J.U.C下的常见类的使用。 ThreadPool...

2020-01-18 16:56:07 459

原创 这可能是迄今为止HashMap详解写的最全的一篇文章

什么是 HashMap?HashMap 是基于哈希表的 Map 接口的非同步实现。此实现提供所有可选的映射操作,并允许使用 null 值和 null 键。此类不保证映射的顺序,特别是它不保证该顺序恒久不变。HashMap 的数据结构 在 Java 编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,HashMap 也...

2020-01-18 15:17:55 1104

原创 你真的了解Tomcat吗之简单搭建一个Tomcat

一、Tomcat主要的作用:接受来自客户端的请求并根据请求流中的信息生成相应的Request对象和用于返回的Response对象;(如请求所使用的协议,HTTP?AJP?;请求资源的URL?等信息放到Request对象中) 调用容器中与URL相对应的处理程序处理该请求; 通过Response对象将服务器处理的结果返回至客户端。二、架构发展过程:2.1 原始的刀耕...

2020-01-17 16:33:49 463

原创 Spring Boot基于Spring Integration 实现MQTT客户端简单订阅功能

1 简介Spring Integration 提供入站(inbound)和出站(outbound)通道适配器,以支持MQTT消息协议。使用这两适配器,需要加入依赖:<!-- Maven --> <dependency> <groupId>org.springframework.integration</groupId> <artifa...

2020-01-17 16:31:54 1792

原创 腾讯面试,居然凉在MySQL上,卧薪尝胆后二次面试入职腾讯

爱因斯坦说过“耐心和恒心总会得到报酬的”,我也一直把这句话当做自己的座右铭,这句箴言在今年也彻底在“我”身上实现了。每一个程序员都拥有一座大厂梦,我也不例外,去年面试腾讯,竟然被MySQL问倒了,很多相关性的问题都没有答上来,才2面就凉凉了。回去之后也潜心复习了,准备了二战,如今终于进入了腾讯,被录用。以下展示的腾讯面试题(含答案)、学习资料、实战文档等,均可以免费分享给大家,需要的朋友,...

2020-01-16 21:51:42 1214

原创 19年阿里P6面试题汇总:吃透这些题,助你砍下高薪offer

阿里巴巴Java虚拟机面试题介绍下 Java 内存区域 Java 对象的创建过程 对象的访问定位有几种 String、StringBuilder、StringBuffer 有什么不同? 什么是双亲委派模型 说说你对类加载器的理解 类加载的过程 运行时数据区中哪些区域是线程共享的?哪些是独享的? Java中的数组是存储在堆上还是栈上的? Java中的对象创建有多少种方式? 如...

2020-01-16 21:41:32 3754 9

原创 2020年大厂面试必备:分布式+设计模式+Redis+JVM性能优化

前言面对即将到来的金九银十,作为一个开发人员,你是否面上了自己理想的公司,薪资达到心中理想的高度?面试:如果不准备充分的面试,完全是浪费时间,更是对自己的不负责。今天给大家分享下我整理的Java架构面试专题及答案,其中大部分都是大企业面试常问的面试题,可以对照这查漏补缺,当然了,这里所列的肯定不可能覆盖全部方式,不过也希望能对即将找工作的朋友起到一些帮助!Java面试的重...

2020-01-16 21:39:11 992

原创 Redis系列(一)底层数据结构之简单动态字符串

前言Redis 已经是大家耳熟能详的东西了,日常工作也都在使用,面试中也是高频的会涉及到,那么我们对它究竟了解有多深刻呢?我读了几本 Redis 相关的书籍,尝试去了解它的具体实现,将一些底层的数据结构及实现原理记录下来。本文将介绍 Redis 中最基础的 字符串 的实现方法。 它是Redis的字符串键的主要实现方法.定义Redis 是使用 C 语言实现的,但是 Redis 中...

2020-01-15 21:07:56 361

原创 如何在 Spring/Spring Boot 中做参数校验?你需要了解都在这里

数据的校验的重要性就不用说了,即使在前端对数据进行校验的情况下,我们还是要对传入后端的数据再进行一遍校验,避免用户绕过浏览器直接通过一些 HTTP 工具直接向后端请求一些违法数据。我个人觉得这个和统一异常处理一样是后端很容易做好的一件事情,同时也是很有必要的事情。如果对后端如何统一异常处理不太清楚的朋友,也可以留言一下,我后面会分享自己在项目中学到的统一异常处理的方法。本文结合自...

2020-01-14 21:16:45 486

原创 JVM学习-GC之追踪式垃圾收集算法基础

学习JVM的垃圾回收,离不开的是追踪式垃圾回收算法,现有的主流Java虚拟机都采用的是追踪式回收算法。对比于引用计数式垃圾收集,追踪式垃圾回收算法都是采用的间接式的回收策略,也就是这种策略并非直接寻找垃圾本身,而是先寻找哪些对象存活,然后反过来判断其余所有的对象为垃圾对象。追踪式回收算法本身包括标记-清除(Mark-Sweep)、标记-复制(Mark-Copy)、标记-整理(Mark-Compac...

2020-01-14 19:35:35 848

原创 Netty快速入门(05)Java NIO 介绍-c

Java NIO SelectorSelector是Java NIO中的一个组件,用于检查一个或多个NIO Channel的状态是否处于可读、可写。如此可以实现单线程管理多个channels,也就是可以管理多个网络链接。前面说过通道就是连接,比如同一时间有很多连接过来,这些连接,也就是channel都会注册到Selector中,Selector就会巡视这些channel,看看哪些...

2020-01-13 17:47:09 379

原创 掌握这些,ArrayList就不用再学了(下)

说这个之前,你先得搞清楚这个 minCapacity 是啥,它现在其实就是底层数组将要添加的第几个元素,看看上一步 ensureCapacityInternal(size + 1);这里 size+1 了,所以现在 minCapacity 相当于是 1,也就是说将要向底层数组添加第一个元素,这一点的理解很重要,所以从 minCapacity 的字面意思理解也就是“最小容量”,我现在将要...

2020-01-11 16:22:54 1010

原创 掌握这些,ArrayList就不用再学了(上)

关于ArrayList的学习ArrayList属于Java基础知识,面试中会经常问到,所以作为一个Java从业者,它是你不得不掌握的一个知识点。????可能很多人也不知道自己学过多少遍ArrayList,以及看过多少相关的文章了,但是大部分人都是当时觉得自己会了,过不了多久又忘了,真的到了面试的时候,自己回答的支支吾吾,自己都不满意????为什么会这样?对于ArrayList这样的知识点的学习,不...

2020-01-11 16:21:52 663

原创 这些常见的java集合面试问题及答案,超级实用!

Java集合框架为Java编程语言的基础,也是Java面试中很重要的一个知识点。Java集合是java提供的工具包,包含了常用的数据结构:集合、链表、队列、栈、数组、映射等。1.Java集合框架是什么?说出一些集合框架的优点?每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集...

2020-01-10 19:38:51 457

原创 你3年工作经验,竟然连单点登录的原理都没答清楚,肯定要被刷啊...

# Single Sign-onSSO是老生常谈的话题了,但部分同学对SSO可能掌握的也是云里雾里,一知半解。本次手撕公司的SSO原理,试图以一种简单,流畅的形式为你提供有用的SSO原理。按照本人一贯行文风格,我们先说什么是SSO,为什么要提出SSO?SSO:在多个系统中,只需要登陆一次,就可以访问其他相互信任的应用系统, 这个技术的提出解决了:1.企业运行...

2020-01-09 15:06:40 468

原创 jvm各个垃圾收集器介绍

jvm各个垃圾收集器介绍1:心血来潮今天吃完饭,吃撑了,也不想写代码,就写着写一篇博客。就来写一个jvm垃圾收集器相关的吧2:概述JVM规范对于垃圾收集器的应该如何实现没有任何规定,因此不同的厂商、不同版本的虚拟机所提供的垃圾收集器差别较大,这里只看HotSpot虚拟机。 就像没有最好的算法一样,垃圾收集器也没有最好,只有最合适。我们能做的就是根据具体的应用场景选择最合适的垃圾收...

2020-01-09 14:46:46 1750

原创 Redis面试热点之底层实现篇(续)

0.题外话你可能会抱有疑问:我只是使用Redis的功能并且公司的运维同事都已经搭建好了平台,只需要在线申请一下配置和获取连接的地址就可以愉快地使用了,为啥还要这么深入的理解底层的数据结构呢?有啥用呢?其实这个问题可以分几个方面去回答吧,笔者试着去解释一下原因:好奇心作为技术人员,没有好奇心会让我们错过很多精彩,难道你对如此强悍的NoSQL是如何跑起来的不感兴趣吗?好奇心让我们知道的更...

2020-01-06 20:08:52 417

原创 【源码解析】面试必问的LinkedList,看这篇文章就够了

前言LinkedList由于实现了Deque这个接口,所以可以当栈和队列使用。不过一般要用栈或队列的时候推荐使用ArrayDeque,所以这里就不讲LinkedList的栈和队列功能了????。本文主要讲些常用的方法。LinkedList内部是由双链表组成的,里面存放着一个个Node,每个Node又包含三个元素(prev,item,next):prev:指向前一个Node item:存放存...

2020-01-06 15:51:49 520

原创 redis精进 - 玩归玩、闹归闹,别拿Bitmap开玩笑

先赞后看,养成习惯❤️BitMap 是什么8 个 bit 组成一个 Byte,所以 bitmap 极大的节省储存空间 你可以把它理解为一个特殊处理过的 字符串 key代表业务属性、标签。一个 bit 位来表示某个元素对应的值或者状态。 举个例子:登记每天活跃用户,key 代表 登录时间, 1、2、3...代表 用户idkey 0 1 2 3 4 5 6 7 log...

2020-01-05 16:30:45 486

effective-java.pdf

《Effective Java》是Java程序员必看的一本书神书,号称Java四大名著之一。随着Java 8,9, 10 ,甚至11的发布,Java语言发生了很多的变化,之前的第二版有些内容已经不太适用了。 这本书第三版的英文版已经于去年发布。在发布后,便有程序员开始翻译其中文版,目前所有章节均已翻译完成,目前已经开放阅读及下载。

2020-04-10

空空如也

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

TA关注的人

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