自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

qqxhb 资源共享

知识共享、提高效率、不断学习、共同进步。

  • 博客(9)
  • 问答 (1)
  • 收藏
  • 关注

原创 JVM内存模型及CMS、G1和ZGC垃圾回收器详解

1. JVM 内存模型JVM 内存模型主要指运行时的数据区,包括 5 个部分,如下图所示。栈也叫方法栈,是线程私有的,线程在执行每个方法时都会同时创建一个栈帧,用来存储局部变量表、操作栈、动态链接、方法出口等信息。调用方法时执行入栈,方法返回时执行出栈。本地方法栈与栈类似,也是用来保存线程执行方法时的信息,不同的是,执行 Java 方法使用栈,而执行 native 方法使用本地方法栈。程序计数器保存着当前线程所执行的字节码位置,每个线程工作时都有一个独立的计数器。程序计数器为执行 Ja

2020-06-28 09:46:21 2680 2

原创 超详解读服务架构的演进之路及前言容器技术原理

1. 系统架构演进首先以演进的方式来了解不同的系统架构。1.1 单体架构最简单的系统架构是单体服务,如下图所示。一个项目中的多个服务,混合部署在一个进程内,服务之间的交互都是通过进程内调用完成的,正如图中 Service 之间的红色箭头所示。这样做的好处是可以快速开发、部署服务,服务之间调用的性能也最好。当然,这种架构缺点也非常多,比如:随着业务的增长,项目越来越臃肿;服务之间因为 JAR 包引用导致频繁的依赖冲突;服务资源变更困难,因为一个服务可能被多个不同的业务引用,升级资源需要多个业

2020-06-30 09:24:26 285

原创 CentOS 安装Python3.6.5并保留默认2.7

安装依赖包支持SSL传输协议 解压功能 C语言解析XML文档的 安装gdbm数据库 实现自动补全功能 sqlite数据库 gcc编译:yum install libffi-devel openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc下载python可以通过命令下载,也可以直接网站下载再上传到服务器。wget https://www.python.org/ftp/python/3.6.5

2020-06-29 15:51:17 117

原创 ORM框架Mybatis核心知识及与springboot整合缓存失效

1. Mybatis优缺点MyBatis 的优点:MyBatis 是原生SQL,不像 Hibernate 的 HQL 需要额外的学习成本;MyBatis 的 SQL 语句与代码进行了解耦合,这与 Hibernate 是一致的;MyBatis 功能简单,学习成本比较低,使用的门槛也非常低,可以快速上手;MyBatis SQL调优比较灵活,而 Hibernate,SQL 语句是自动生成的,当有复杂语句需要进行优化时就比较难处理。MyBatis 的缺点:相比 Hibernate 这样的全自动 OR.

2020-06-29 09:14:04 185

原创 Netty核心知识点及通过Netty实现的RPC框架对比

1. Netty框架如上图左侧所示,首先了解 Netty 的特点。Netty 是一个高性能的异步事件驱动的 NIO 框架,它对消息的处理采用串行无锁化设计,提供了对 TCP、UDP 和文件传输的支持。Netty 内置了多种 encoder 和 decoder 实现来解决 TCP 粘包问题。Netty 处理消息时使用了池化的缓冲池 ByteBufs,提高性能。结合内存零 copy 机制,减少了对象的创建,降低了 GC 的压力。1.1 主要概念需要掌握 Netty 中的一些对象概念。将 Sock

2020-06-29 09:12:58 611

原创 Spring全家桶及核心知识点梳理全解

1. Spring全家桶Spring Framework,也就是我们常说的 Spring 框架,包括了 IoC 依赖注入,Context 上下文、 Bean 管理、SpringMVC 等众多功能模块,其他 Spring 项目比如 Spring Boot 也会依赖 Spring 框架。Spring Boot 的目标是简化 Spring 应用和服务的创建、开发与部署,简化了配置文件,使用嵌入式 Web 服务器,含有诸多开箱即用的微服务功能,可以和 Spring Cloud 联合部署。Spring Boot

2020-06-29 09:11:08 575

原创 不得不提的开发、协作及调优工具

文章目录1. 常用工具介绍1.1. 团队协作工具1.2. 质量保证工具1.3. 压测工具1.4. 容器与代理工具1.5. 文档管理工具1.6. 网络工具2. 详解 JVM 工具2.1 JMC2.2 BTrace2.3 其他 JVM 工具3. 详解 Git3.1 Git 常用命令3.2 Git 常用工作流4. Linux 工具1. 常用工具介绍1.1. 团队协作工具如上图所示,先看左边的团队协作类工具。Ant+ivy、Maven、Gradle 都是用来构建项目、管理依赖的工具。其中 Ant 通过直接

2020-06-28 11:29:14 270

原创 JUC常用工具类核心分享

JUC 是 Java 提供的用于多线程处理的工具类库,来看其中的常用工具类的作用,如下图所示。如上图所示,第一行的类都是基本数据类型的原子类,包括 AtomicBoolean、AtomicLong、AtomicInteger 类。AtomicLong 通过 unsafe 类实现,基于CAS。unsafe 类是底层工具类,JUC 中很多类的底层都使用到了 unsafe 包中的功能。unsafe 类提供了类似 C 的指针操作,提供 CAS 等功能。unsafe 类中的所有方法都是 native 修饰的。

2020-06-28 10:17:23 446

原创 Kafka入门及实战全解

文章目录1. kafka基础入门1.1. kafka是什么?1.2. kafka基本概念:1.3. kafka优缺点1.4. kafka安装&启动1.5. kafka基本管理操作命令:2. kafka实战2.1. kafka java客户端实战2.2. kafka生产者参数详解2.3. 偏移量与偏移量提交2.4. Rebalance 分区再均衡2.5. 独立消费者:2.6. 消费者参数:2.7. 使用java来操作kafka管理命令1. kafka基础入门1.1. kafka是什么?kafk

2020-06-16 10:07:54 201

空空如也

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

TA关注的人

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