会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
磊哥|www.javacn.site
我的小站 www.javacn.site,面试题贼多!
博客园
首页
新随笔
管理
上一页
1
···
17
18
19
20
21
22
23
24
25
···
35
下一页
2020年6月2日
啪啪,打脸了!领导说:try-catch必须放在循环体外!
摘要: 哈喽,亲爱的小伙伴们,技术学磊哥,进步没得说!欢迎来到新一期的性能解读系列,我是磊哥。 今天给大家带来的是关于 try-catch 应该放在循环体外,还是放在循环体内的文章,我们将从性能和业务场景分析这两个方面来回答此问题。 很多人对 try-catch 有一定的误解,比如我们经常会把它(try-c
阅读全文
posted @ 2020-06-02 10:33 磊哥|www.javacn.site
阅读(4518)
评论(9)
推荐(13)
2020年5月29日
阿里巴巴为什么让初始化集合时必须指定大小?
摘要: 哈喽,亲爱的小伙伴们,技术学磊哥,进步没得说!欢迎来到新一期的性能解读系列,我是磊哥。 今天给大家带来的是关于阿里巴巴《Java开发手册》泰山版(最新)中关于集合初始化时的性能建议。 阿里巴巴《Java开发手册》第 1 章编程规范,第 6 节集合处理的第 17 条规定如下: 【推荐】集合初始化时,指
阅读全文
posted @ 2020-05-29 12:30 磊哥|www.javacn.site
阅读(2086)
评论(0)
推荐(0)
2020年5月22日
永远不要使用双花括号初始化实例,否则就会OOM!
摘要: 生活中的尴尬无处不在,有时候你只是想简单的装一把,但某些“老同志”总是在不经意之间,给你无情的一脚,踹得你简直无法呼吸。 但谁让咱年轻呢?吃亏要趁早,前路会更好。 喝了这口温热的鸡汤之后,咱们来聊聊是怎么回事。 事情是这样的,在一个不大不小的项目中,小王写下了这段代码: 本来是用它来替代下面这段代码
阅读全文
posted @ 2020-05-22 15:48 磊哥|www.javacn.site
阅读(3174)
评论(0)
推荐(2)
2020年5月18日
限流的6大狠招,附详细代码和评测结果
摘要: 为了上班方便,去年我把自己在北郊的房子租出去了,搬到了南郊,这样离我上班的地方就近了,它为我节约了很多的时间成本,我可以用它来做很多有意义的事,最起码不会因为堵车而闹心了,幸福感直线上升。 但即使这样,生活也有其他的烦恼。南郊的居住密度比较大,因此停车就成了头痛的事,我租的是路两边的非固定车位,每次
阅读全文
posted @ 2020-05-18 09:57 磊哥|www.javacn.site
阅读(1343)
评论(0)
推荐(4)
2020年5月3日
Redis 6.0 正式版终于发布了!除了多线程还有什么新功能?
摘要: Redis 6.0.1 于 2020 年 5 月 2 日正式发布了,如 Redis 作者 antirez 所说,这是迄今为止最“企业”化的版本,也是有史以来改动最大的一个 Redis 版本,同时也是参与开发人数最多的一个版本。 所以在使用此版本之前,建议各位开发者先进行深入的测试再考虑投产,毕竟生产
阅读全文
posted @ 2020-05-03 13:23 磊哥|www.javacn.site
阅读(10144)
评论(1)
推荐(1)
2020年4月29日
HashMap 的 7 种遍历方式与性能分析!(强烈推荐)
摘要: 随着 JDK 1.8 Streams API 的发布,使得 HashMap 拥有了更多的遍历的方式,但应该选择那种遍历方式?反而成了一个问题。 本文 先从 HashMap 的遍历方法讲起,然后再从性能、原理以及安全性等方面,来分析 HashMap 各种遍历方式的优势与不足 ,本文主要内容如下图所示:
阅读全文
posted @ 2020-04-29 17:38 磊哥|www.javacn.site
阅读(3030)
评论(0)
推荐(0)
String性能提升10倍的几个方法!(源码+原理分析)
摘要: String 类型是我们使用最频繁的数据类型,没有之一。那么提高 String 的运行效率,无疑是提升程序性能的最佳手段。 我们本文将从 String 的源码入手,一步步带你实现字符串优化的小目标。 不但教你如何有效的使用字符串,还为你揭晓这背后的深层次原因 。 本文涉及的知识点,如下图所示: 在看
阅读全文
posted @ 2020-04-29 17:37 磊哥|www.javacn.site
阅读(1081)
评论(0)
推荐(0)
9个小技巧让你的 if else看起来更优雅
摘要: if else 是我们写代码时,使用频率最高的关键词之一,然而有时过多的 if else 会让我们感到脑壳疼,例如下面这个伪代码: 是不是很奔溃?虽然他是伪代码,并且看起来也很夸张,但在现实中,当我们无数次 review 别人代码时,都会发现类似的场景,那么我们本文就来详细聊聊,有没有什么方法可以让
阅读全文
posted @ 2020-04-29 17:33 磊哥|www.javacn.site
阅读(7480)
评论(3)
推荐(5)
2020年4月20日
用了自定义Banner后,SpringBoot瞬间变的高大上了...
摘要: Spring Boot 在启动的时候,我们或许想要把自己公司的 logo,或者是项目的 logo 放上去,我们可以试试本文的这些方法,可以让你快速制作一些 Spring Boot 项目启动时的彩蛋,以提高项目的辨识度,或者是纯碎为了给枯燥的生活平添一些乐趣,那么本文这些内容能很好的帮助到你。 本文知
阅读全文
posted @ 2020-04-20 11:38 磊哥|www.javacn.site
阅读(2273)
评论(0)
推荐(1)
别再问我 new 字符串创建了几个对象了!我来证明给你看!
摘要: 我想所有 Java 程序员都曾被这个 new String 的问题困扰过,这是一道高频的 Java 面试题,但可惜的是网上众说纷纭,竟然找不到标准的答案。有人说创建了 1 个对象,也有人说创建了 2 个对象,还有人说可能创建了 1 个或 2 个对象,但谁都没有拿出干掉对方的证据,这就让我们这帮吃瓜群
阅读全文
posted @ 2020-04-20 11:37 磊哥|www.javacn.site
阅读(1317)
评论(0)
推荐(5)
2020年4月14日
史上最全的延迟任务实现方式汇总!附代码(强烈推荐)
摘要: 这篇文章的诞生要感谢一位读者,是他让这篇 优秀的文章 有了和大家见面的机会,重点是 优秀文章 ,哈哈。 事情的经过是这样的... 不用谢我,送人玫瑰,手有余香。 相信接下来的内容一定不会让你失望,因为它将是目前市面上最好的关于“延迟任务”的文章 ,这也一直是我写作追求的目标,让我的每一篇文章都比市面
阅读全文
posted @ 2020-04-14 10:52 磊哥|www.javacn.site
阅读(11339)
评论(4)
推荐(9)
2020年4月12日
IDEA 正式版终于支持中文版和 JDK 直接下载了(太方便了)附介绍视频
摘要: IDEA 2020.1 经过了漫长的打磨终于发布正式版了,而这次的版本不止直接支持 Java 14,还带来了两个重量级的功能,官方中文版支持和 JDK 直接下载。 在之前的开发中,当我们需要下载 JDK 时,通常的步骤是这样的:首先去 Oracle 的官网,查到相关的版本下载地址,然后输入用户输入密
阅读全文
posted @ 2020-04-12 09:53 磊哥|www.javacn.site
阅读(36940)
评论(15)
推荐(8)
2020年4月9日
想读Spring源码?先从这篇「 极简教程」开始吧...
摘要: 为什么要阅读源码?这是一个有趣的问题,类似的问题还有,为什么要看书?为什么要爬山? 这也是一个哲学问题,我想每个人都有不同的答案,下面我是对阅读源码好处的一些思考。 (PS:也欢迎你在评论区留言补充) 阅读源码的好处 1.知其然知其所以然 这是一句 IT 人都很熟悉的话,在开源软件越来越多,并且升级
阅读全文
posted @ 2020-04-09 21:51 磊哥|www.javacn.site
阅读(5517)
评论(0)
推荐(0)
2020年4月6日
这样终止线程,竟然会导致服务宕机?
摘要: 在开始之前,我们先来看以下代码会有什么问题? 或许你已经发现了,上面这段代码使用了 来终止线程,在 Java 程序中是不允许这样终止线程的。什么?你问为什么不能这样? 首先来说 IDE 都会鄙视你了,它会阻止你使用 ! 什么?你不信。那么来看这张图: 好吧,那为什么不能这样用呢?总得给我一个敷衍的理
阅读全文
posted @ 2020-04-06 21:12 磊哥|www.javacn.site
阅读(863)
评论(0)
推荐(5)
2020年3月30日
99%的程序员都在用Lombok,原理竟然这么简单?我也手撸了一个!|建议收藏!!!
摘要: 罗曼罗兰说过:世界上只有一种英雄主义,就是看清生活的真相之后依然热爱生活。 对于 Lombok 我相信大部分人都不陌生,但对于它的实现原理以及缺点却鲜为人知,而本文将会从 Lombok 的原理出发,手撸一个简易版的 Lombok,让你理解这个热门技术背后的执行原理,以及它的优缺点分析。 简介 在讲原
阅读全文
posted @ 2020-03-30 12:21 磊哥|www.javacn.site
阅读(9855)
评论(6)
推荐(4)
2020年3月27日
惊呆了,竟然可以用这种方式秒建Redis集群?
摘要: 前面我们讲了 "《Redis 性能优化的 13 条军规!》" ,其中最重要的一条就是使用 Redis 的集群功能,那么本文我们就来看看,如何用 1s 钟的时间来创建一个 Redis 集群。 Redis Cluster 是 Redis 3.0 版本推出的 Redis 集群方案,它将数据分布在不同的服务
阅读全文
posted @ 2020-03-27 17:14 磊哥|www.javacn.site
阅读(637)
评论(0)
推荐(0)
《吐血整理》Redis 性能优化的 13 条军规!史上最全
摘要: Redis 是基于单线程模型实现的,也就是 Redis 是使用一个线程来处理所有的客户端请求的,尽管 Redis 使用了非阻塞式 IO,并且对各种命令都做了优化(大部分命令操作时间复杂度都是 O(1)),但由于 Redis 是单线程执行的特点,因此它对性能的要求更加苛刻,本文我们将通过一些优化手段,
阅读全文
posted @ 2020-03-27 17:12 磊哥|www.javacn.site
阅读(964)
评论(0)
推荐(1)
2020年3月22日
Java14来了!Switch竟如此简单?Lombok也不需要了?来使用Idea配置Java14的开发环境吧!
摘要: Java 14 在 2020.3.17 日发布正式版了,但现在很多公司还在使用 Java 7 或 Java 8,每当看到 Java 又发布新版本心里就慌得一匹。不过此版本并不是 LTS (长期支持版) 版本,所以不要慌,我们先来了解一下好了,等 LTS 版本发布后再用也不迟。 版本说明 现在 Jav
阅读全文
posted @ 2020-03-22 17:57 磊哥|www.javacn.site
阅读(1499)
评论(0)
推荐(0)
2020年3月18日
因为我说:volatile 是轻量级的 synchronized,面试官让我回去等通知!
摘要: 因为我说:volatile 是轻量级的 synchronized,面试官让我回去等通知! volatile 是并发编程的重要组成部分,也是面试常被问到的问题之一。不要向小强那样,因为一句:volatile 是轻量级的 synchronized,而与期望已久的大厂失之交臂。 volatile 有两大特
阅读全文
posted @ 2020-03-18 09:03 磊哥|www.javacn.site
阅读(1256)
评论(2)
推荐(4)
2020年3月9日
使用 Redis 如何实现查询附近的人?「视频版」——面试突击 003 期
摘要: 面试问题 Redis 如何实现查询附近的人? 涉及知识点 1. Redis 中如何操作位置信息? 2. GEO 底层是如何实现的? 3. 如何在程序实现查询附近的人? 4. 在实际使用中需要注意哪些问题? 视频答案 视频地址:https://www.bilibili.com/video/av8936
阅读全文
posted @ 2020-03-09 13:48 磊哥|www.javacn.site
阅读(941)
评论(3)
推荐(0)
2020年3月3日
Redis 中的过期元素是如何被处理的?视频+图文版给你答案——面试突击 002 期
摘要: 本文以面试问题「Redis 中的过期元素是如何被处理的?」为切入点,用视频加图文的方式和大家聊聊 Redis 过期元素被处理的相关知识点。 涉及的知识点 1. 过期删除策略有哪些? 2. 这些过期策略有哪些优缺点? 3. Redis 使用的是什么过期策略? 4. Redis 是如何优化和执行过期策略
阅读全文
posted @ 2020-03-03 11:53 磊哥|www.javacn.site
阅读(682)
评论(1)
推荐(2)
2020年2月27日
面试突击 | Redis 如何从海量数据中查询出某一个 Key?附视频
摘要: 1 考察知识点 本题考察的知识点有以下几个: 1. Keys 和 Scan 的区别 2. Keys 查询的缺点 3. Scan 如何使用? 4. Scan 查询的特点 2 解答思路 1. Keys 查询存在的问题 2. Scan 的使用 3. Scan 的特点 3 Keys 使用相关 1)Keys
阅读全文
posted @ 2020-02-27 19:05 磊哥|www.javacn.site
阅读(1969)
评论(0)
推荐(3)
2019年11月17日
Redis持久化的几种方式——深入解析RDB
摘要: Redis 的读写都是在内存中,所以它的性能较高,但在内存中的数据会随着服务器的重启而丢失,为了保证数据不丢失,我们需要将内存中的数据存储到磁盘,以便 Redis 重启时能够从磁盘中恢复原有的数据,而整个过程就叫做 Redis 持久化。 Redis 持久化也是 Redis 和 Memcached 的
阅读全文
posted @ 2019-11-17 22:45 磊哥|www.javacn.site
阅读(3168)
评论(2)
推荐(2)
2019年11月12日
Redis中的键值过期操作
摘要: 1.过期设置 Redis 中设置过期时间主要通过以下四种方式: expire key seconds:设置 key 在 n 秒后过期; pexpire key milliseconds:设置 key 在 n 毫秒后过期; expireat key timestamp:设置 key 在某个时间戳(精确
阅读全文
posted @ 2019-11-12 19:08 磊哥|www.javacn.site
阅读(3807)
评论(1)
推荐(0)
2019年10月28日
Redis事务深入解析和使用
摘要: 作为关系型数据库中一项非常重要的基础功能——事务,在 Redis 中是如何处理并使用的? 1.前言 事务指的是提供一种将多个命令打包,一次性按顺序地执行的机制,并且保证服务器只有在执行完事务中的所有命令后,才会继续处理此客户端的其他命令。 事务也是其他关系型数据库,所必备的一项非常重要的能力。以支付
阅读全文
posted @ 2019-10-28 21:00 磊哥|www.javacn.site
阅读(1617)
评论(0)
推荐(0)
上一页
1
···
17
18
19
20
21
22
23
24
25
···
35
下一页
公告