自定义博客皮肤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后端相关技术、老司机实战干货,不限于JVM、并发、设计模式、性能优化、分布式&微服务、云原生相关主题。希望关注的你停下脚步,定有所收获。

  • 博客(28)
  • 收藏
  • 关注

原创 万字长文!不为人所知的分布式锁实现全都在这里了

1、引入业务场景2、分布式锁家族成员介绍3、分布式锁成员实现原理剖析4、最后的总结2019 已经过去!2020 已经到站!----1、引入业务场景首先来由一个场景引入:最近老板接了一个大单子,允许在某终端设备安装我们的APP,终端设备厂商日活起码得几十万到百万级别,这个APP也是近期产品根据市场竞品分析设计出来的,几个小码农通宵达旦开发出来的,主要功能是在线购物一站式服...

2020-01-06 10:29:26 2412

原创 通过一个生活中的案例场景,揭开并发包底层AQS的神秘面纱

本文导读生活中案例场景介绍联想到 AQS 到底是什么AQS 的设计初衷揭秘 AQS 底层实现最后的总结---当你在学习某一个技能的时候,是否曾有过这样的感觉,就是同一个技能点学完了之后,过了一段时间,如果你没有任何总结,或者是不经常回顾,遗忘的速度是非常之快的。忘记了之后,然后再重新学,因为已经间隔了一段时间,再次学习又当做了新的知识点来学。这种状态如此反复,浪费了相同的...

2019-10-29 18:41:07 1081

原创 由一次线上故障来理解下 TCP 三握、四挥 & Java 堆栈分析到源码的探秘

本文导读:生产故障场景介绍TCP 建连三次握手过程TCP 断连四次挥手过程结合 Java 堆栈剖析源码再从堆栈中找到"罪魁祸首"问题优化方案总结---1、生产故障场景介绍业务简介:该服务主要是提供对外的代理接口,大部分接口都会调用第三方接口,获取数据后做聚合处理后,提供给客户端使用。有一天晚上,系统正处于高峰期间,项目组小伙伴正在津津有味的吃着「加班餐」,刚把????塞...

2019-10-19 15:45:19 1178 1

原创 线上SpringCloud网关调用微服务跨机房了,咋整?

1、前言公司内考虑到服务器资源成本的问题,目前业务上还在进行服务的容器化改造和迁移,计划将容器化后的服务,以及一些中间件(MQ、DB、ES、Redis等)尽量都迁移到其他机房。那你们为什么不用阿里云啊,腾讯云啊,还用自己的机房?的确是这样,公司内部目前还是有专门的运维团队。也是因为历史原因,当时业务发展比较迅猛,考虑到数据的安全性也是自建机房的。对于中小型公司这样做,显然成本太高了,所以...

2020-02-28 20:33:02 1541 1

原创 一本彻底搞懂MySQL索引优化EXPLAIN百科全书

1、MySQL逻辑架构日常在CURD的过程中,都避免不了跟数据库打交道,大多数业务都离不开数据库表的设计和SQL的编写,那如何让你编写的SQL语句性能更优呢?先来整体看下MySQL逻辑架构图:MySQL整体逻辑架构图可以分为Server和存储引擎层。Server层:Server层涵盖了MySQL的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),以及存储过程、触...

2020-02-23 10:51:47 1224 1

原创 看完这篇文章,再次遇到Jedis「Redis客户端」异常相信你不再怕了!

本文导读:[1] 疫情当前[2] 应用异常监控[3] Redis客户端异常分析[4] Redis客户端问题引导分析[5] 站在Redis客户端视角分析[6] 站在Redis服务端视角分析[7] 资源池生产配置合理性分析[8] 本文总结[1] 疫情当前为响应国家抗击疫情的号召,全国有过亿的企业职员选择了远程办公,IT科技大厂们也纷纷开启了VPN模式,保障企业运营。既...

2020-02-10 10:02:29 1725 2

原创 深入拆解类加载器,这样的姿势你还不懂吗?

本文导读:1、前奏,举个生活中的小栗子2、为何Java类型加载、连接在程序运行期完成?3、一个类在什么情况下才会被加载到JVM中?什么是主动使用、被动使用?代码示例助你透彻理解类初始化的时机。4、类的加载(Loading)内幕透彻剖析类加载做的那些事儿、双亲委派模型工作过程、ClassLoader源码解析5、Tomcat如何打破双亲委派模型的6、上下文类加载器深入浅...

2020-01-20 11:54:11 1133

原创 这一次,彻底弄懂「Java字节码文件」

提前祝福各位读者????圣诞快乐!这个圣诞节请在学习中度过!不啰嗦,直接从最最简单的一段Java源代码开启Java整体字节码分析之旅。1、Java 源码文件 package com.dskj.jvm.bytecode; public class MyTest1 { private int a = 1; public int getA() { ...

2019-12-28 13:01:56 1614

原创 关于NIO Buffer使用姿势详解

关于NIO Buffer中4个重要状态属性position、limit、capacity 与 markBuffer本身是一个容器,称作缓冲区,里面包装了特定的一种原生类型,其子类包括ByteBuffer、CharBuffer、LongBuffer、IntBuffer、DoubleBuffer、ShortBuffer、FloatBuffer。注意:没有Boolean类型的BufferBuff...

2019-12-19 13:35:04 984

原创 各大中间件底层技术-分布式一致性协议 Raft 详解

前言正式介绍 Raft 协议之前,我们先来举个职场产研团队的一个例子????。方式一:在一个技术团队内假设角色都是 均等的,会导致什么情况呢?产品提出一个需求,就可以随便去找团队中的任意一个人去发起需求。如果这个人因为请假走了,但是他没有把需求及时同步给团队其他人,因此会导致该需求存在很大的延迟。方式二:在技术团队中选举一个 Leader角色,产品提出的需求必须优先提给 Leader,找 L...

2019-12-17 13:16:21 1586

原创 线上服务应急和技术攻关方法论

海恩法则和墨菲定律海恩法则指出:每一起严重事故的背后,必然有29次轻微事故和300起未遂先兆以及1000起事故隐患。海恩法则强调两点:(1)事故的发生是量的积累的结果;(2)再好的技术,再完美的规章,在实际操作层面,也无法取代人自身的素质和责任心。根据海恩法则,一起重大事故发生之后,我们要在处理事故和解决问题的同事,还要及时的对同类问题的「事故征兆」和「事故苗头」进行排查并处理,以防止...

2019-12-10 10:09:09 1307

原创 一文彻底搞懂CAS实现原理

点击Java爱好者社区关注我们吧! 本文导读:前言如何保障线程安全CAS原理剖析CPU如何保证原子操作解密CAS底层指令小结 1 前言日常编码过程中,基本不会直接用到 CAS ...

2019-11-30 20:08:17 2552 1

原创 京东物流出问题了?褥了30块羊毛 & 浅析系统架构

本人亲身经历,但后续的流程分析都是个人猜测的,毕竟没有实际做过这块的业务。1、订单物流阻塞经过火热的双11刚刚退去,截止今日,我在京东购买的矿泉水终于到货啦,下单两箱还只收到了一箱 :( ,从下单到收到货过去了14天,足足两周的时间。我从11-20号开始与京东客服联系,直到11-25整个购物体验才完成,也因为京东没有按照约定重新发货,算是补偿了我3000个京豆。朋友们,不会不知道京豆是...

2019-11-27 10:00:25 2029

转载 分布式理论之ZAB一致性协议图解

点击Java爱好者社区关注我们吧!1. 什么是 ZAB 协议?ZAB 协议介绍ZAB 协议全称:Zookeeper Atomic Broadcast(Zookeeper 原子广播协议)。Zookeeper 是一个为分布式应用提供高效且可靠的分布式协调服务。在解决分布式一致性方面,Zookeeper 并没有使用 Paxos ,而是采用了 ZAB 协议。ZAB 协议定义:ZAB 协议是为分布式协...

2019-11-25 13:27:04 402

转载 MySQL性能优化-常见SQL错误用法

点击Java爱好者社区关注我们吧!来源: https://yq.aliyun.com/articles/72501前言MySQL在2016年仍然保持强劲的数据库流行度增长趋势。越来越多的客户将自己的应用建立在MySQL数据库之上,甚至是从Oracle迁移到MySQL上来。但也存在部分客户在使用MySQL数据库的过程中遇到一些比如响应时间慢,CPU打满等情况。阿里云RDS专家服务团队帮助云上客...

2019-11-21 08:08:00 305

原创 带你搭建一下虚拟机和Redis集群,记得收藏

前言:我们看到分析 Redis 使用或原理的文章不少,但是完整搭建一套独立的 redis 集群环境的介绍,并不是很多或者说还不够详细。那么,本文会手把手带着大家搭建一套 Redis 集群环境,Redis 集群在公司内部生产环境,大都是使用 Linux 操作系统搭建的。所以,本文也带领大家搭建一套虚拟机环境,虚拟机中安装 Linux,常用的 Linux 操作系统如 Ubuntu、CentOS...

2019-11-18 12:43:06 583

转载 服务端高并发分布式架构演进之路

点击上方Java爱好者社区关注我们吧!来源:https://segmentfault.com/a/1190000018626163本文导读:1、概述2、基本概念3、架构演进4、架构设计总结1. 概述本文以淘宝作为例子,介绍从一百个并发到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知,文章最后汇总了一些架构设计的原则。2. 基...

2019-11-13 08:08:00 173

原创 作为一名程序员,你真正了解CDN技术吗?

扫码关注,原创干货及时推送给你!本文导读: 物流仓库配送如何加速 静态资源文件部署方式 静态资源加速之CDN技术 解析过程中的名词解释 最后的总结 1、物流仓库配送如何加速我们还是从生活中购物的例子来展开。将时光倒回到几年前,在那时候我的老家县城里,如果你从京东APP上购物下单,...

2019-11-06 07:56:16 349

原创 Spring Cloud Config Server 节点迁移引起的问题,请格外注意这一点!

前言:虽然强烈推荐选择使用国内开源的配置中心,如携程开源的 Apollo 配置中心、阿里开源的 Nacos 注册&配置中心。但实际架构选型时,根据实际项目规模、业务复杂性等因素,有的项目还是会选择 Spring Cloud Config,也是 Spring Cloud 官网推荐的。特别是对性能要求也不是很高的场景,Spring Cloud Config 还算是好用的,基本能够满足需求,通过 G...

2019-10-12 17:38:07 1528

原创 有了 CompletableFuture,使得异步编程没有那么难了!

本文导读:业务需求场景介绍技术设计方案思考Future 设计模式实战CompletableFuture 模式实战CompletableFuture 生产建议CompletableFuture 性能测试CompletableFuture 使用扩展---1、业务需求场景介绍不变的东西就是一直在变化中。想必,大家在闲暇时刻,会经常看视频,经常用的几个 APP,比如优酷...

2019-10-06 22:34:47 1415

转载 大话 ThreadLocal

来源:https://www.jianshu.com/u/c4a967f15149概述ThreadLocal 介绍ThreadLocal 关键方法讲解ThreadLoc...

2019-10-04 23:50:57 189

原创 Spring Cloud Config 配置中心实践过程中,你需要了解这些细节!

本文导读:Spring Cloud Config 基本概念Spring Cloud Config 客户端加载流程Spring Cloud Config 基于消息总线配置Spring Cloud Config 中的占位符Spring Cloud Config 仓库最佳实践Spring Cloud Config 健康检查问题剖析本文主要介绍 Spring Cloud Config...

2019-10-03 07:48:07 1409

原创 这个注册的 IP 网络都不通了,Eureka 注册中心竟然无法踢掉它!

本文导读:微服务技术架构选型介绍k8s 容器化部署架构方案Eureka 注册中心问题场景问题解决手段及原理剖析阅读本文建议先了解:注册中心基本原理K8s(Kuberneters)基本概念 我们的微服务目前都是在服务器上部署的,也是基于 Docker 来部署的。运维部门基于 K8s 自研了一套容器云管理平台,平台名称叫做 Ares,我们也开始准备将微服务迁移...

2019-09-27 21:31:13 746

转载 IntelliJ IDEA 2019.3程序员开发利器,新特性抢先看!

来源:https://www.oschina.net/news/109913/intellij-idea-starts-2019-3-early-access-progr...

2019-09-27 21:09:30 236

转载 漫画:什么是中台?

没有中台的时代在传统IT企业,项目的物理结构是什么样的呢?无论项目内部的如何复杂,都可分为“前台”和“后台”这两部分。什么是前台?首先,这里所说的“前台”和“前端”并不是一回事。所谓前台即包括各种和用户直接交互的界面,比如web页面,手机app;也包括服务端各种实时响应用户请求的业务逻辑,比如商品查询、订单系统等等。...

2019-09-24 08:18:00 189

原创 有必要了解一下Linux中零拷贝原理 | NIO零拷贝技术实践

本文导读:什么是零拷贝传统 IO 数据拷贝原理什么是 DMAsendfile 数据零拷贝原理mmap 数据零拷贝原理Java 中 NIO 零拷贝实现Jav...

2019-09-23 08:18:00 448

原创 这个场景下使用 Skywalking 调用链,发现 JVM 老年代内存没办法回收了!(下篇)...

本文分为上、下两篇围绕以下几点展开: 01 Skywalking 调用链简介 (上篇) 02 接入 Skywalking Agent 后的服务表现(上篇) 03 应用哪些「手段」排查 Jvm问题的(上篇) 04结合 Jvm GC日志分析到底发生了什么(下篇) 05应用哪些 「手段」排查 Jvm 内存泄漏的 (下篇) 06 Sky...

2019-09-17 23:53:47 4093 3

原创 这个场景下使用 Skywalking 调用链,发现 JVM 老年代内存没办法回收了!(上篇)...

预计阅读时间:8 分钟 本文分为上、下两篇围绕以下几点展开: 01 Skywalking 调用链简介 (上篇) 02 接入 Skywalking Agent 后的服务表现(上篇) 03 应用哪些「手段」排查 Jvm问题的(上篇) 04结合 Jvm GC日志分析到底发生了什么(下篇)...

2019-09-15 20:50:00 3921

空空如也

空空如也

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

TA关注的人

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