自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(91)
  • 收藏
  • 关注

原创 外包离职,历时学习416天,成功上岸百度,分享成长过程~

前言:没有绝对的天才,只有持续不断的付出。对于我们每一个平凡人来说,改变命运只能依靠努力+幸运,但如果你不够幸运,那就只能拉高努力的占比。2020年7月,我有幸成为了百度的一名Java后端开发,正如标题所说,我从外包辞职了,10000小时后,走进百度拿下了offer。相信同行都清楚,从外包进大厂有多难,运气之余,也离不开我自己的脚踏实地,所幸每踏出的一步都留下了厚厚的脚印。下文内容涉及到:面试题(含答案)+学习笔记+电子书籍+学习视频,免费打包分享百度Java工程师面试经历还原1.百度4面面试题

2021-06-02 20:45:29 5119 27

原创 反射动态操作类+注解灵活打标签 | 反射注解结合灵活高效实战

功能需求针对一张表做一个表单查询功能!这个功能十分的简单没有技术难点无非就是我们在写查询时注入条件写成动态条件判断!其他就没啥了涉及公司内部数据,这里关键数据已经被我换掉了!除了查询以外,我们还有生成数据的功能。结合对数据的管理我们来看看如何注解反射双管齐下数据说明首先数据存储在mongo中,查询是通过MongoTemplate来实现数据的查询存储的数据时间数据是时间戳,页面展示时需要格式化。这部分由接口处理关于数据状态已验收、未验收实际存储的是1、2条件查询时目前是上面几种!每

2021-06-29 22:29:45 386 2

原创 从外包到腾讯,四年软件路,一路坎坷,把最好的学习结果和经验分享给你们,助你们成功上岸

个人经历:我是一个地地道道的东北人,有着哈尔滨和大庆两地的混血,出生在大庆,小学、初中、高中都在大庆让胡路区念的,大学考的远点,在大庆的另外一个区,萨尔图区,名字叫做东北石油大学,是一个不出名的双非普通一本院校,我读的专业也不是这个学校好的专业,是一个万金油专业,电子信息工程。也就是说,我从出生,一直到大学毕业,整整22年的时间,都在那个我最熟悉的城市,大庆。我不知道大家对这个城市有没有了解,大庆油田、铁人王进喜,而我,就是一个石油子弟,这个称呼大家可能不太熟悉,但是在10年那段时间,这个称呼可以保证

2021-06-28 17:02:32 897 12

原创 让我们一起进大厂-高频面试题Redis之缓存穿透、缓存击穿和缓存雪崩

一、Redis的缓存穿透1、概念:用户需要查询一个数据,但是redis中没有(比如说mysql中id=-1的数),直接去请求MySQL,当很多用户同时请求并且都么有命中!于是都去请求了持久层的数据库,那么这样会给持久层数据库带来非常大的压力。一般出现这样的情况都不是正常用户,基本上都是恶意用户!2、解决方案①布隆过滤器:布隆过滤器是一种数据结构,对所有可能查询的参数以hash形式存储,在控制层先进行校验,不符合则 丢弃,从而避免了对底层存储系统的查询压力;因为篇幅原因,在此不展开讲,后面会出

2021-06-26 11:07:19 371 1

原创 强强联合,一份最适合你的后端面试指南,最终5轮面试拿下阿里Java岗Offer(定薪45K),确定不心动?

前言不论是校招还是社招都避免不了各种面试、笔试,如何去准备这些东西就显得格外重要。不论是笔试还是面试都是有章可循的,我这个“有章可循”说的意思只是说应对技术面试是可以提前准备。 我其实特别不喜欢那种临近考试就提前背啊记啊各种题的行为,非常反对!我觉得这种方法特别极端,而且在稍有一点经验的面试官面前是根本没有用的。建议大家还是一步一个脚印踏踏实实地走。运筹帷幄之后,决胜千里之外!不打毫无准备的仗,我觉得大家可以先从下面几个方面来准备面试:自我介绍。(你可千万这样介绍:“我叫某某,性别,来自哪里,学校是

2021-06-24 17:50:56 344 5

原创 美团面试官问我一个字符的String.length()是多少,我说是1,面试官说你回去好好学一下吧

public class testT { public static void main(String [] args){ String A = "hi你是乔戈里"; System.out.println(A.length()); }}以上结果输出为7。小萌边说边在IDEA中的win环境下选中String.length()函数,使用ctrl+B快捷键进入到String.length()的定义。 /** * Returns the l.

2021-06-24 13:34:29 880

原创 膜拜!阿里内部都在强推的K8S(kubernetes)学习指南,不能再详细了

为什么要有Kubernetes(K8S)?有了Docker、Docker-Compose,且Docker、Docker-Compose操作起来也不复杂,为什么还要来一个Kubernetes?的确,有了Docker、Docker-Compose的确是方便了运维的部署,直接几条命令就可以启动起来一个环境了,在加个Volume修改对应的配置文件,就可以实现大部分的环境部署需求。问题在于,如果此时服务器的性能不够用了,怎么办?加硬件,在学过分布式思想时,都知道到了某种程度,加机器比在一台机器上堆硬件还要便宜

2021-06-23 16:23:03 322 4

原创 几种志框架:Log4j Log4j2 SLF4J logback和Apache Commons Logging的比较

作为Java开发人员,对于日志记录框架一定非常熟悉。而且几乎在所有应用里面,一定会用到各种各样的日志框架用来记录程序的运行信息。而对于一个成熟的Java应用,这个是必不可少的。在开发和调试阶段,日志可以帮助我们更快的定位问题;而在应用的运维过程中,日志系统又可以帮助我们记录大部分的异常信息,通常很多企业会通过收集日志信息来对系统的运行状态进行实时监控预警。总体概览目前的日志框架有JDK自带的logging,log4j1、log4j2、logback ,这些框架都自己定制了日志 API ,并且有相应的实

2021-06-22 16:26:30 527

原创 重磅来袭!不愧是阿里内部Spring Cloud Alibaba 电子版教程,阿里大佬带你打怪升级阿里P8

前言Spring Cloud 自 2016 年 1 月发布第一个 Angel.SR5 版本,到目前 2020 年 3 月发布 Hoxton.SR3 版本,已经历经了 4 年时间。这 4 年时间里,Spring Cloud 一共发布了 46 个版本,支持的组件数从 5 个增加到 21 个。Spring Cloud Alibaba 是阿里中间件团队主导的一个新生项目,正处于高速迭代中。其次,对于中国用户来说,Spring Cloud Alibaba 还有一个非常特殊的意义:它将曾经红极一时的 Dubbo,

2021-06-21 16:13:13 291 3

原创 Linux运维-搭建高可用Redis缓存

前言Redis是一个高性能的key-value数据库,现时越来越多企业与应用使用Redis作为缓存服务器。楼主是一枚JAVA后端程序员,也算是半个运维工程师了。在Linux服务器上搭建Redis,怎么可以不会呢?下面楼主就带着大家从0开始,依次搭建:Redis单机服务器 -> Redis主从复制 -> Redis-Sentinel高可用。逐步搭建出高可用的Redis缓存服务器。搭建Redis1. 下载并解压首先从Redis官网下载Redis并解压,楼主使用的版本是4.0.2。依次执行如下

2021-06-18 18:19:44 182

原创 阿里P8大神教你十分钟构建好SpringBoot + SSM框架 成功晋升

目前最主流的 java web 框架应该是 SSM,而 SSM 框架由于更轻便与灵活目前受到了许多人的青睐。而 SpringBoot 的轻量化,简化项目配置, 没有 XML 配置要求等优点现在也得到了大众的青睐而本文,我将教大家如何在 intellij idea 中快速构建好一个 Maven + Spring + SpringMVC + MyBatis + SpringBoot 的框架,做到了足够精简,让你可以立刻开始你的 web 项目一. 创建项目选择 Spring Initiallizr添.

2021-06-18 17:36:10 245

原创 2021阿里最新面试题:Mybatis中的Dao接口和XML文件里的SQL是如何建立关系的?学习完这份资料带你成功上岸阿里(2021最新版)

我们身为技术人员,最怕的就是安于现状,一直在原地踏步,那么你可能在30岁就会迎来自己的职业危机,因为你工作这么久提升的只有自己的年龄,技术还是万年不变!如果你想在未来能够自我突破,圆梦大厂,那或许以上这份964页的“1000道Java程序员面经” 你需要阅读阅读,希望能够对你的职业发展有所帮助。

2021-06-17 16:08:09 251

原创 大家都说 Java 反射效率低,你有知道这个原因?

预备知识了解 Java 反射基本用法看完本文可以达到什么程度了解 Java 反射原理及 Java 反射效率低的原因文章概览我们在 Java 开发中,难免会接触到反射,而在一些框架中,反射的运用更是常见。我相信,每次提到反射,大家的第一反应一定是反射效率低,尽量少使用。但是反射的效率到底低多少?反射效率低的原因在哪里?这篇文章就来探索一下这些问题。由于本机上安装的是 openjdk 12,所以这里就使用 openjdk 12 源码进行分析。我们先看结论,然后分析一下 Java 反射的原理,

2021-06-17 13:59:56 789

原创 1 台 Linux 服务器上,部署多个 Tomcat,并以 service 方式运行

适用场景有多个 JavaWeb 项目需要部署在同一台 Linux 服务器上,而这些项目开发时,使用的 JDK 和 Tomcat 版本都不相同,多个 Tomcat 以 Service 服务方式运行,可通过命令分别启动/停止/重启,或者开机自启。详细过程步骤 1 :官网下载项目适用的 Tomcat 版本。步骤 2 :将 Tomcat 解压到 Linux 服务器上不同的目录,例如: /opt/tomcat1 、opt/tomcat2步骤 3 :Tomcat1 的配置文件保持默认即可(有需要.

2021-06-16 13:38:58 257 1

翻译 收录99+案例!Github获赞百万的性能优化小册也太香了,性能优化原来如此简单

性能优化性能优化四字想必大家都有到各大招聘网站与博客平台上见到,可以说近年来性能优化已经成为评测你是否是一个有深度的程序员的标准。在我们身边有很多同行,层次不一,但是放眼观察,我们很容易就可以看到那些是业务型程序员,那些是有层次的程序员。我们需要做的就是注重细节,注重性能,逐渐成为一个有深度的程序员!对于性能的优化很多初级程序员可能不知道该如何入手,遇到性能问题常常会不知所措,手中也没有一份系统的学习资料。对此互联网雷锋(小编我)特地从一位老哥手上拿到一份性能优化小册,小册收录了300+性能调优案例,大

2021-06-16 10:50:49 128 1

翻译 源码不止Spring!发布GitHub一天,获赞7.5K 阿里Java程序员源码进修指南我粉了

为什么要阅读源码?不知道大家有没有发觉,最近面试关于源码这个东西是问得越来越多!也不知道大家最近有没有去面试,上周我一老友去面试了快手,阿里,美团,字节等大厂,上去就是看不完的源码,搞得他心态大崩,搁家里怀疑人生,前几天才缓回来。可能有的人就会有疑问了,看源码能得到啥?看了能涨薪吗?答案是必然的,能看懂源码是程序员的内功体现。对一个技术栈想要知其然也知其所以然的话肯定是要去看源码的,学会看源码无论是对你工作上排除BUG,或者是改造项目、学习设计思想都是有很大裨益的。如何阅读源码?为了达到事半功倍的效

2021-06-16 10:31:31 291 2

原创 你发现了吗?现在的Java面试已经和2年前完全不同了!

最近技术群的一个问题,引起了我的思考:今年,还存在金三银四吗?大家都知道程序员涨薪主要还是要靠跳槽来完成!但是我们都知道,无论是考试,还是求职,这个难度,参加人数是影响难度的一个很大因数(当然特别牛逼的大佬可以忽略这句话)。每年高考、考研人数都在增加,这求职人数也必然是每年都会增加的,因此,就算完全不出新技术,求职的难度也会越来越大。最近和不少出去面试的朋友闲聊,都发现,两年前面试高级开发,会JUC、JVM相关的知识点都是加分项,现在反而成了基本要求,不会这些,面试都是被吊起来打!两年前,JV.

2021-06-15 11:37:14 147 1

原创 分享IntelliJ IDEA 小技巧之创建类注释模板

一、设置IDEA 中的类注释模板File -> Settings -> Editor -> File and Code Templates -> Files选择Class、Interface 、Enum 等等,我们都可以看到,在右侧区域中,在public class 上面,都有一行 #parse(“File Header.java”) 。MacOS上操作略有差异:IntelliJ IDEA -> Preferences -> File and Code Templa

2021-06-11 15:29:03 1380 4

原创 GitHub标星115K超全Java进阶教程,怒肝三天吐血整理成PDF版

最近在GitHub上找到了一份标星高达115k的《Java超全进阶教程》,内容真的很不错,来简单看一下目录。包括 Java 基础、Java 容器、Java 并发、Java 虚拟机和 Java IO,非常全面。花了三个小时把这份教程整理成了PDF版,这份教程的质量真的高,如果你也对这份 PDF 感兴趣的话,可以通过下面的方式获取。获取方式查看文末Java基础其中包括了数据类型、String、运算、关键字、Object通用方法、继承、反射、异常、泛型、注解、特性等知识点的详细解析,还有参考资料

2021-06-10 15:45:08 499 3

转载 厉害了!阿里内部都用的Spring+MyBatis源码手册,实战理论两不误

目前大部分的 Java 互联网项目,都是用 Spring MVC + Spring + MyBatis 搭建平台的。使用 Spring IoC 可以有效的管理各类的 Java 资源,达到即插即拔的功能;通过 Spring AOP 框架,数据库事务可以委托给 Spring 管理,消除很大一部分的事务代码,配合 MyBatis 的高灵活、可配置、可优化 SQL 等特性,完全可以构建高性能的大型网站。毫无疑问,MyBatis 和 Spring 两大框架已经成了 Java 互联网技术主流框架组合,它们经受住了大数据

2021-06-09 13:43:38 158 1

原创 学Java得趁早,难不成等头都秃了,你才来?从零到进阶架构,覆盖全网所有技术点3283页笔记、pdf教程进行分享

又快到了“金九银十”面试求职高峰期,在金三银四时也参与过不少面试,2021都说工作不好找,也是对开发人员的要求变高。前段时间自己有整理了一些Java后端开发面试常问的高频考点问题做成一份PDF文档(1000道高频题),同时也整理一些图文解析及笔记,今天在这免费分享给大家,希望大家在现在的校招和三个月后的面试做好复习,长期的积累和短期的突击让自己能找到一个满意的工作!Java成长笔记:1.Java基础复盘2.Web编程初探3.SSM从入门到精通4.SpringBoot快速上手二、1-3年高

2021-06-07 10:40:27 106 2

原创 BAT面试必问:a减b小于0与a小于b什么区别?溢出感知代码?

BAT面试必问:a-b<0与a<b什么区别?overflow-conscious代码什么玩意?读过JDK源码的同学,尤其是读过Collection框架的同学,肯定遇到过下面这种代码:第一次读到这样的代码,你可能跟我一样感到困惑,为什么不直接写成 “newCapacity < minCapacity”,而是更麻烦的"newCapacity – minCapacity < 0"呢?不过,当看到那个注释"overflow-conscious code"之后,你或许明白了一点点,这

2021-06-05 21:23:18 546 4

原创 Spring boot项目整合阿里巴巴druid数据库连接池,学了几年Java你这都还不懂?我儿子都知道了

Druid连接池是阿里巴巴开源的数据库连接池项目,后来贡献给Apache开源;Druid的作用是负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而不是再重新建立一个;Druid连接池内置强大的监控功能,其中的StatFilter功能,能采集非常完备的连接池执行信息,方便进行监控,而监控特性不影响性能。Druid连接池内置了一个监控页面,提供了非常完备的监控信息,可以快速诊断系统的瓶颈。SpringBoot 1.x版本默认使用的的tomcat的jdbc连接池,由于jdbc性

2021-06-04 21:44:37 192

原创 Apache Solr搜索引擎搭建、配置、使用详细教程

最近因业务中需要对数据库里面的数据进行多维度检索,完全依赖SQL已经无法满足业务的需求了,显然我们需要搜索技术的支持。这玩意也没啥可技术调研的,基本上就如下几种方案:自己搭建搜索引擎,采用ElasticSearch自己搭建搜索引擎,采用Solr使用云服务,使用阿里云的开放搜索产品或者ES产品业务场景:不需要数据实时同步数据量小、访问频次低,因此单机即可能提供各个字段的多维度模糊查询能简单快速上手,容易维护成本低基于以上场景,基本上就pass掉了使用云服务,因为它真的不便宜,最便宜

2021-06-04 20:58:22 1028

原创 校招:JAVA后端面试应该掌握到什么程度?全网Java学习路线最完整,最详细的版本,助你成功拿到满意的offer

2021年最新版Java校招面试题目合集:1.什么是Java虚拟机?为什么Java被称作是“平台无关的编程语言”?Java虚拟机是一个可以执行Java字节码的虚拟机进程。 Java源文件被编译成能被Java虚拟机执行的字节码文件。Java被设计成允许应用程序可以运行在任意的平台,而不需要程序员为每一个平台单独重写或者是重新编译。Java虚拟机让这个变为可能,因为它知道底层硬件平台的指令长度和其他特性。2. JDK和JRE的区别是什么?JRE: Java Runtime Environment

2021-06-03 16:30:59 685 5

原创 这篇Kafka笔记真是写的太好了!建议收藏,看完也许你就掌握Kafka了

推荐阅读:946页“JAVA高级架构必问面试精华”,金九银十社招全拿下kafka 由 LinkedIn公司推出的一个高吞吐的分布式消息系统,通俗的说就是一个基于发布和订阅的消息队列,官网地址:https://kafka.apache.org/intro应用场景异步解构:在上下游没有强依赖的业务关系或针对单次请求不需要立刻处理的业务系统缓冲:有利于解决服务系统的吞吐量不一致的情况,尤其对处理速度较慢的服务来说起到缓冲作用消峰作用:对于短时间偶现的极端流量,对后端的服务可以启动保护作用数据流

2021-06-03 15:40:33 397 3

转载 在GitHub上24小时星标31K+的Java后端学习路线+全网最全面试手册

2021年的互联网行业竞争越来越严峻,面试也是越来越难,一直以来我都想整理一套完美的面试宝典,奈何难抽出时间,这套完整的java后端学习路线以及1000+道的Java面试手册我整理了整整1个月,上传到Git上目前star数达到了30K+这套互联网Java工程师面试题包括了:MyBatis、ZK、Dubbo、EL、Redis、MySQL、并发编程、Java面试、Spring、微服务、Linux、Springboot、SpringCloud、MQ、Kafka面试专题(共946页,32W字)在写这个文章之前,

2021-06-01 16:27:04 1707 27

转载 说要内推阿里的学长,替我整理好的Java面试题,分享给大家

就在我还在为618刷淘宝清购物车的时候,群里忽然弹出一条消息引起了我的注意:之前去了阿里的学长,在群里说要内推,我就迫不及待的问了下:具体的岗位需求是什么样的?然后就有了接下来的聊天内容当然看了看职位要求,再看看自己,觉得自己还是太菜了!对不起,我不配,还是安心搬砖吧。不过最后,我还是厚颜无耻的让学长帮忙总结了下阿里的面试题以及复习资料,这里分享给大家!常考的JVM面试题1、JVM内存模型2、JVM垃圾回收算法3、JVM运行内存的分类4、Java内存堆和栈区别5、JVM垃圾收集器有哪些

2021-05-31 22:04:03 142 2

原创 Kafka原理篇:图解kafka架构原理

今天我们来深入讲解 Kafka 的架构和实现原理。[码哥]将从架构和细节入手,以生动的图深入讲解 Kafka 的实现原理。我想很多同学之前可能已经看过很多 Kafka 原理相关的文章,但往往看时"牛逼"声连连,激情满满,总觉得自己又学习到了各种“吊炸天”的技术。但很多同学往往是不觉明厉,把文章结合面试题背一背还能应付一下半吊子面试官。可以遇到老司机面试官,或是进入实战,却对很多概念和实现摸棱两可。所以,决定图解 Kakfa,却让很多半懂不懂的同学可以加深对 Kafka 实现原理的理解。同时建议读者同学

2021-05-31 16:24:30 344 6

原创 CTO问我Pulsar到底能不能取代Kafka

Pulsar是一款分布式发布/订阅消息平台,近两年非常火,被称为下一代的消息流平台,大有取代Kafka的势头。今天我们就来比较一下Pulsar跟Kafka。历史背景Pulsar源自Yahoo,于2016年开源并捐献给Apache基金会,并在2018年9月升级成为Apache顶级项目。Kafka最初由Linkedin开发,并于2010年贡献给了Apache基金会,之后成为Apache顶级项目。架构KafkaKafka架构由broker和zookeeper组成,如下图:[1]注意:Kafka2.8版本可以不依赖

2021-05-29 09:28:29 127 5

原创 学会这10种JAVA定时任务多种方式集锦,我有点飘了

前言最近有几个读者私信给我,问我他们的业务场景,要用什么样的定时任务。确实,在不用的业务场景下要用不同的定时任务,其实我们的选择还是挺多的。我今天给大家总结10种非常实用的定时任务,总有一种是适合你的。一. linux自带的定时任务crontab不知道你有没有遇到过这种场景:有时需要临时统计线上的数据,然后导出到excel表格中。这种需求有时较为复杂,光靠写sql语句是无法满足需求的,这就需要写java代码了。然后将该程序打成一个jar包,在线上环境执行,最后将生成的excel文件下载到本地。为了减小对线上

2021-05-28 09:42:19 1221 5

原创 红黑树之 Java的实现

红黑树的介绍红黑树(Red-Black Tree,简称R-B Tree),它一种特殊的二叉查找树。红黑树是特殊的二叉查找树,意味着它满足二叉查找树的特征:任意一个节点所包含的键值,大于等于左孩子的键值,小于等于右孩子的键值。除了具备该特性之外,红黑树还包括许多额外的信息。红黑树的每个节点上都有存储位表示节点的颜色,颜色是红(Red)或黑(Black)。红黑树的特性:(1) 每个节点或者是黑色,或者是红色。(2) 根节点是黑色。(3) 每个叶子节点是黑色。 [注意:这里叶子节点,是指为空的叶子

2021-05-27 12:19:39 257 2

原创 8 张图带你理解 Java字串符,异常类,集合类,同步,别名,堆和栈,Java虚拟机,你看懂了吗?

一图胜千言,如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。1、字符串不变性下面这张图展示了这段代码做了什么String s = “abcd”;s = s.concat(“ef”);2、equals()方法、hashCode()方法的区别HashCode被设计用来提高性能。equals()方法与hashCode()方法的区别在于:如果两个对象相等(equal),那么他们一定有相同的哈希值。如果两个对象的哈希值相同,但他们未必相等(equal)。3、Java异常类的层次结构图中

2021-05-26 17:01:04 144 5

原创 946页“JAVA高级架构必问面试精华”,金九银十社招全拿下

前言我本科毕业后在老东家干了两年多,老东家算是一家”小公司”(毕竟这年头没有 BAT 或 TMD 的 title 都不好意思报出身),毕业这两年多我也没有在大厂待过,因此找坑的时候是非常非常虚的。迫于心慌,我好好思考了一阵来给自己打气,当时真正找坑和准备面试的过程大概分为这几个阶段:面试准备反思:自己是不是真的要离职,假如不离职,在老东家接下来应该做什么才能继续提升?定位:我在硬性技能(编码、架构)上的长处在哪?我在软技能(沟通,团队)上的长处在哪?这步顺带写了简历面试准备:我自己从Java核心

2021-05-26 10:46:01 3534 31

转载 铁汁!高并发这些东西都是虚拟的,你都理解透彻了嘛?(高并发目标/高并发构架演进/分布式/面向服务架构/高并发平台)

推荐阅读:京东后端Java高级架构师面经+面试题:Spring+多线程+MySQL慎入,作者高并发搞得少(没搞过),这里面水太深,什么高并发,大流量的东西都是虚拟的,作者还太年轻,没有那个经历,把握不住。系统只有几QPS,开心快乐就行,不PK,文明PK。高并发,你把握不住的作为一个高并发的门外汉,尝试结合学过的课程和一些网上的资料来整理一下对于高并发的认识。——实战是不可能实战的,只能动动嘴皮这样子。什么是高并发高并发指的是系统同时处理很多请求。高并发是一个结果导向的东西,例如,常见的高.

2021-05-25 14:42:24 2907 6

原创 卷不动了?300 秒快速了解 Java 9 - 16 新特性,助你脱离内卷

一键三连再看,养成好习惯JAVA 这几年的更新实在是太太太……快了,JAVA 8 都还没用多久,16 都已经发布了。自从 JAVA 8 发布了 Lambda 和 Stream 之后,JAVA 就像打了鸡血一样,半年一个版本的发布,生产队的驴也没这么勤快导致我们现在完全跟不上 JAVA 发布的节奏,我司目前还停留在 JAVA 8,甚至部分老系统还在使用 JAVA 7,根本不能轻易的升级。 ​不过虽然暂时用不上最新版本的 JAVA,但了解每个新版本的主要特性还是很重要的,不然哪天真跟着升级了,那还不得一

2021-05-24 14:39:02 257

转载 不想进BAT的Java程序员不是好程序员,BAT后端Java岗面试真题分享

一. JDK/JRE/JVM 三者之间的联系与区别JDK :开发者提供的开发工具箱,是给程序开发者用的。它包括完整的JRE(Java Runtime Environment),Java运行环境,还包含了其他供开发者使用的工具包。JRE :(Java Runtime Environment) JVM运行时所须的包依赖的环境都在JRE中。JVM :当我们运行一个程序时,JVM负责将字节码转换为特定机器代码,JVM提供了内存管理、垃圾回收和安全机制等。这种独立于硬件和操作系统,正是Java程序可以一次编写.

2021-05-24 09:06:07 173 1

原创 Java并发之AQS详解

一、概述谈到并发,不得不谈ReentrantLock;而谈到ReentrantLock,不得不谈AbstractQueuedSynchronizer(AQS)!类如其名,抽象的队列式的同步器,AQS定义了一套多线程访问共享资源的同步器框架,许多同步类实现都依赖于它,如常用的ReentrantLock/Semaphore/CountDownLatch…。若有不正之处,请谅解和批评指正,不胜感激。二、框架它维护了一个volatile int state(代表共享资源)和一个FIFO线程等待队列(多线

2021-05-24 09:03:14 153 3

原创 JAVA IO 以及 NIO 理解

由于Netty,了解了一些异步IO的知识,JAVA里面NIO就是原来的IO的一个补充,本文主要记录下在JAVA中IO的底层实现原理,以及对Zerocopy技术介绍。IO,其实意味着:数据不停地搬入搬出缓冲区而已(使用了缓冲区)。比如,用户程序发起读操作,导致“ syscall read ”系统调用,就会把数据搬入到 一个buffer中;用户发起写操作,导致 “syscall write ”系统调用,将会把一个 buffer 中的数据 搬出去(发送到网络中 or 写入到磁盘文件)上面的过程看似简单,但是底

2021-05-22 18:54:18 182

原创 【Docker】 镜像-加载原理、分层原理、commit镜像

一、什么是镜像镜像是一种轻量级、可执行的独立软件包,用来打包软件运行环境和基于运行环境开发的软件。它包含运行某个软件所需的所有内容,包括代码、运行时环境、库、环境变量和配置文件。所有的应用,直接打包成docker镜像,就可以直接跑起来。如何得到镜像:从远程仓库下载从其他地方copy自己制作一个镜像 DockerFile二、docker镜像加载原理1. 联合文件系统UnionFSUnionFS是一种分层、轻量级并且高性能的文件系统。支持对文件系统的修改作为一次提交来一层层的叠加,同时可

2021-05-21 15:50:09 322

空空如也

空空如也

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

TA关注的人

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