1 javajiagou

尚未进行身份认证

暂无相关简介

等级
TA的排名 8w+

Spring源码编译下载

下载源码2B哥在家远程办公,心血来潮,整理点spring源码玩玩。可以在github上下载 ,也可以下载我课堂的源码(有注释)git clone https://github.com/spring-projects/spring-framework.git配置gradle 编译环境Spring源码是通过gradle编译的,所以要先配置gradle编译环境gradle下载安装 下...

2020-02-04 13:23:36

一致性Hash算法实现原理详解

Hash环我们把232次方想成一个环,比如钟表上有60个分针点组成一个圆,那么hash环就是由232个点组成的圆。第一个点是0,最后一个点是232-1,我们把这232个点组成的环称之为HASH环。![图片](https://uploader.shimo.im/f/FcmwzbmsdosBR1Q4.png!thumbnail)​一致性Hash算法将memcached物理机节点通过Has...

2020-01-10 16:14:37

【金三银四-JVM系列】CMS收集器与GC日志分析定位问题详解

开头:今天2B哥要和大家分享一篇硬货,为什么呀?因为有两个好事情:一、哥升级了LV2了 哈哈心情倍爽。二、拿到了公司给的2千股在公司呆了2年了,终于成为了东哥的好兄弟。CMS收集器实战:实战开始,准备好了没构建Spring Boot项目:模拟业务场景代码:@RestControllerpublic class IndexController {/*** * 存bi...

2020-01-09 14:35:59

【金三银四】JVM虚拟机CMS和G1收集器详解

前言:今天2B哥跟各位牛人分享JVM相关的知识点,今天重点介绍CMS和G1收集器,某些小哥哥就问为什么不讲讲其他收集器?按面试经验来说,这两种收集器问的最多,当然优先讲这两种呀,但是,我说但是,如果你关注我还能看到更多关于JVM的知识,保证让你收获满满,废话不多说,直接上干货。 收集器于JVM堆的关系CMS收集...

2020-01-08 13:44:10

面试官:说说事务的ACID,什么是脏读、幻读?

一、事务事务是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。–摘自百科在MySQL里,事务是在引擎层面实现,比如MyIsam不支持,InnoDB支持二、ACID提到事务,肯定会想到 ACID 是吧,自行感受一下概念,然后我们来讲讲隔离性的问题。原子性:事务的所有操作要么全部成功,要么全部回滚。一致性:总是从一个一致性的状态转换到另一个一致性的状态...

2020-01-07 13:28:01

【金三银四】Redis面试热点之底层实现篇

0.前言最近一周没有技术文章产出,主要是Q4马上结束各种业务都在冲量,笔者一直都在疯狂工作甚至还有些焦虑到偶尔失眠,由于没有成块的时间研究新东西,所以就把之前看过的东西抽时间总结了下。计划分三篇来梳理Redis的相关热点问题,本次为开山底层实现篇,通过本文你将了解到以下内容: Redis的作者、发展演进和江湖地位 ...

2020-01-06 14:02:22

2020年Java工程师成神之路

一、基础篇JVMJVM内存结构堆、栈、方法区、直接内存、堆和栈区别Java内存模型内存可见性、重排序、顺序一致性、volatile、锁、final垃圾回收内存分配策略、垃圾收集器(G1)、GC算法、GC参数、对象存活的判定JVM参数及调优Java对象模型oop-klass、对象头HotSpot即时编译器、编译优化类加载机制classLoader、类加载过程、双亲委派(破...

2020-01-05 15:41:50

Idea调试Rocketmq源码编译运行

Rocketmq源码编译运行下载从github下载源码,比较慢,也可以从gitee下载源码目录结构名称作用brokerbroker模块:c和p端消息存储逻辑client客户端api:produce、consumer端 接受与发送apicommon公共组件:常量、基类、数据结构tools运维tools:命令行工具模块store存储模块:消...

2020-01-05 12:58:37

分库分表知识详解与分库分表中间件介绍

为什么需要分库分表:如果一个网站业务快速发展,那这个网站的流量也会增加。数据的压力也会随着而来。比如电商系统来说双十一大促对订单数据库的压力很大。TPS十几万并发量,如果是传统的架构(一主多从),主库容量肯定无法满足这么高的TPS。业务越来越大,单表数据超出了数据库支持的容量。持久化磁盘IO,传统的数据库性能瓶颈,产品经理业务必须这么做改变程序。数据库下刀子切分优化:1、换数据库》o...

2020-01-03 13:14:10

【金三银四】深入理解Mysql索引底层数据结构解密

索引优化面试题案例CREATE TABLE `employees` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名', `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄', `position` var...

2020-01-02 13:21:31

【金三银四】深入理解Mysql索引底层数据结构解密

索引优化面试题案例CREATE TABLE `employees` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(24) NOT NULL DEFAULT '' COMMENT '姓名', `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄', `position` var...

2020-01-02 13:15:09

2019年18家大厂Java面试题整理了350道(分布式+微服务+高并发)

前言2019年还有不到2个月的时间就结束了,这一你,你收获了多少?前段时间一直有粉丝问我,有没有今年一些大厂Java面试题总结?最新抽时间整理了一些,分享给大家,大家一起共享学习! 一、性能调优系列1.Tomcat性能调优JVM参数调优: -Xms<size> 表示JVM初始化堆的大小,一Xmx<size>表示JVM堆的最大值。这两个值的大小一般根据...

2019-12-31 21:43:52

Mybatis源码分析第三章-映射⽂件解析过程

本章,我们来分析一下映射文件解析的过程。与配置文件不同,映射文件用于配置 SQL语句,字段映射关系等。映射文件中包含、、、、<select|insert|update|delete>等二级节点,这些节点将在接下来内容中进行分析。本章除了分析常规的 XML 解析过程外,还会向大家介绍 Mapper 接口的绑定过程,以及其他一些知识。内容较多,需要有一定的耐心阅读。3、映射⽂件解析...

2019-12-29 14:55:17

Mybatis源码分析第二章-配置⽂件解析过程

从本章开始,正式进入源码分析阶段。按照 MyBatis 启动流程,本章将会对 MyBatis 解析配置文件的过程进行分析。我们在使用 MyBatis 框架时,通常会进行一定的设置,使其能更好的满足我们的需求。对于一个框架来说,提供较为丰富的配置文件,也是其灵活性的体现。本章将会介绍 MyBatis 配置文件中的大部分节点解析过程,包含但不限于 properties、settings、typeAli...

2019-12-29 14:51:18

【金三银四】ArrayList图解存储原理与数据结构揭秘

前言:你好,早上、中午、下午、晚上好。我是辛巴哥。一名无缘985,日常996工程师。今天我辛巴哥来教娜娜学ArrayList开始快速import java.util.ArrayList;/**** * 求关注 微信搜:Java大型网站架构 */public class ArrayListDemo { public static void main(String[] a...

2019-12-28 13:42:35

【金三银四】HashMap图解原理与数据结构二【JDK8红黑树】

约会被拒上次给娜娜教完【金三银四】《HashMap图解原理与数据结构》之后,娜娜自信满满的去面试了。今天我约娜娜出来看电影。娜娜没心情。 娜娜面试又被虐了,辛巴哥哥很难受,因为周末没人陪我去看电影了,我决定要帮帮娜娜小姐姐。回到过去让我们来回忆下上篇我们介绍的hashmap。JDK1.8以前HashMap底层数据结构和算法:​ 数组+链表+哈希算法数组数组:采用一段连...

2019-12-25 21:32:16

【金三银四】HashMap图解原理与数据结构一【JDK7】

面试被虐你好,早上、中午、下午、晚上好。我是狮子王辛巴。一名无缘985,日常996工程师。作为一名为人民币服务的工程师,学好技术是多么重要的事情。今天跟各位老铁们详细说说日常的开发中经常用到的HashMap。怎么可能骗你,真的哦,无论我们在开发中还是在面试的时候HashMap比问好不好。上次“娜娜”去熊厂就被面试官问到了,被虐的体无完肤。哼~哼~哼哼哼哼哼~哼~~~~娜娜宝贝别...

2019-12-19 12:22:33

分布式缓存开源框架Flasher介绍

写在前面今天给大家推荐款国内某一线电商平台Redis分布式缓存框架。推荐理由:日均访问量100亿.QPS:157W。包含57项业务。也是工作3-5年以上的程序员必看的源码资料,千万别错过。Flasher特点1、基于Jedis Cluster开发的客户端支持Redis Cluster集群。2、对被调用方(客户端)侵入极少,上手极快。3、支持动态增加节点,客户端自动感知。4、支持客...

2019-06-18 19:40:24

互联网数据库分库分表思路和分法详解附带国内开源中间件

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

2019-06-18 11:07:02

Redis缓存穿透、缓存雪崩、并发问题分析与解决方案

把redis作为缓存使用已经是司空见惯,但是使用redis后也可能会碰到一系列的问题,尤其是数据量很大的时候,经典的几个问题如下:1、缓存和数据库间数据一致性问题分布式环境下(单机就不用说了)非常容易出现缓存和数据库间的数据一致性问题,针对这一点的话,只能说,如果你的项目对缓存的要求是强一致性的,那么请不要使用缓存。我们只能采取合适的策略来降低缓存和数据库间数据不一致的概率,而无法保证两者间的...

2019-06-12 10:52:10

查看更多

勋章 我的勋章
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 博客之星-入围
    博客之星-入围
    授予每年博客之星评选结果第21-200名的用户