自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Java技术栈,分享最主流的Java技术

分享Java,多线程,JVM,Spring,微服务,分布式,面试题等。

转载 IntelliJ IDEA 2019.3 发布,性能更牛逼!

距离 IntelliJ IDEA 2019.3 RC 发布不过几天的功夫,目前,IntelliJ IDEA 2019.3 也已正式发布。官方表示,该版本是其旗舰 IDE 的第三次也是最后...

2019-11-30 12:05:53 1829 1

转载 84 岁 iOS 女程序员,不得不服!

来源 / 凤凰网科技 / 箫雨若宫雅子(Masako Wakamiya)在她 58 岁时拥有了人生中的第一台电脑,那时的她马上要从银行退休。她并不知道,自己即将开启的一段旅程,会让她在 ...

2019-11-30 12:05:53 47 0

原创 Spring Boot 构造器参数绑定,越来越强大了!

在之前的文章:Spring Boot读取配置的几种方式,我介绍到 Spring Boot 中基于 Java Bean 的参数绑定,在一个 Java Bean 类上用 @ConfigurationProperties 注解标识(更多 Spring Boot 的教程请关注公众号 “Java技术栈” 在...

2019-11-29 14:13:56 177 0

原创 Spring Boot 构造器参数绑定,越来越强大了!

在之前的文章:Spring Boot读取配置的几种方式,我介绍到 Spring Boot 中基于 Java Bean 的参数绑定,在一个 Java Bean 类上用 @Configura...

2019-11-29 09:41:00 391 0

转载 终于有人把 Nginx 说清楚了,图文详解!

想必大家一定听说过 Nginx,若没听说过它,那么一定听过它的"同行"Apache 吧!Nginx 的产生Nginx 同 Apache 一样都是一种 Web 服务器。基于...

2019-11-29 09:41:00 108 0

转载 Netty 在 Dubbo 中是如何应用的?

众所周知,国内知名框架 Dubbo 底层使用的是 Netty作为网络通信,那么内部到底是如何使用的呢?今天我们就来一探究竟。1. dubbo 的 Consumer 消费者如何使用 Net...

2019-11-28 08:18:00 80 0

原创 全球 IPv4 地址正式耗尽

重要消息: 就在 2019/11/25 UTC+1 15:35 时,一封来自欧洲 RIPE NCC 的邮件中得到确认:全球的IPv4地址已经彻底耗尽。 IPv4 大家应该很熟悉了,就是我们平常所知道的 IP 地址,如:192.168.1.168。 其实,很多年前就在说 IPv4 要用完了,只是...

2019-11-27 10:05:15 2310 1

转载 一文搞懂 Java 中的枚举,写得非常好!

知识点概念enum的全称为 enumeration, 是 JDK 1.5 中引入的新特性。在Java中,被enum关键字修饰的类型就是枚举类型。形式如下:enum ...

2019-11-27 09:36:00 116 0

转载 GitHub 将源代码保存在北极洞穴,至少使用 1000 年!

最近,GitHub分享了开放Arctic Code Vault的计划,该计划旨在存储和保存Flutter和TensorFlow等开源软件。所有开放源代码项目的代码都将存储...

2019-11-26 10:10:00 139 0

转载 Spring 如何解决循环依赖问题?

在关于Spring的面试中,我们经常会被问到一个问题,就是Spring是如何解决循环依赖的问题的。这个问题算是关于Spring的一个高频面试题,因为如果不刻意研读,相信即使读过源码,面试者也不一定能够一下子思考出个中奥秘。本文主要针对这个问题,从源码的角度对其实现原理进行讲解。1过程演示 关于Sp...

2019-11-26 10:10:00 117 0

转载 Redis 是怎么实现 “附近的人” 的?

针对“附近的人”这一位置服务领域的应用场景,常见的可使用PG、MySQL和MongoDB等多种DB的空间索引进行实现。而Redis另辟蹊径,结合其有序队列zset以及geohash编码,实现了空间搜索功能,且拥有极高的运行效率。本文将从源码角度对其算法原理进行解析,并推算查询时间复杂度。要提供完整...

2019-11-25 10:10:00 55 0

转载 Java中的责任链设计模式,太牛了!

责任链设计模式的思想很简单,就是按照链的顺序执行一个个处理方法,链上的每一个任务都持有它后面那个任务的对象引用,以方便自己这段执行完成之后,调用其后面的处理逻辑。下面是一个责任链设计模式的简单的实现:publicinterfaceTask{ publicvoidrun(); } publiccl...

2019-11-25 10:10:00 50 0

转载 醒醒吧,世界上有技术驱动型公司!

1世界上没有技术驱动型公司 世界上没有技术驱动型公司,不论Google、Facebook,还是腾讯、阿里,都不是技术驱动型公司。因为技术不是源头,需求才是。因此一切技术问题,都要服从产品交付和市场反馈。所以,任何公司都不可能以技术去驱动自身。人可以以技术驱动自己进步,但公司不行。一家公司可以以技术...

2019-11-24 10:46:00 152 0

转载 现身说法:37岁老码农找工作

分享一篇文章,作者真是掏心窝了:前几天突然接到dk的电话,要和我聊聊天。他说他们部门调整,虽然最后他留了下来,但还是非常焦虑。人无远虑必有近忧,他这次被刺激到了,想提高一下自己,以免下次再有类似的心惊肉跳。但怎么提高呢?程序员第一考虑的当然是技术,但现在真不知道学什么了:干了三四年的开发,手头的工...

2019-11-24 10:46:00 193 0

转载 如何快速安全的插入千万条数据?

最近有个需求解析一个订单文件,并且说明文件可达到千万条数据,每条数据大概在20个字段左右,每个字段使用逗号分隔,需要尽量在半小时内入库。思路1.估算文件大小因为告诉文件有千万条,同时每条记录大概在20个字段左右,所以可以大致估算一下整个订单文件的大小,方法也很简单使用FileWriter往文...

2019-11-23 11:45:00 232 0

转载 这个函数,1987年在这了,别动它!

1、这是一个被代码耽误的诗人2、来一份1987年的代码看看3、产品经理要对此负责4、不敢看,也不敢问 5、Nike robots.txt 上的注释查看地址:https:/...

2019-11-23 11:45:00 26 0

原创 Spring Cloud Greenwich.SR4 发布了,跟不上了……

前几天 Spring Cloud Greenwich.SR4 发布了:https://spring.io/blog/2019/11/19/spring-cloud-gre...

2019-11-22 09:25:00 693 0

转载 手把手教你画架构图,看一次就会了!

技术传播的价值,不仅仅体现在通过商业化产品和开源项目来缩短我们构建应用的路径,加速业务的上线速率,也体现在优秀工程师在工作效率提升、产品性能优化和用户体验改善等经验方面的...

2019-11-22 09:25:00 170 0

转载 厉害了,ES 如何做到几十亿数据检索 3 秒返回!

一、前言数据平台已迭代三个版本,从头开始遇到很多常见的难题,终于有片段时间整理一些已完善的文档,在此分享以供所需朋友的实现参考,少走些弯路,在此篇幅中偏重于ES的优化,关于HBase,Hadoop的设计优化估计有很多文章可以参考,不再赘述。二、需求说明项目背景:在一业务系统中,部分表每天的数据量过...

2019-11-21 10:14:53 342 0

转载 有人向你扔了一个bug,哈哈哈哈

有人向你扔了一个bug。“26楼会议室的灯亮着。它应该是熄灭着的。”bug的备注里写道“你应该能在5分钟内搞定,只要按一下开关就好了。“你去了26楼的会议室。灯的确亮着,但房间里没有灯的开关。。你准备自己安装一个开关。但设计师说,它会破坏房间的美感。另外,墙壁是混凝土。你需要合适的工具才能安装开关...

2019-11-21 10:14:53 80 0

转载 Spring 最常用的 7 大类注解,史上最强整理!

随着技术的更新迭代,Java5.0开始支持注解。而作为java中的领军框架spring,自从更新了2.5版本之后也开始慢慢舍弃xml配置,更多使用注解来控制spring框架。而spring的的注解那么多,可能做java很多年,都用不上。这里按照类型总结了这7种最常用的注解。1核心注解 @Requi...

2019-11-20 09:36:00 209 0

转载 你见过的最垃圾的代码是什么?

文章转载自 OSCHINA 社区[http://www.oschina.net]某网友在 Hacker News 上发起了一个 “你见过的最糟糕的代码是什么?” 的问题,引起了广泛关注和讨论,评论数已接近600条。其中,一位 ID 为“oraguy”的程序员对 Oracle 数据库代码的吐槽,更是...

2019-11-20 09:36:00 144 0

转载 Spring Boot 五种热部署方式,极速开发就是生产力!

1、模板热部署在 Spring Boot 中,模板引擎的页面默认是开启缓存的,如果修改了页面的内容,则刷新页面是得不到修改后的页面的,因此我们可以在application...

2019-11-19 10:08:00 423 0

转载 常用的 Git 命令,给你准备好了!

分支操作:git branch 创建分支git branch -b 创建并切换到新建的分支上git checkout 切换分支git branch 查看分支列表git branch -v 查看所有分支的最后一次操作git branch -vv 查看当前分支git brabch -b 分支名 ori...

2019-11-19 10:08:00 26 0

转载 12306 的架构也太 "牛X" 了吧!

每到节假日期间,一二线城市返乡、外出游玩的人们几乎都面临着一个问题:抢火车票!虽然现在大多数情况下都能订到票,但是放票瞬间即无票的场景,相信大家都深有体会。尤其是春节期间...

2019-11-18 10:08:00 213 0

转载 Java中的享元设计模式,涨姿势了!

首先来看一段代码:publicclassShareTest{ publicstaticvoidmain(String[] args) { Integer a = 127; Integer b = 127; System.out.println(a==b); Integer c = 128; Int...

2019-11-18 10:08:00 43 0

转载 头大!RabbitMQ 和 Kafka 到底怎么选?

前言开源社区有好多优秀的队列中间件,比如RabbitMQ和Kafka,每个队列都貌似有其特性,在进行工程选择时,往往眼花缭乱,不知所措。对于RabbitMQ和Kafka,到底应该选哪个?RabbitMQ架构RabbitMQ是一个分布式系统,这里面有几个抽象概念。broker:每个节点运行的服务程序...

2019-11-17 09:21:00 53 0

原创 GitHub for mobile 来了,码农苦逼了!

北京时间 2019 年 11 月 14 日 GitHub Universe 2019 大会上,GitHub 正式发布了 GitHub for mobile,即 GitHu...

2019-11-16 12:15:35 701 0

转载 Spring的核心思想,总结得非常好!

依赖注入是面型接口编程的一种体现,是Spring的核心思想。事实上依赖注入并不是什么高深的技术, 只是被Sping这么以包装就显得有些神秘。如上代码清单所示,Coder使用Java语言打印helloworld字符串, 在这里它不但依赖Language接口, 还依赖Java类,这使得它和Java类耦...

2019-11-15 11:33:00 89 0

转载 服务器被植入木马,CPU飙升200%

线上服务器用的是某云的,欢快的完美运行着Tomcat,MySQL,MongoDB,ActiveMQ等程序。突然一则噩耗从前线传来:网站不能访问了!此项目是我负责,我以15...

2019-11-15 11:33:00 101 0

原创 Spring Cloud 升级最新 Greenwich 版本,舒服了~

这个大版本栈长是踩了非常多的坑啊,帮助了不少小伙伴。Greenwich发布也快 1 年了,栈长迟迟没有升级,距离上个大版本升级一年多了,所以栈长最近将 Spring Cl...

2019-11-14 09:19:00 1171 0

转载 教你用 Netty 实现一个简单的 RPC!

众所周知,dubbo 底层使用了 Netty 作为网络通讯框架,而 Netty 的高性能我们之前也分析过源码,对他也算还是比较了解了。今天我们就自己用 Netty 实现一...

2019-11-14 09:19:00 62 0

转载 牛逼哄洪的 Java 8 Stream,性能也牛逼么?

那么,Stream API的性能到底如何呢,代码整洁的背后是否意味着性能的损耗呢?本文对Stream API的性能一探究竟。为保证测试结果真实可信,我们将JVM运行在 -server模式下,测试数据在GB量级,测试机器采用常见的商用服务器,配置如下: OSCentOS 6.7 x86_64CPUI...

2019-11-13 09:34:35 80 0

转载 Java中的模板设计模式,太实用了!

顾名思义,模板设计模式就是将许多公用的常用的代码封装成一个模板,我们只需要实现不同的业务需求的代码,然后和模板组合在一起,那么就得到完整的逻辑。在我们的日常开发中,常用的模板模式有两种实现方式:继承和接口回调,下面我们就分别使用这两种方式来实现模板设计模式。假设一个场景,有一段代码如下所示:pub...

2019-11-13 09:34:35 211 0

转载 MySQL 用 limit 为什么会影响性能?

一,前言首先说明一下MySQL的版本:mysql> select version();+-----------+| version() |+-----------...

2019-11-12 09:32:00 327 0

转载 牛逼!96秒100亿,阿里到底做了什么?

答案就是>>>全链路压测摘要:阿里巴巴双11备战期间,保障系统稳定性最大的难题在于容量规划,而容量规划最大的难题在于准确评估从用户登录到完成购买的整个链条中,核心页面和交易支付的实际承载能力。在首届阿里巴巴中间件技术峰会,阿里巴巴中间件高级技术专家张军为听众详细讲解了系统稳定性保...

2019-11-12 09:32:00 56 0

转载 面试 4 个月,最终入职大厂经验分享!

在18年底到19年3月,陆续面试了几家公司,有成有不成的,最终进了一家比较满意的知名外企。在本文里,我将介绍我这段时间里更新简历和面试的相关经历。可能面试相关的一些方法,大家能从我之前的博文里看到,但在本文里,大家更能从相关实战性的例子中进一步体会到面试技巧的使用方法。1 刚开始一定得通过一些小公...

2019-11-11 10:06:00 104 0

转载 两个线程如何交替执行,一个输出偶数一个输出奇数?

楼主今天在面经上看到这个题,挺有意思,小小的题目对多线程的考量还挺多。大部分同学都会使用 synchronized 来实现。楼主今天带来另外两种优化实现,让你面试的时候,傲视群雄!synchronized实现通过 synchronized 同步两个方法,每次只能有一个线程进入,每打印一个数,就释放...

2019-11-11 10:06:00 31 0

转载 缓存竟也能导致跨域问题?

由于页面设计需要,页面展示图片,并可点击下载按钮进行下载(需要前端打包多个图片,所以需要使用ajax请求图片获得二进制内容,不能直接使用img或a进行下载),如图:问题现象图片存储再阿里云OSS,阿里云OSS的CORS设置的跨域并没有问题:access-control-allow-methods:...

2019-11-10 10:41:00 94 0

原创 Spring Boot 2.2.1 发布,一个有点坑的版本!

Spring Boot 2.2.0 没发布多久,Spring Boot 2.2.1 又发布了,这是一个很有意思,又有点 "坑" 的一个版本。除了日常的 bug 修复、优化...

2019-11-09 11:23:00 1848 0

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