自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

一條狗的博客

堅持!堅持!堅持!

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

原创 随笔 20250402 分布式 ID 生成器 Snowflake 里面的坑

性能强劲全局唯一不能重复防止恶意用户根据 ID 的规律来获取数据。

2025-04-02 12:57:54 372

原创 随笔 20250402 雪花算法Snowflake

Twitter 用 Scala 编写的高效生成唯一 ID 的算法。

2025-04-02 12:56:23 199

原创 20250319 工作随笔 水晶报表的修改(.rpx)

Label和TextBox:用于静态文本和动态数据。Line和Shape:用于分割和装饰。Picture:用于插入图片。ReportInfo:用于显示页码、总页数和打印时间等报表信息。使用可以灵活定制ReportInfo的显示格式。

2025-03-19 09:25:51 964

原创 20250307隨筆 使用 A5 SQL 打开 .a5er 文件以及生成建表語句

文件后,你可以查询某个表的名称以及生成数据表的 SQL 脚本。你可以用这个 SQL 在数据库中创建相同的表。如果你想获取某张表的。

2025-03-07 14:50:12 586

原创 20250305随笔 HTML2Canvas 详解与使用指南

是一个用于将 HTML 页面或特定 DOM 元素转换为 Canvas 画布的 JavaScript 库。它通过解析 HTML 和 CSS,生成等效的 Canvas 图像,从而实现网页截图功能。

2025-03-05 21:42:02 408

原创 20250226 工作隨筆 C#文件拷貝

並根據不同條件進行校驗與回滾。,並根據不同條件進行校驗與回滾。方面都有了明顯提升 🎯。方面都有了明顯提升 🎯。,表示操作是否成功。,表示操作是否成功。

2025-02-26 16:34:57 980

原创 20250220 隨筆 分布式事务与最终一致性问题

在消息队列系统中,

2025-02-20 10:15:15 441

原创 20250219 隨筆 [特殊字符] 查看短鏈的實現方式與解決方案優化

透過MQ(消息隊列)配合冗餘雙寫策略來解決分庫分表帶來的解析問題,並確保數據在多庫之間的最終一致性。為減少查詢複雜性並提升查詢效率,將數據按照業務角色分為賣家庫與買家庫。買家庫:賣家庫:目的:確保買家庫與賣家庫之間數據同步,支持多角度高效查詢。具體方案:在分庫分表與冗餘雙寫的場景下,分佈式事務是關鍵問題,尤其是確保數據在多庫間的一致性。問題:解決方案: ✅ 使用 MQ 實現最終一致性優勢:在 分庫分表架構 下,WebRelease 搭配 MQ + 冗餘雙寫 的策略,不僅能解決短鏈解析的庫表定位問題,同時通

2025-02-19 14:46:08 500

原创 20250219 隨筆 [特殊字符] 使用 Sharding-JDBC 時未配置分片規則的表如何通過默認數據源定位?

Sharding-JDBC 是一款來自 Apache ShardingSphere 的分布式數據庫中間件,主要用於支持 分庫分表、分布式事務 和 數據庫治理,且對應用層無侵入。在使用 Sharding-JDBC 時,通常需要為需要分庫分表的表進行分片規則(Sharding Rule)配置。但並不是所有表都需要分片,有些表(如參數表、字典表等)本身數據量較小或不適合分片。當 Sharding-JDBC 檢測到某個表在配置中未定義分片規則時,系統會自動將該表映射到配置文件中聲明的默認數據源。💡 解釋:

2025-02-19 14:36:52 673

原创 20250218 隨筆 垂直分库分表(Vertical Sharding) 和 水平分库分表(Horizontal Sharding)

它们在大规模数据库优化、分布式架构设计中至关重要,主要用于。不同的业务数据存储在不同的数据库中,每个数据库只处理自己相关的业务,提高效率。如果你有具体的业务场景,可以告诉我,我可以给你更详细的架构设计建议!:不同业务拆分到不同数据库,查询、写入性能提升。:数据分布在多个数据库或表,查询、写入速度更快。等功能,如果所有数据都存放在一个数据库。各个数据库可以独立扩展,互不影响。避免单表数据过大,提高查询速度。:可以继续增加数据库或表,支持。查询,需要在应用层处理。,适用于大规模系统架构。:需要分布式事务,如。

2025-02-18 14:34:10 838

原创 20250217 隨筆 Hash 取模 vs 普通取模的区别

普通取模运算是最简单的。Hash 取模首先对。

2025-02-17 14:37:23 372

原创 20250217 隨筆 TPS 和 QPS

是两个常用的性能指标。在系统性能测试、压力测试或高并发优化中,如果搜索引擎每秒可以处理。

2025-02-17 13:34:44 406

原创 20250217 随笔 详细解析 preHandle 方法的作用、流程、优化方案

在 Web 应用中,我们需要对用户请求进行身份认证,防止未授权访问。

2025-02-17 12:03:56 588

原创 20250217 随笔 redis非原子性操作简述

可能会导致数据不一致问题,尤其是在。从你提供的文本来看,核心是。并不自动保证多个操作的。

2025-02-17 10:26:59 739

原创 20250214 随笔 Elasticsearch(ES)索引数据 vs. 业务数据库冗余双写

都是常见的数据同步方案。在高并发数据查询场景下,

2025-02-14 13:04:14 1030

原创 20250214 随笔 Nginx 负载均衡在数据库中的应用

如果系统使用多个独立的 MySQL 实例(无主从关系),我们可以让数据库请求均匀分布到不同的数据库上,防止某个实例负载过高。在高并发环境下,数据库的性能往往是系统的瓶颈。为了提高数据库的吞吐能力、优化请求分配、减少单点故障,我们可以使用。,它允许我们将数据库请求分发到多个数据库服务器上,从而提高并发能力,减少某一台数据库的压力。这就是完整的文章内容,现在你可以轻松复制了!在数据库架构设计中,我们可以利用 Nginx 进行。,里面可以包含多台数据库服务器。,以及不同场景下的最佳实践。是主要的数据库实例,而。

2025-02-14 10:44:24 1108

原创 20250214 随笔 线程安全 & 线程不安全

但性能更好,适用于。

2025-02-14 08:44:38 916

原创 20250213 隨筆 自增id與業務id

中,通常会在业务表(Business Table)中。,由于它们是随机生成的,会导致索引分裂,影响性能。中,自增 ID 可能会带来。,这样做的目的是为了兼顾。

2025-02-13 16:04:05 645

原创 20250213 随笔 PV(Page View) 和 UV(Unique Visitor)

是两个常见的访问统计指标,它们用于衡量短链的流量情况。在短链(短网址)系统中,

2025-02-13 14:03:02 255

原创 20250213 隨筆 雪花算法

但使用時需要考慮機器 ID 分配、時鐘同步等問題。如果業務場景對 ID 長度較為敏感,則可以考慮基於雪花算法的變種方案來縮短 ID 位數。在 2010 年開發的一種。如果 64-bit ID。

2025-02-13 12:41:39 897

原创 20250213 隨筆 讀寫分離(Read-Write Splitting)

讀寫分離 是一種 資料庫架構優化方案,它的核心思想是 將「寫操作」和「讀操作」分離,分別交給不同的資料庫伺服器處理,以提高性能、擴展性和並發能力。在傳統的單一資料庫架構中,所有的 增、刪、改、查(CRUD)操作都發生在同一個資料庫上,這樣會導致:為了解決這些問題,我們使用「讀寫分離」架構,讓:通常,讀寫分離使用 主從(Master-Slave)架構 來實現,典型架構如下: Master 負責寫入:所有的寫操作(INSERT/UPDATE/DELETE)都發送到 主庫,並同步到從庫。 Slave 負

2025-02-13 09:34:31 756

原创 20250212 ThreadLocal

以下是一篇介紹的文章,包含了從「HTTP 請求與執行緒」的背景,到的用途、原理和使用注意事項的完整說明。

2025-02-12 14:25:43 929

原创 20250124 Flink中 窗口开始时间和結束時間

标记了数据所属时间段的起点(如“8:00档”)。在 Flink 中,通过。

2025-01-24 15:29:40 1422

原创 20250124 Flink 增量聚合 vs 全量聚合

以下通过对比 **增量聚合** 和 **全量聚合(ProcessWindowFunction)** 的工作机制,结合具体示例解释其原理和优势。| **场景** | **增量聚合** | **全量聚合** |Long sum = iterable.iterator().next();- **增量聚合**:仅保存聚合中间结果(如 `sum=100`, `max=50`)。

2025-01-24 14:36:33 1462

原创 20250120 Flink 中的 Rescaling 算子

可以把 Flink 的 Rescaling 想象成一家工厂的生产线。如果工厂原本有 5 条生产线,但由于订单增加,需要增加到 10 条生产线,那么工厂就会对生产资源进行重新分配。类似地,Flink 的 Rescaling 就是调整流处理任务中“工人”的数量。就是 Flink 中对任务的并行度(Parallelism)进行调整的过程。简单来说,就是在任务运行时或重新部署时,改变 Flink 应用中算子的工作线程数量,使其能够更好地适应数据量的变化或资源的可用性。

2025-01-20 16:53:21 681

原创 20250120 Flink 的 缓冲区超时(Buffer Timeout)

机制确实类似于一辆车等待乘客的过程,如果车每次只载一个乘客就发车,会导致效率低下,资源浪费。同样,在Flink的数据流处理中,缓冲区超时的设置对吞吐量和延迟的权衡至关重要。通过合理配置缓冲区超时,可以在Flink中实现吞吐量和延迟之间的最佳平衡。选择缓冲区超时值时,需要根据应用的。

2025-01-20 13:15:34 996

原创 20250120 深入了解 Apache Flink 的 Checkpointing

当任务因故障而中断时,Flink可以从最近一次成功的Checkpoint恢复,继续任务执行,而无需重新处理已经完成的数据。当任务重启时,Flink会从最近的偏移量开始重新消费数据,确保数据不会丢失或重复处理。在实时流处理任务中,保证数据的一致性和任务的容错性是至关重要的,而Flink的。如果你正在使用Flink进行实时流处理任务,Checkpoint是你必须深入了解和掌握的关键机制!通过合理配置Checkpoint,可以确保Flink作业在高负载和分布式环境下的可靠运行。

2025-01-20 13:07:19 1279

原创 20250118 Flink中的延迟执行机制和数据处理的逻辑拓扑结构(向圖)

【代码】20250118 Flink中的延迟执行机制和数据处理的逻辑拓扑结构(向圖)

2025-01-17 12:45:54 1100

原创 隨筆20241226 ExcdlJs 將數據寫入excel

ExcelJS是一個功能強大的 Node.js 庫,可以用來創建、讀取和修改 Excel 文件。本文將重點介紹如何基於模板生成 Excel 文件,並進行數據填充、圖片插入和頁面設置。

2024-12-26 08:27:36 778

原创 隨筆 20241224 ts寫入excel表

【代码】隨筆 20241224 ts寫入excel表。

2024-12-22 23:21:51 315

原创 Electron小案例

在窗体2渲染进程中通过按钮点击事件更新状态,并将状态传递给主进程。主进程监听窗体2的关闭事件,在关闭窗体2时,将状态传递给窗体1。窗体1渲染进程接收到状态后,根据状态值执行相应的操作。这种方式使得窗体2的关闭操作和状态更新能够实时传递给窗体1,从而实现了你希望的交互功能。在 Electron 中,event是一个事件对象,通常在事件监听函数中作为第一个参数传递给回调函数。它包含有关事件的各种信息,具体内容取决于事件的类型。event对象。

2024-12-09 22:04:27 990

原创 Flink随笔 20241203 Flink重点内容

TaskManager 和 JobManager 的内存和并行度配置通过和来配置 TaskManager 的内存和任务槽数。和配置 JobManager 的内存大小和主机地址。JobManager 的调度策略通过来配置作业失败后的恢复策略(如自动重启)。Checkpoint 配置通过来配置Checkpoint的周期,来指定状态后端。通过对这些配置的合理调整,Flink 可以根据不同的业务需求提供高效、容错、可扩展的流式计算服务。希望这些解析能帮助你更好地理解 Flink 的核心概念。

2024-12-03 08:19:00 918

原创 Flink随笔 20241129 流数据处理:以生产线烤鸡为例理解 Flink

流数据(streaming data)就像是一条永不停歇的生产线,源源不断地向前推进,带来新的数据。而 Apache Flink 就是这条生产线的核心,它负责对数据进行处理、分类、聚合和存储。下面,我们将通过这个类比一步步讲解 Flink 的核心概念,并展示如何在 Flink 中实现这些操作。

2024-11-29 15:30:47 1109

原创 随笔20241126 Kafka 消费者的自动提交与手动提交偏移量详解

Kafka 消费者的偏移量提交是保障数据消费准确性的重要环节。自动提交通过后台定期提交偏移量,简化了开发者的工作,但在一些情况下会导致消息的重复消费。手动提交则为开发者提供了更精确的控制,能够确保数据在被正确处理后才提交偏移量,适用于对一致性要求高的业务场景。根据业务需求,合理选择偏移量提交方式,可以有效提升 Kafka 消费系统的稳定性和数据一致性,从而确保系统在处理大规模数据流时的可靠性。希望本文能帮助你更好地理解 Kafka 消费者的自动和手动提交机制,为你的项目选择合适的方案。

2024-11-26 16:55:09 1069

原创 随笔20241126 ShardingSphere-Proxy 的特性。

数据库代理:ShardingSphere-Proxy 作为代理,负责将应用程序的请求路由到正确的数据库节点上,并处理诸如分片和读写分离等逻辑。协议封装:它支持 MySQL 和 PostgreSQL 的原生协议,使得所有与数据库的交互看起来就像是在和真实的 MySQL 或 PostgreSQL 数据库通信。透明性:对应用程序而言,它完全看不到底层的复杂性,只需要与 ShardingSphere-Proxy 通信,而代理会处理背后的所有分布式架构。客户端兼容性。

2024-11-26 05:03:15 664

原创 随笔20241126 S和Harding JDBC的 结果归并

结果归并是 ShardingJDBC 处理分布式查询的关键环节,它负责将多个分片的数据合并为一个完整的结果,以提供透明的分片管理。通过对查询结果进行排序、去重、分页、聚合等操作,ShardingJDBC 能够确保返回的数据符合用户的查询要求,达到与单体数据库相似的用户体验。ShardingJDBC 使得开发人员能够像操作普通数据库一样操作分布式数据库,并自动完成 SQL 的拆分、执行和结果的归并,大大简化了开发工作,但在实现中需要克服分布式环境中的数据一致性、网络开销和性能瓶颈等挑战。

2024-11-26 04:59:19 773

原创 随笔20241113 数据分组与期次累加计算功能实现

在金融或数据分析系统中,经常需要对一段时间的数据进行分组和聚合,并按照一定的时间规则来进行累加统计。本篇文章将详细介绍如何利用 VB.NET 实现数据分组和期次累加计算。DateTime。

2024-11-13 23:06:38 364

原创 随笔20241112 vb数据校验

【代码】随笔20241112 vb数据校验。

2024-11-12 22:10:24 141

原创 20241108 “postinstall“: “electron-builder install-app-deps“ 導致無法正常下載依賴

在中,

2024-11-08 08:08:13 812

原创 隨筆20241028 ISR 的收缩与扩展及其机制解析

在 Kafka 中,是一组副本,它们与 Leader 保持同步,确保数据一致性。然而,ISR 的大小会因多种因素而变化,包括收缩和扩展。以下是 ISR 收缩与扩展的详细解释及其背后的机制。

2024-10-28 14:45:16 413

空空如也

空空如也

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

TA关注的人

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