自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

小诸葛的博客

只有学习才是对抗平庸的唯一方式

  • 博客(911)
  • 资源 (57)
  • 问答 (5)
  • 收藏
  • 关注

原创 知识学习之道

1、看懂了和能自己写下来不是一回事,看懂了未必能写下来,写下来和能和别人讲述清楚又不是一回事,能自己写下来未必能跟别人讲明白,能跟别人讲明白是最高境界;2、书读百遍,其意自现,无论是书籍还是技术文档,一定要多读,并且学而时习,每一次学习一般都会有新的理解。...

2020-10-06 10:36:53 347

原创 2021Java面试知识点汇总

2019-11-06 22:44:01 503

原创 软件开发之道

1.务必仔仔细细看清该技术的技术文档,切忌概览;2.对于较难理解的,一定要多看,这个多看不仅仅指一遍遍的阅读技术文档或代码,而且也可以理解为不止某一天看,因为有些知识需要消化,当时看过之后未必能够消化掉,因为需要多看几次、多看几天,还有一个原因就是,在学习时有时会陷进去,而此时可以先放下,理清思绪,或者暂时先不理,等到有时间再处理;3.对于某些难以理解的算法,借助画图来理解是一种有效的辅助...

2019-09-10 10:37:46 613

原创 软件开发准则

数据库1.数据表、数据字段一定一定一定要加注释;2.严禁使用数据库保留字段(user、name、type就是保留字段),如果要使用,必须加上符号`,例如:`user`(英文状态下Esc下面的键即可打出符号`);Java1.接口中要打印前端传入的参数和返回的数据,方便查看日志、恢复数据。2.日志打印用日志工具类打印,不要用System.out.println()打印,因为在服务...

2019-05-08 14:58:47 703

原创 MinIO中的纠删码是什么

纠删码是一种数学编码方法,通过将原始数据分割成多个片段(称为数据块),并生成额外的校验块(也称为冗余块或奇偶校验块),以实现数据冗余和容错。它的核心思想是:在丢失部分数据块或校验块的情况下,仍然可以通过剩余的块重建原始数据。与副本机制的区别传统副本机制(如 Kafka 的多副本)直接复制完整数据,存储开销高(例如 3 副本需要 3 倍存储空间)。纠删码通过数学计算生成校验块,存储开销更低(例如 4+4 配置只需 2 倍空间),但需要计算开销来重建数据。

2025-04-04 19:32:28 352

原创 Apache BookKeeper Ledger 的底层存储机制解析

Journal:顺序写入事务日志,保证持久性,存储在 journalDirectory。:异步存储账本数据,分布在 ledgerDirectories 的 .log 文件中。索引:记录条目偏移量,存储在 indexDirectories。分布式:数据按 ensembleSize 分布在多个 Bookie,副本数由 writeQuorum 控制。这种设计结合了高吞吐量(顺序写入)、低延迟(异步存储)和容错性(多副本),非常适合分布式日志存储需求。

2025-04-03 18:17:28 651

原创 Kafka、RocketMQ、Pulsar对比

Pulsar 和 RocketMQ 更倾向于 mmap 的灵活性,Kafka 的 sendfile 在大吞吐量场景下更高效。:Pulsar 的分层架构提供了更高的灵活性和扩展性,而 Kafka 和 RocketMQ 的单体架构更简单但扩展性受限。:Pulsar 提供更灵活的消费模型,Kafka 强调高吞吐量的流式处理,RocketMQ 在事务支持上更强。:Pulsar 的分段和分层存储使其在扩展性和数据保留上优于 Kafka 和 RocketMQ。

2025-04-02 09:42:24 289

原创 Kafka和RocketMQ零拷贝对比

在 Apache RocketMQ 和 Apache Kafka 中,零拷贝(Zero Copy)是一种优化数据传输的技术,旨在减少数据在用户空间和内核空间之间的拷贝,从而提升性能。两者的实现方式有所不同,分别基于操作系统的不同特性。RocketMQ 主要使用 mmap(内存映射)结合 write 的方式实现零拷贝,适用于业务消息的小文件传输和持久化场景。两者都利用了操作系统的零拷贝特性,但设计目标不同:Kafka 追求吞吐量,RocketMQ 强调低延迟和可靠性。

2025-04-02 09:27:51 599

原创 Java基于sendfile实现零拷贝

在 Java 中实现基于 sendfile 的零拷贝功能,通常需要利用 NIO(New I/O)提供的 FileChannel 和 SocketChannel,通过 FileChannel.transferTo() 方法来完成。这个方法底层会尝试利用操作系统的 sendfile 系统调用(在支持的系统如 Linux 上),实现从文件到 Socket 的零拷贝传输,从而避免用户空间和内核空间之间的多次数据拷贝。

2025-04-02 08:15:04 257

原创 Calico如何实现固定ip

Calico 是 Kubernetes 中常用的 CNI(Container Network Interface)插件之一,它通过其 IPAM(IP Address Management,IP 地址管理)功能可以实现 Pod IP 的固定。Calico 固定 Pod IP 的核心机制依赖于其对 IP 地址的分配控制和注解(Annotation)的使用。

2025-04-02 08:06:43 721

原创 rocketmq零拷贝技术底层实现

零拷贝是指在数据传输过程中,尽量避免 CPU 在用户空间和内核空间之间、以及内核空间内部进行不必要的数据拷贝,从而减少上下文切换和 CPU 开销,提升 I/O 性能。RocketMQ 通过零拷贝技术优化了消息的存储和网络传输效率。RocketMQ 的零拷贝通过 mmap + write 实现,利用内存映射技术将磁盘文件映射到共享内存,避免了用户空间和内核空间之间的数据拷贝。结合 Java NIO 的 MappedByteBuffer,RocketMQ 在消息存储和传输中实现了高效的 I/O 操作。

2025-03-27 00:10:34 748

原创 kafka零拷贝技术的底层实现

sendfile 是一种操作系统提供的系统调用(system call),用于在两个文件描述符(file descriptor)之间高效传输数据。它最初由 Linux 内核引入(从 2.1 版本开始),旨在优化文件数据从磁盘到网络的传输过程。sendfile 的核心优势是零拷贝(zero-copy),即避免用户空间和内核空间之间的多次数据拷贝,从而提升性能。out_fd:目标文件描述符,通常是网络套接字(socket)。in_fd:源文件描述符,通常是磁盘文件。

2025-03-26 23:55:00 732

原创 docker启动kafka报错

在容器内不能使用localhost或127.0.0.1,因为这会连接容器内的zk,而容器内没有zk,所以要使用内网ip或让kafka和zk在同一个网络内。

2025-03-25 21:12:52 87

原创 ps -ef查看的命令不完整,如何查看完整的?

ps -wwef。

2025-03-15 21:46:06 107

原创 开发一个go模块并在其他项目中引入

命令初始化 Go 模块,模块名一般使用 GitHub 仓库的完整路径,格式为。go项目引入其他模块的时候,模块必须打成tag才能引入。文件或者其他必要的代码文件。替换成你的 GitHub 用户名,注意,必须指定需要引入的具体包才行。在项目根目录下,使用。替换成你的项目名称。

2025-03-15 10:27:57 320

原创 如何将一个项目推送到gitlab

若本地项目还不是 Git 仓库,要先将其初始化为 Git 仓库。命令将 GitLab 上的项目仓库地址添加为本地仓库的远程仓库。命令把本地仓库的内容推送到远程仓库。初次推送时,要指定远程仓库名称(通常是。命令把项目中的文件添加到暂存区。,具体取决于你的配置),并且使用。添加文件到暂存区后,使用。)和本地分支名称(通常是。替换为实际的分支名称。

2025-03-11 23:11:01 294

原创 istio-proxy是什么时候设置的代理规则?

在所有主容器启动之前:根据 Kubernetes 的生命周期,Init 容器必须在所有主容器(包括业务容器和 istio-proxy)启动之前完成。早于 istio-proxy 运行:IPTables 规则设置完成后,istio-proxy 才会启动并开始监听流量。Istio 的 IPTables 规则是由 istio-init Init 容器在Pod 启动的 Init 阶段早于所有主容器(包括 istio-proxy 和业务容器)启动。在 istio-init 容器运行并完成后。

2025-03-04 18:20:44 781

原创 掌控 Istio Sidecar 启动顺序:深入解析 holdApplicationUntilProxyStarts

holdApplicationUntilProxyStarts: true 的原理是通过 Istio 的注入器,在 Pod 创建时动态修改配置,利用 Kubernetes 的容器生命周期管理,确保业务容器在 Sidecar 容器(istio-proxy)完全启动并就绪后再启动。其核心是注入一个隐式的依赖检查机制,可能基于健康端点或启动命令的包装。这种方法在 Istio 层面封装了复杂性,用户只需添加注解即可实现需求。

2025-03-04 18:16:56 355

原创 如何查看istio-proxy设置的iptables规则

【代码】如何查看istio-proxy设置的iptables规则。

2025-03-04 15:56:41 284

原创 helm install label为数字报错

【代码】helm install label为数字报错。

2025-02-26 15:34:51 103

原创 istio如何如何设置sidecar日志级别

【代码】istio如何如何设置sidecar日志级别。

2025-02-24 16:31:03 116

原创 istio使用wasmplugin拉取镜像报错:cannot fetch Wasm module oci://10.120.1.233:8443/service-mesh/wasmdemo:v1.0?

出现这个问题是因为harbor的证书无法认证导致的。

2025-02-24 09:19:57 190

原创 Caused by: java.lang.IllegalArgumentException: Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘

下面配置中,使用exclude = {DataSourceAutoConfiguration.class}排除了数据库自动配置,因此启动会报错。

2025-02-15 09:49:01 196

原创 apipost测试websocket请求

websocket

2025-02-14 16:08:02 141

原创 mysql查询卡住如何排查

【代码】mysql查询卡住如何排查。

2025-01-19 21:02:08 161

原创 股票api接口

【代码】股票api接口。

2025-01-18 18:04:44 266

原创 istio proxy proxyless ambient模式对比

【代码】istio proxy proxyless ambient模式对比。

2025-01-14 11:09:28 134

原创 go oom没有日志如何排查

查看 Docker 容器的退出代码如果容器因为 OOM 被杀死,退出代码会是137(通常由SIGKILL信号引起)。你可以查看容器的退出代码来确认是否是由于 OOM 导致的。

2025-01-12 10:43:50 201

原创 docker run一个镜像如何指定最大可使用的内存大小、cpu大小

-memory或-m:限制容器的最大内存使用。--cpus:限制容器的最大 CPU 使用数量。:设置容器最大可用的交换空间(swap)。:设置容器的 CPU 权重,控制容器在 CPU 资源竞争中的优先级。和:更精细地控制容器的 CPU 使用时间。这些参数可以帮助你确保容器不会过度消耗系统资源,影响其他进程的运行。

2025-01-12 10:04:13 1011

原创 go oom堆内存分析

的输出结果来看,我们可以分析内存占用的热点和可能的内存问题。

2025-01-11 18:05:54 495

原创 Go oom分析(二)——导出dump离线分析

在 Go 程序中导出内存或 CPU 的 dump 文件(通常通过。

2025-01-11 15:32:46 490

原创 Go oom分析(一)——使用pprof线上分析

确保在程序中加入以下代码,不一定要使用init方法,也可以在任意位置添加如下代码,在需要的时候运行即可。是 Go 自带的性能分析工具,用于检查内存使用、CPU 时间和 Goroutines 数量。如果数量持续增加,可能存在 Goroutine 泄漏问题。,查看哪些函数分配了最多的内存。

2025-01-11 15:22:34 710

原创 istio-proxy oom问题排查步骤

cluster数量太多会导致istio-proxy占用比较大的内存,此时需检查是否dr资源的host设置有配置为*若采样率设置过高,在压测时需要很大的内存来维护链路数据。可以调低采样率或增大istio-proxy内存。检查telemetries资源中的采样率。检查iop中的采样率,

2025-01-10 17:52:43 441

原创 istio-proxy日志字段解释

这是的访问日志,记录了一个 HTTP 请求的详细信息。

2025-01-10 15:23:14 858

原创 envoy默认参数

【代码】envoy默认参数。

2025-01-10 09:33:47 151

原创 istio-proxy内存指标

在 Istio 环境中,是 Envoy 的边车代理容器。通过运行命令,可以查询 Envoy 的内存统计信息。

2025-01-09 13:52:37 440

原创 go学习手册

https://qcrao91.gitbook.io/goGo 语言设计与实现 | Go 语言设计与实现

2025-01-06 09:10:21 100

原创 好用的画图工具

【代码】好用的画图工具。

2025-01-06 07:55:57 112

原创 go——map源码之元素数量和桶数量

【代码】go——map源码之元素数量和桶数量。

2025-01-05 10:25:45 133

原创 时间复杂度o(N)是什么意思?

O(N)表示算法的运行时间随输入规模N的增大而线性增长。通常用于描述需要逐个访问、处理每个元素的算法(如遍历数组、链表等)。这种时间复杂度的算法在大规模数据时运行较慢,但比O(N^2)或更高的复杂度算法更具可扩展性。

2025-01-04 11:22:00 534

xiaozhugedubbodevelop.zip

本资源是使用idea创建的maven聚合项目。项目中有三个工程,一个基础api工程,一个消费者工程,一个服务提供者工程。

2020-05-09

deskjet 2132 驱动.zip

本资源是惠普打印机deskjet 2132的驱动程序安装包,因官网下载很慢,特此分享给大家。

2019-10-28

junit单元测试相关jar包.zip

本资源内有两个工具包,分别为hamcrest-core-1.3.jar、junit-4.12.jar。

2019-09-30

图书管理系统软件开发全过程文档.doc

本文档是软件开发全过程文档,包括需求分析 、概要设计、详细设计、测试计划一整套流程。

2019-08-08

licecap123-install.zip

这是一款gif动态图制作工具,很好用,以录屏的方式制作动态图。

2019-07-24

FiddlerSetup.zip

Fiddler是位于客户端和服务器端的HTTP代理,也是目前最常用的http抓包工具之一 。 它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据、设置断点、调试web应用、修改请求的数据,甚至可以修改服务器返回的数据,功能非常强大,是 web调试的利器。

2019-07-16

方寸科技接口文档模板.docx

本资源是restful风格的api接口文档模板,主要用于前后端联调。

2019-06-25

wx_code_highlight.zip

本工具是一个微信推文代码高亮工具,在写微信推文的时候难免要加入一些代码,通过此工具可实现代码高亮.

2019-05-27

SpringCloud案例(集成了Eureka、Ribbon、Feign)

本案例是SpringCloud项目案例,集成了Eureka、Ribbon、Feign等。

2019-04-09

SpringCloud案例(集成了Eureka、Ribbon)

本案例是一个SpringCloud案例,项目继承了Eureka、Ribbon。

2019-04-04

SpringCloud案例(仅集成了Eureka)

本案例是SpringCloud项目案例,仅集成了Eureka,后续会持续集成Ribbon等。

2019-04-02

软件工程开发文档

本资源是来自东软公司的软件工程开发文档,内容包含从定义产品需求到开发测试全过程。

2019-02-25

Nginx高性能Web服务器详解

Nginx高性能Web服务器详解,Nginx是一款高性能web服务器,主要用于反向代理和负载均衡。

2019-02-25

StarUML v3.0.2

该安装包是从StarUML官方网站下载的最新版的,因为外网速度较慢,所以特此分析给大家使用。

2019-02-21

图书管理系统软件开发文档

本资源是严格遵循软件工程开发文档而编写的软件开发文档。

2019-02-15

软件开发文档模板

本资源是东软集团的软件工程开发规范,分享给大家以供学习、参考使用。

2019-02-15

python-3.7.2 for windows

本资源是python3.7.2安装包,因为官网下载速度较慢,特此分享给大家。

2019-01-18

java解惑中文版、高清

该书特写了95个有关Java或其类库的陷阱和缺陷的谜题,其中大多数谜题都采用了短程序的方式,这些程序的行为与其看似的大相径庭。

2018-12-27

OBS-Studio

OBS Studio是一款可以视频直播软件,该软件与网站中的直播软件不一样,他是一款国外的互联网流媒体直播软件,其直播的构架模式采用开源的方式进行录制,常常用在游戏直播中,软件支持串流、音频、视频等设置,能够让用户可以自由选择自己的直播模式,您可以选择让人们看到指定的视频展现模式,可操作性非常丰富,对于不同的朋友设计了具体的直播方案,充分考虑到了所有类型的直播,操作起来也是比较方便的,可以设置多个场景,方便用户随时切换。

2018-12-22

RabbitMQ安装手册

MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。

2018-11-09

kibana-6.4.2-x86_64

Kibana使得理解大量数据变得很容易。它简单的、基于浏览器的界面使你能够快速创建和共享动态仪表板,实时显示Elasticsearch查询的变化。

2018-10-22

kibana-6.4.2-windows-x86_64

Kibana使得理解大量数据变得很容易。它简单的、基于浏览器的界面使你能够快速创建和共享动态仪表板,实时显示Elasticsearch查询的变化。

2018-10-22

kibana-6.4.2-linux-x86_64

Kibana使得理解大量数据变得很容易。它简单的、基于浏览器的界面使你能够快速创建和共享动态仪表板,实时显示Elasticsearch查询的变化。

2018-10-22

王道2019年考研复习指导四本无水印PDF

王道2019年考研复习指导四本无水印PDF,供大家复习考研用,仅供学习参考用,如有需要,请购买正版书籍阅览,祝愿大家金榜题名!

2018-10-19

计算机程序设计艺术(中文版)pdf三卷合集

该书的原作者是唐纳德,该书被《美国科学家》杂志评价为20世纪最重要的12本物理科学类专论书。

2018-10-16

Xshell6.0 linux远程连接工具

该工具是用于远程连接linux的ssh远程连接工具,仅供研究学习使用,严禁用于其他商业用途。

2018-09-18

feeds流优质内容排序机制

本文档是优质内容排序机制,有着详细的打分算法、公式。

2018-09-06

SQLyog Ultimate

mysql图形界面管理工具,供大家学习研究使用,严禁用于商业用途!

2018-08-27

sublime_test

本资源是一款强大的编辑器,无需注册即可使用,包含32位和64位的。

2018-08-17

react-developer-tools

该资源是谷歌浏览器react开发调试工具,新版的,亲测可用。

2018-07-09

码出高效阿里巴巴Java开发手册

该资源是阿里巴巴集团Java开发手册,主要用于Java开发中的命名规范及开发规范。

2018-05-17

SSH Secure File Transfer Client

该资源是Windows通过ssh远程连接linux的工具,主要用于远程控制和文件传输。

2018-04-11

Navicat免注册版

本资源是一款数据库图形管理工具Navicat,附带注册码。

2018-03-27

mysql 5.1.51 32位安装包

本资源是mysql5.1.51Windows版本的安装包,安装包版本为32位,但在32电脑和64为电脑下均可以使用。

2018-03-27

redis入门与实践

本文档是redis入门文档,文档内容很全,包括理论与实践,最后讲解了redis主从复制与集群。

2018-03-12

java excel api

本资源是java操作Excel的jar包,jxl可以轻松实现各种复杂的功能呢。

2018-03-06

java连接mysql和sql server的驱动包

该资源是java连接mysql和sql server的驱动包,mysql5.1以上,sql server 2012以上。

2018-03-06

slfj-nop-1.7.5.jar

本jar包是搭建大数据集群环境所必须的jar包,使用在linux环境下。

2018-02-16

X-admin后台管理框架

本资源是基于bootstrap的后台管理框架模板,快速搭建后台页面。

2018-02-05

h+后台管理模板

本资源是基于bootstrap的后台管理模板,快速搭建后台页面。

2018-01-31

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

TA关注的人

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