自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(673)
  • 资源 (18)
  • 收藏
  • 关注

原创 pattern of distributed system 读书笔记-Patterns of Communication between Nodes

摘要:本文探讨了分布式系统中节点通信的三种优化模式:1) 单套接字通道,通过持久化的单一连接确保消息有序传递,并配合心跳检测维持连接活跃;2) 请求批处理,通过聚合小数据量请求降低网络开销,需动态调整批次大小(如Kafka默认16KB)并设置等待时间阈值;3) 请求流水线,采用发送/接收双线程提升吞吐量,但需处理服务端过载和乱序请求问题(如Raft通过日志索引匹配机制实现请求校验)。这些方法在保证可靠性的同时,显著优化了延迟和吞吐量。(149字)

2025-07-20 11:01:55 912

原创 pattern of distributed system 读书笔记- Patterns of Cluster Management

文章摘要: 本文探讨了集群管理的核心模式,包括一致性核心(Consistent Core)、租约机制(Lease)和状态监控(State Watch)。一致性核心通过3-5个节点的小集群提供线性化保证,管理元数据和集群决策。租约机制利用一致性核心实现容错,通过心跳机制更新租约时间,并处理节点故障。状态监控允许客户端注册对特定状态变化的兴趣,减少服务器连接压力,但需注意连接故障和事件丢失问题。文中还区分了单调时钟时间和挂钟时间的不同用途及限制。

2025-07-20 10:57:28 436

原创 pattern of distributed system-Patterns of Distributed Time(logical timestamps)

分布式系统中的时间模式(逻辑时间戳) Lamport时钟:解决跨服务器时间戳不可比问题,通过单调递增的数字维护因果关系,但只能提供偏序关系,无法比较不同服务器的独立事件。 混合时钟:结合系统时间和逻辑计数器,既保持单调性又关联实际时间,适用于版本化存储(如MongoDB、CockroachDB),支持分布式事务的时间戳协调。 时钟边界等待:解决时钟漂移导致的读取过时数据问题,通过延迟读写确保节点时钟同步,并采用读取重启机制处理时钟滞后问题。云服务商通过原子钟等技术将时钟漂移控制在毫秒级。 这些模式在保证分布

2025-07-17 09:00:50 827

原创 pattern of distributed system 读书笔记- Patterns of Data Partitioning

摘要:分布式数据存储与事务处理策略 本文介绍了三种分布式数据存储和事务处理的关键技术: 固定分区:通过哈希函数将数据映射到逻辑分区,再分配到集群节点,实现均匀分布和快速查询。新增节点时只需移动少量数据,并采用协调节点跟踪分区映射关系。 键范围分区:针对范围查询场景,采用有序键分区策略。支持预定义键范围和自动分区拆分,基于负载指标(请求数、CPU/内存使用率)动态调整分区大小。 两阶段提交:解决分布式事务一致性问题,包含准备阶段(节点承诺执行)和提交阶段(实际执行)。采用预写日志保证持久性,提供多种锁策略(错

2025-07-17 06:52:59 1015

原创 pattern of distributed system 读书笔记- Patterns of Data Replication

摘要: 本文探讨了数据复制中的关键技术模式。首先介绍了Write-Ahead Log(WAL)机制,它通过顺序追加日志确保数据持久性,并讨论了日志管理、校验和性能优化策略。其次讲解Segmented Log和Low-Water Mark技术,前者将大日志分割为多个文件,后者通过设置最低偏移量来安全清理旧日志。在集群管理方面,重点分析了Leader-Follower架构及其选举机制(包括Zab和Raft算法),以及心跳检测在故障发现中的应用。文章还指出多数读写(Quorum)不足以提供强一致性保证,并比较了不

2025-07-14 22:17:56 842

原创 pattern of distributed system 读书笔记-Overview of the Patterns

分布式系统数据一致性模式综述 本文系统介绍了分布式系统中确保数据一致性的关键模式。在单服务器场景下,预写日志(WAL)保障数据持久性;多节点环境中,领导者-跟随者模式通过心跳检测维持可用性,多数派仲裁机制确保日志复制可靠性。高水位标记(High-Water Mark)机制有效跟踪可提交日志位置,而单更新队列和幂等性设计提升了系统吞吐量。分区技术通过合理的数据分布和复制策略(通常3或5副本)实现横向扩展,两阶段提交协议维护跨分区一致性。时间排序方面,Lamport时钟和混合时钟替代系统时间戳,解决了分布式环境

2025-07-14 21:49:16 1005

原创 JDK 8->21 NEW FEATURES

本文摘要:介绍了Java新版本(11-21)的核心特性更新,主要包括:1)文本块与多行字符串(""");2)增强的switch表达式(返回值、模式匹配);3)记录类(Record)简化数据类;4)密封类(Sealed Class)控制继承;5)改进的NPE提示;6)日期/数字格式化增强;7)Stream API新增toList()方法;8)虚拟线程(Virtual Threads)提升并发性能;9)垃圾回收器优化(ZGC/Shenandoah);10)结构化并发管理。这些特性显

2025-06-25 09:04:10 801

原创 jdk 升级相关

emt4j和jar-analyzer是两款Java工具:emt4j用于记录和追踪Java应用中特定方法的调用情况,支持按线程、时间等维度分析;jar-analyzer则专注于JAR文件分析,能检测冲突依赖、重复类等常见问题。两款工具均可帮助开发者快速定位性能问题和依赖冲突,适用于日常开发调试场景。参考文档详细介绍了工具的使用方法和实际案例。

2025-06-22 17:12:24 99

原创 华为数字化转型-平台篇

4.1 1 一把手担责4.2 2 战略引领4.3 3 重构业务4.4 4 转人磨芯4.5 5 眼高手低- 数字化转型一定要从高处着眼,目标要远大,要系统性地描绘出数字化转型愿景和架构蓝图,形成变革全局视图,确保企业上下一盘棋。但在具体开展时,企业一定要从解决自身的现实问题入手,识别业务运作的高能耗点、管理低效点以及客户体验缺失环节,找准转型突破口进行重点推进而非面面俱到,赢得信心,从而让更多人愿意参与进来,并带动其他转型工作有序开展。

2025-04-01 08:20:51 1063

原创 华为数字化转型-方法篇

IT产品团队由于包含了业务、数据、IT人员,更适合引入服务化架构,使得IT系统由做“功能”变为做“服务”,将一个复杂的IT系统拆分为一个个相对解耦的应用服务,使其能够基于业务场景的变化进行快速优化和迭代,从而更加灵活地响应业务变化。在规划工作中,规划团队首先需要解读企业业务战略和商业模式的变化,识别出企业的“新定位、新业务、新模式”,再思考通过什么样的变革来支撑业务战略目标的达成,进而通过一系列变革项目来改变业务运作模式,支撑业务发展和商业成功。(2)业务能力:业务能力是服务化变革的入手点。

2025-03-30 20:44:52 849

原创 华为数字化转型-认知篇

模式,以清晰的业务战略作为数字化转型规划的输入,通过愿景来描绘未来5~10年数字化转型将取得的成就,进而设计架构蓝图,对愿景进行系统性的、分层分级的梳理和诠释,最后规划出变革项目,承接数字化转型举措,并为每一个项目确定优先级。客户需求的差异化和企业间分工的精细化,让单一企业的产品越来越难以满足客户的“痛点”需求。我们认为,只有认识到数字化带来的企业内生产关系的变化,设计好未来的企业运营模式,重新定义“总部”“区域”和“一线项目组”的关系,才能让数字化成为缩短决策链条、提升运营效率的推进器。

2025-03-30 20:30:32 630

原创 kv server code 分析

最后使用函数getDirectRequest调用store.LoadLastMsg然后使用mset.outq.send将消息发送到消费者的inbox。核心处理函数是processDirectGetLastBySubjectRequest,下图显示了调用堆栈和跟踪。kv流的访问有所不同,将通过功能subscribeToDirect设置为直接访问。

2025-03-09 21:15:30 306

原创 nats kv client code分析

update需要设置expectedRevision,其动作可以描述为:如果键存在并且其最新版本(expectedRevision)与预期匹配,则将其设置为键的值。使用 subject “DIRECT.GET.KV_profiles.$KV.profiles.sue.color”通过指令:DIRECT.GET. 告诉服务端调用 $JS.API.DIRECT.GET.KV.profile"就是一个流,如果有人写错了代码,可以删除它。使用filter订阅的要注意,以下代码是有问题,不能包括"sue"

2025-03-09 21:10:14 830

原创 nats jetstream server code 分析

jetstream导入两个对象:stream and consumer,在stream 之上构造jetstreamapi。在nats代码中,以下是一些常见的缩写。

2025-03-09 20:56:04 1003

原创 nats jetstream 测试和客户端分析

当一个消息保存到store后,一个全局的seq 被返回并送给客户端,实现了message的可最终和最少一次发送。当一个客户端发送了stream message,processJetStreamMsg 负责处理消息。当创建stream的时候,最重要的 option 是 retentionPolicy。msg先写入缓存,然后再写入磁盘,所以如果不是在集群模式下,可能会丢失。最后,写入磁盘的函数是flushPendingMsgsLocked。可以使用如下模式设置timeout。最后返回消息给客户端是如下函数。

2025-03-09 20:37:58 990

原创 nats queue subscription 服务端代码分析

同时当一个服务被订阅的事后,$SRV 相关tpoic也被订阅,但只要service是使用队列订阅, 以下是通过增加测试代码的输出。首先可以看到下面的调用stack信息,可以看到调用了sublist.go 的insert 函数。如果在订阅使用了队列中,则放入qsubs map对象中,否则将放入psubs map对象中。如果是queue模式,解析接收到的message并发送给消费者是调用如下函数。如果打开debug模式和添加一些调试低码,跟踪消息处理可以得到如下结果,其中。非队列模式是如下代码。

2025-03-07 22:15:50 194

原创 nats service frame 代码分析

现在我们可以使用 req 来 ping 了,注意,下面的 $SRV.PING.minmax 不能被符号 ’ 或 " 包含。我们可以使用队列组“q”,所有服务提供者都会在队列中,以避免多个实例响应相同的请求并提供高可用性。service endpoint 订阅是通过 qGroup 参数来订阅,可以参考下面的代码。会得到如下输出,可以清楚的看到订阅了哪个subject以及是否通过队列订阅。注意,这里是 SRV ping,不是健康连接中使用的 ping/pong。然后让我们看看服务构建函数。

2025-03-05 21:18:05 442

原创 nats request 和reply 客户端模式代码分析

理论上,你可以使用两个消费者来回复同一个请求,两个请求都会发送给请求者,但只有一个响应会被分派到 Future.get 函数,我们使用 Future 来支持某些场景,例如从不同来源获取营销建议,但只向我们的客户显示一个。当每个返回的信息达到客户端的时候,deliverReply function 被dispatcher调用,通过token +remove 来保证每次request 只有第一个到达的reply会触发future调用。

2025-03-05 21:06:14 261

原创 nsc account 及user管理

从安全角度,推荐使用sign 模式进行nats account及用户管理此外通过nsc 管理用户和权限,可以统一实现全局管控,包括subject管控,避免随意增减subject。

2025-02-14 19:38:05 1214

原创 nats 消息系统架构

nats focus 在realtime ,但缺少了iot,另外nats的核心是快速,在core里面其实没有提供al least once, exactly once模式。Subject Mapping:通过消息mapping,实现原始subject按policy 转发到一个或者多个subject下,用于灰度分流,细分访问控制等场景。nats的serviceframe = request/reply+queue +指定$SRV subject。nats server/lead的核心对象。

2025-02-14 08:07:19 674

原创 Doris 2.1 Optimization Technology Principle Statistics

Doris 2.1 Optimization Technology Principle Statistics, very important for CBO

2025-01-25 16:04:23 74

原创 Doris 2.1 Optimization Technology Principle 学习笔记

Queries Acceleration Optimization Technology Principle

2025-01-25 15:54:39 166

原创 Queries Acceleration -Tuning- Common Tuning Parameters 学习笔记

2.1 Whether to enable the new optimizer 2.2 Default Value-true 2.3 For scenarios such as low-version upgrades, initially set to false; after upgrading, it can be set to true3.1 Whether to enable DML support for the new optimizer 3.2 Default Value-true

2025-01-24 18:16:45 198

原创 Queries Acceleration -Tuning- Tuning Execution 学习笔记

Doris runtime waittime , skey and parallelism adjustment

2025-01-24 18:13:27 169

原创 Timeout or no response waiting for NATS JetStream server

当使用jetStream 出现"Timeout or no response waiting for NATS JetStream server" 错误的时候要注意后面的“no response”,尤其是开发测试,要去check server 是否启动了 jet stream。

2025-01-24 08:34:19 443

原创 Doris 2.1 Queries Acceleration -Tuning Plan学习笔记

Doris 优化步骤

2025-01-20 18:27:41 219

原创 doris 2.1 Queries Acceleration-Hints 学习笔记

2.3 UnUsed 和 SyntaxError:Both indicate that the hint is not effective. SyntaxError indicates that there is a syntax error in using the hint or the syntax is not supported, and additional information about the unsupported reason will be provided.

2025-01-20 18:18:28 151

原创 Doris 2.1 Queries Acceleration Colocation Join学习笔记

类似把相关表cluster 放在一起。

2025-01-20 18:14:19 99

原创 mark 一下conductor github

Netflix 关闭conductor 后,后续https://orkes.io/content/ 继续在维护,github地址如下。最新release为3.21.11。

2025-01-12 19:54:26 115

原创 Doris 2.1 Queries Acceleration- High-Concurrency Point Query 学习

Doris 2.1 Queries Acceleration- High-Concurrency Point Query 学习。

2025-01-11 22:28:00 179

原创 Doris 2.1 Queries Acceleration- SQL Cache学习笔记

【代码】Doris 2.1 Queries Acceleration- SQL Cache学习笔记。

2025-01-11 22:04:28 208

原创 Doris 2.1 Queries Acceleration -Materialize View 学习笔记

Doris 2.1 Queries Acceleration -Materialize View 学习笔记。

2025-01-10 22:44:28 225

原创 Doris 学习 Queries Acceleration -Performance Tuning Overview学习笔记

Doris 学习 Queries Acceleration -Performance Tuning Overview学习笔记。

2025-01-10 22:26:46 191

原创 利用apache tika进行文件类型侦测

利用org.apache.tika.Tika最好使用stream模式,如果使用文件模型,默认是通过后缀来侦测的:因此可以通过修改后缀来跳过侦测,而stream更准确。

2025-01-09 08:56:17 692

原创 openresty log记录response

nginx配置示意如下。

2025-01-07 21:52:58 720

原创 doris 2.1 Data Queries Common Table Expression & UDF 学习笔记

doris 2.1 Data Queries Common Table Expression & UDF 学习笔记。

2025-01-06 08:31:27 99

原创 Doris 2.1 -Data Queries Window Function 学习笔记

5.2.1 The LAG() method is used to calculate the value of the current line several lines ahead-函数能够提供对当前行之前给定偏移处的行的访问.5.1.1 LAG 和 LEAD 函数适用于值之间的比较。两个函数无需进行自连接,皆可以同时访问表中的多个行,从而可以提高查询处理的速度。5.3 而 LEAD 函数则提供对当前行之后给定偏移处的行的访问。

2025-01-06 08:26:18 242

原创 doris 2.1 temporay partition 测试及总结

主要的场景就是用于分区替换注意导入和查看都需要加上temporary partition注意只能使用 SHOW TEMPORARY PARTITIONS 查看是否有临时分区,使用partition函数看不到注意replace后临时分区不再存在。

2025-01-05 13:43:08 81

原创 doris 2.1 Data Queries-Multi-Dimensional Analytics 学习

d_date为null,第一位值为1,i_category==null的时候,第二位值值1。3.3.2 用二进制表达的grouping,每个column占一位。

2025-01-05 10:50:52 222

原创 Doris 2.1 -Data Queries-Subquery 学习笔记

【代码】Doris 2.1 -Data Queries-Subquery 学习笔记。

2025-01-05 10:45:17 133

Clojure Handbook (by jamesqiu).pdf

一个clojure hand book

2021-03-08

hadoop 安全设置guide

A practitioner’s guide to securing your Hadoop cluster Presentation.pptx

2021-08-27

Semantic Software design -语义软件设计一书的资源

Semantic Software design -语义软件设计一书的资源,语义软件设计是一种软件架构设计理念,强调concept的设计、传播、实施

2023-11-12

TECHNOLOGY STRATEGY PATTERNS 一书的资源

TECHNOLOGY STRATEGY PATTERNS 一书的相关模板

2023-11-12

starburst.io 关于datamesh的演进稿

starburst.io 关于datamesh的演进稿,非常适宜于了解data mesh 及如何使用data mesh解决大数据问题。 属于架构和方向类材料,非具体技术方案

2023-03-11

keda 安装测试资源包

从green field 安装k8s 1.23 及keda 2.7.1 测试用资源,修正了官方的一些小BUG,具体用法参考: https://radishgz.blog.csdn.net/article/details/125158063

2022-06-07

LINUX tcp 优化资料,

重点包括 1、windows scaling factor 计算 2、mtu 侦测 3、性能参数列表

2022-05-09

cloudera 对kafka 安全、配置、优化和管理的建议 pdf

cloudera 对kafka 安全、配置、优化和管理的建议

2022-03-12

kafka 3.1 broker 属性清单

自己整理的kafka 3.1 broker 属性清单

2022-03-11

dolphinscheduler 1.3.6 编译镜像

dolphinscheduler 1.3.6 编译镜像,用于编译dolphinscheduler

2021-07-28

aws well arhcitecture ml lens

aws well arhcitecture ml lens

2022-02-05

可靠性计算公式大全.doc

可靠性计算公式大全,用于计算系统可用/可靠性

2021-01-11

aws well architect 系列,英文版本

aws well architect 系列,英文版本,包括 analytics-lens.pdf management-and-governance-lens.pdf wellarchitected-financial-services-industry-lens.pdf wellarchitected-framework.pdf wellarchitected-high-performance-computing-lens.pdf wellarchitected-iot-lens-checklist.pdf

2022-01-26

dolphinscheduler parameter and date compute test.json

dolphinscheduler 日期转换及参数测试流程

2021-07-16

PIP-31_ Transactional Streaming.docx

pulsar 消息事务控制设计文档

2021-11-10

localjmx_httpserver-0.11.0-jar-with-dependencies.jar

jmxagent :一个prometheus exporter ,监控node上所有java 进程,0.11 版本jar

2020-05-01

ali CNCF学习笔记.rar

全套CNCF 学习笔记,主要内容来自https://edu.aliyun.com/roadmap/cloudnative?spm=5176.8764728.631162.112.29b420beKg5Yge 及官方文档等

2020-04-03

error boundaries and suspense.rar

react error boundaries and suspense 测试代码,对应blog:https://blog.csdn.net/weixin_40455124/article/details/116222462

2021-04-28

clojure cheatsheet-usletter-color.pdf

clojure 关键字sheet ,用于快速查看clojure语法及内置form、macro等

2021-03-09

example-graphql-tools.rar

基于kickstart 的官方example ,自己测试graphql 的一些功能的代码,测试是具有kickstart spring boot 7.1.0 github代码测试的,单独部署需要修改gradle文件

2020-09-08

[email protected]

cncf 学习yaml,基于https://edu.aliyun.com/roadmap/cloudnative?spm=5176.8764728.631162.112.29b420beKg5Yge

2020-04-05

空空如也

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

TA关注的人

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