始于足下.|

MuXinu

园龄:2年7个月粉丝:3关注:1

Java中常用命令jstat、jmap、jstack(基于jdk1.8)
摘要: 在 Java 性能调优和故障排查中,jstat、jmap 和 jstack 是三种常用的命令行工具,主要用于 监控 GC、查看内存快照、分析线程状态。 1. jstat(JVM 统计信息监控) 用于 实时监控 JVM 运行状态,主要关注 GC、类加载、编译 等信息。 option: 参数选项 -t:
10
0
0
分布式系统理论 中CAP理论和BASE理论
摘要: CAP 理论 CAP(Consistency, Availability, Partition Tolerance)理论是由计算机科学家 Eric Brewer 提出的,主要用于描述分布式系统在一致性、可用性和分区容忍性之间的权衡关系。 CAP 三要素 一致性(Consistency) 所有节点在同
7
0
0
MySQL中的三种日志(Undo Log、Redo Log和Binlog)
摘要: MySQL 主要有三种重要的日志机制:Undo Log、Redo Log 和 Binlog,它们在数据库事务管理、崩溃恢复和数据持久化等方面发挥重要作用。下面详细介绍这三种日志的作用、存储方式和工作原理。 1. Undo Log(回滚日志) 作用 主要用于 事务回滚,保证事务的原子性(Atomici
15
0
0
Kafka如何保证消息消费的顺序性
摘要: Kafka 在保证消息消费顺序性方面主要依赖 Partition(分区)级别的顺序保证,结合Producer 端的写入策略和 Consumer 端的消费方式,具体如下: 1. Partition 级别的顺序保证 Kafka 在单个 Partition 内保证消息的顺序性,即 Producer 发送的
34
0
0
linux提供的零拷贝技术
摘要: Linux 提供了多种 零拷贝(Zero-Copy) 技术,主要用于 减少 CPU 开销、提高数据传输效率,适用于 高性能网络传输、文件 I/O 等场景。以下是 Linux 常见的 零拷贝技术: 1. sendfile() 🔹 适用于:文件传输(文件 → 套接字) 🔹 原理: 直接将文件从 内核
16
0
0
kafka为什么这么高效
摘要: Kafka 之所以高效,主要是因为它采用了一系列 高吞吐、低延迟、可靠性高 的优化技术,涵盖了 存储结构、消息传输、数据复制、批量处理 等多个方面。以下是 Kafka 高效的关键因素: 1. 顺序写入(Sequential Write) Kafka 主要采用顺序写入磁盘,而非随机写入,大幅提高了磁盘
8
0
0
Java 内存模型(JMM - Java Memory Model)
摘要: Java 内存模型(JMM - Java Memory Model) 1. 什么是 Java 内存模型(JMM)? Java 内存模型(JMM,Java Memory Model)是 Java 虚拟机(JVM)对多线程访问内存的抽象定义,主要用于屏蔽不同 CPU 和操作系统的内存访问差异,保证 Ja
9
0
0
kafka同步机制
摘要: Kafka 的同步机制(Replication & Synchronization) Kafka 通过副本同步机制(Replication & Synchronization)来保证数据的高可用性和可靠性。Kafka 的同步机制主要涉及以下几个核心概念: 1. 副本(Replication) Kaf
11
0
0
kafka 如何保证消息不丢失
摘要: Kafka 如何保证消息不丢失 Kafka 主要从 生产者(Producer)、Broker(服务器)、消费者(Consumer) 三个方面保证消息不丢失。下面是完整的代码示例,包括关键的 Kafka 配置。 组件 关键配置 作用 生产者 acks=all 确保消息写入所有 ISR 副本 retri
22
0
0
常用JVM参数(基于JDK1.8)
摘要: JVM常用参数解析 在 Java 应用程序中,JVM(Java Virtual Machine)是运行代码的核心组件。为了优化应用性能,JVM 提供了一些可调的参数,帮助开发者和运维人员根据实际需求调整内存分配、垃圾回收行为、日志记录等。本文将详细介绍常用的 JVM 配置参数,帮助你更好地理解和优化
181
0
0
飞牛nas搭建体验
摘要: 一、前言 在某站看up主的HomeAssistant教程时,发现up主使用一个绿联云的nas系统看起来很美观方便,搜索了一下发现其本质就是linux包装的,并且提供了客户端可以通过图形化界面操作,博主也玩过很多linux系统,基本都是连接显示器才有界面可以操作, 这种可以通过软件连接linux就能有
1072
0
0
MemoryAnalyzerTool(mat)分析dump文件
摘要: 一、常见需要分析dump文件场景 1.1 fullGC频繁 1.2 堆空间溢出 1.3 元空间溢出 二、准备工具 能分析dump文件的工具很多比如Java自带的jvisualvm、商业软件Jprofile、mat(MemoryAnalyzerTool)、IDEA等,除了mat和jvisualvm其他
786
0
0
Spring中如何解决循环依赖
摘要: 八字真言:“三级缓存,提前暴露” 此文只是介绍简单的情况便于理解,实际上场景会更复杂、情况会更多,但是原理相通。 一、什么是循环依赖? 从字面上来理解就是A依赖B的同时B也依赖了A,就像下面这样 上图是简单的循环依赖,也会存在A依赖B,B依赖C,C依赖A这种循环,或者更复杂的情况。 (在实际工作中应
37
0
0
Java经典垃圾回收器介绍
摘要: 先看总结: 垃圾回收器 分类 作用位置 使用算法 特点 适用场景 Serial 串行 新生代 复制算法 响应速度优先 适用于单CPU环境下的Client模式 ParNew 并行 新生代 复制算法 响应速度优先 多CPU环境Server模式下与CMS配合使用 Parallel 并行 新生代 复制算法
107
0
0
Netty整体架构解析
摘要: 一、整理架构 下图是Netty官网上给出的整体功能模块: 1. Core 核心层 Core核心层是Netty最精华的部分了,它提供了底层网络通信的抽象和实现,包括可扩展的事件模式、通用的通信API和支持零拷贝的ByteBuf 2. Protocol Support 协议支持层 协议支持层上基本覆盖了
1405
0
0
Netty入门程序
摘要: 本章使用Netty开发一个入门程序,使用ServerBootstrap开发时间服务TimeServer,使用Bootstrap开发客户端TimeClient请求TimeServer获取时间。 开发 TimeServer之前,先回顾一下使用 NIO 进行服务端开发的步骤。 (1)创建 ServerSo
93
0
0
JAVA非阻塞IO、异步IO(NIO、AIO)
摘要: 一、JAVA NIO 在介绍NIO编程之前,我们首先需要澄清一个概念:NIO到底是什么的简称?有人称之为New I/O,因为它相对于之前的I/O类库是新增的,所以被称为New I/O,这是它的官方叫法。但是,由于之前老的I/O类库是阻塞I/O,New I/O类库的目标就是要让Java支持非阻塞I/O
991
0
0
JAVA阻塞IO(BIO)简介
摘要: 一、BIO编程 传统的BIO编程 网络编程的基本模型是C/S模型,即两个进程间的通信。 服务端提供IP和监听端口,客户端通过连接操作想服务端监听的地址发起连接请求,通过三次握手连接,如果连接成功建立,双方就可以通过套接字进行通信。 传统的同步阻塞模型开发中,ServerSocket负责绑定IP地址,
70
0
0
Linux中的IO模型介绍
摘要: 一、IO是什么 I/O(Input/Output),中文名为输入/输出,指的是一切操作程序或设备与计算机之间发生的数据传输的过程。它分为IO设备和IO接口两个部分。 IO设备,就是指可以与计算机进行数据传输的硬件。最常见的I/O设备有打印机、硬盘、键盘和鼠标。从严格意义上来讲,它们中有一些只能算是输
31
0
0
GraphFrames介绍和基本用法
摘要: 阅读本篇博客前需先了解图数据、scala、spark相关知识 GraphFrames是一款图处理类库。该类库构建在DataFrame之上,既能利用DataFrame良好的扩展性和强大的性能,同时也为Scala、Java和Python提供了统一的图处理API。 github:https://githu
473
0
0
点击右上角即可分享
微信分享提示
深色
回顶
收起