自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 代码随想录+leetcode学习笔记

代码随想录

2025-04-02 09:43:01 455

原创 交易引擎中的设计模式

这些模式共同构建了一个高内聚、低耦合的高频交易引擎架构,兼顾性能与可维护性。:支持多种交易算法的灵活替换。:实时市场数据的分发机制。:策略上下文的动态创建。:批量管理策略生命周期。:确保全局唯一引擎实例。

2025-04-02 09:40:45 400

原创 收集的一些问题?

典型应用场景:例如,订单系统中,当用户下单时,可以将订单信息写入 Redis 队列,后台异步处理订单数据并持久化到 MySQL 中。在高并发短连接场景下(如爬虫、压测),短时间产生大量连接关闭操作,超出端口回收速度(默认 6.5 万端口上限),导致。在实际应用中,Redis 和 MySQL 的结合往往是为了优化性能,尤其是在数据查询速度、读写压力大的情况下。通过用户态和内核态的隔离,操作系统可以限制应用程序的权限,只有内核有最高权限,这样能更好地管理系统资源。例如,在某些高并发场景下,

2025-03-29 13:44:18 774

原创 github使用

表示克隆到当前目录(目录需为空)。若需新创建目录,可省略。

2025-03-28 22:29:16 424

原创 C++细节知识for面试

栈默认为8MB,可修改。为什么是这个大小:​默认限制:​为什么是这个大小:​可以声明为 :C++标准允许构造函数和析构函数声明为 。​隐式 :在类定义内部直接实现的构造函数和析构函数,默认会被编译器视为 ,无需显式声明。显式 :在类外定义时,需显式添加 关键字。在 C++ 中,​函数作用域结束后,变量的析构是由编译器自动插入的代码触发的。 和 的内存对齐规则是完全相同的,唯一的区别在于默认的访问控制权限( 默认 , 默认 )。 用于实现无锁(lock-free)或低竞争(low-contention)的

2025-03-28 22:18:08 2333

原创 Linux常见使用场景

name <模式>-type <类型>

2025-03-28 22:17:11 894

原创 Reactor/Epoll为什么可以高性能?

Reactor/Epoll为什么可以高性能?交易系统中的行情接收模块,常常使用reactor架构

2025-03-25 23:09:22 644

原创 WonderTrader之实时行情处理模块WtHftRtTicker

private:private:WtHftRtTicker涉及两个线程。

2025-03-25 21:52:15 592

原创 C++手撕共享指针、多线程交替、LRU缓存

当等待的条件(通常由传入的 lambda 表达式 predicate 检查)不满足时,线程会一直阻塞。个人理解:所谓mutex(mutual exclusion),本身仅是声明了一个互斥量,此时并不包含锁的意义。提供了更多的灵活性,比如能够延迟锁定、手动解锁或重新锁定,以及支持条件变量等待时的锁管理。方法后,等待线程会被唤醒并重新尝试获取锁,随后检查条件,直到条件满足为止。:当某个线程修改了共享数据并满足了等待线程所期望的条件后,它会调用。时,线程会进入等待状态,同时自动释放传入的。

2025-03-24 20:42:04 429

原创 WonderTrader逻辑之HFT下单逻辑

cHandle。

2025-03-24 19:22:46 398

原创 HftStraBaseCtx交易订单控制模块

这是一个唯一的标识符,用来标识一个特定的交易操作。每当一个订单(如开仓、平仓、锁仓等)被触发时,系统会生成一个新的。这些规则决定了如何进行买入操作(比如是否执行开仓、平仓、锁仓等操作)。最大可平仓数量是剩余数量和可平仓数量中的较小值。普通平仓操作是最常见的平仓方式,它会根据当前的持仓状况来平掉多余的仓位。平昨仓是指平掉昨天的仓位,通常是在隔夜持仓的情况下进行。:如果平仓失败,撤销本地ID,并记录错误日志。如果成功,更新剩余数量。:如果操作失败,撤销本地ID。:如果平仓失败,撤销本地ID。

2025-03-24 19:17:02 700

原创 HTTP 核心知识点整理

强缓存失效 → 发起请求,验证协商缓存 → 返回 304 或新内容。:多次执行结果相同(如 GET、PUT、DELETE)。:不修改资源(如 GET、HEAD)。强缓存生效 → 直接返回本地缓存;

2025-03-24 15:46:48 1835

原创 理解火山模型:数据库查询中的流式处理与索引优化

B+ 树是数据存储结构,火山模型是查询执行框架。火山模型负责查询流程的控制,而 B+ 树作为索引结构提供高效的数据访问。火山模型通过索引扫描算子调用 B+ 树索引,执行精确查找或范围查找。火山模型的 Next() 方法逐步获取数据,而不是一次性读取所有数据,提高了查询效率。B+ 树索引加速了范围查询、点查询、索引连接等操作,减少了数据库的 I/O 开销。可以说,火山模型是查询的“执行者”,B+ 树是查询的“加速器”,两者配合使得数据库查询既灵活又高效!

2025-03-17 06:58:35 836

原创 Leetcode刷题笔记

`vector` | 否 | `std::lower_bound(begin, end, value)` || `set`/`map` | 是 | `container.lower_bound(value)` |在 C++ 中,vector 本身没有 lower_bound 方法,但可以通过标准库的泛型算法 std::lower_bound 来实现同样的功能。

2025-03-16 19:42:47 65

原创 cmu15445 project:4 锁管理器的实现

释放事务在指定表上的表级锁,更新事务状态。释放事务在指定行上的行级锁,更新事务状态。为事务在指定表上申请表级锁(支持。判断当前请求是否与已授予锁兼容。为事务在指定行上申请行级锁(仅。若循环结束仍未返回,默认返回。从事务锁集合中移除该行锁。从事务锁集合中移除该锁。更新事务的表级锁集合。更新事务的行级锁集合。

2025-03-15 01:06:54 947

原创 MySQL可重复读隔离级别解析:MVCC与Next-Key Lock的协作

在并发事务中,​不可重复读​(同一事务内多次读取结果不一致)和幻读​(事务内出现新插入数据)是常见问题。MySQL的REPEATABLE READ隔离级别通过MVCC(多版本并发控制)​和临键锁(Next-Key Lock)​两大机制解决这些问题。

2025-03-13 01:17:09 766

原创 WonderTrader核心模块解析之WtCore:从实时行情处理到策略引擎设计

详解实时行情处理引擎(WtHftRtTicker)​的多线程Tick驱动与分钟闭合逻辑,​策略中枢引擎(WtHftEngine)​的异步事件调度与数据订阅机制,以及策略上下文(ExpHftContext)​与实时运行器(WtRtRunner)​如何协同处理订单、持仓与市场事件,实现毫秒级交易决策与执行。

2025-03-10 21:55:46 891

原创 WonderTrader系统接口层设计:C++与Python的跨语言交互与策略开发

解析C++底层与Python策略层的高效交互设计,通过WtPorter接口层的C风格回调注册、数据注入与跨语言指令传递,打通Python策略与核心引擎的通信链路,并剖析WtRtRunner如何统一管理策略生命周期,实现从行情回放、事件触发到策略信号落地的全链路低延迟闭环

2025-03-10 21:48:26 644

原创 CMU15445 2022 project1: 缓存池(可扩展哈希+LRU-K)

在 C++ 中,定义和声明是两个重要的概念,它们在语法和功能上有所不同。理解它们的区别对于编写模块化代码和处理编译器的错误至关重要。声明(Declaration)声明告诉编译器某个变量、函数或类的存在及其基本信息(如类型、参数等),但不会为它分配内存或提供实现。使编译器了解某些符号(变量、函数、类)的存在,以便在使用它们时不会报错。特点仅提供“接口”信息。不生成代码,只是让编译器知道某个实体的类型或存在。通常出现在头文件或 .h 文件中。定义(Definition)

2025-03-10 21:43:15 793

原创 B+树核心实现与高并发控制深度解析:从数据结构到锁策略的完整设计

本文从源码层面深入剖析B+树的核心实现,涵盖以下核心内容:​数据结构设计:详解B+树类、节点基类、叶子节点与内部节点的内存布局及关键方法(插入、查找、分裂)。​并发控制机制:解读“螃蟹锁策略”与安全点检测技术,分析如何通过事务队列(PageSet)实现锁的顺序释放,避免死锁并提升并发吞吐量。​

2025-02-26 23:26:08 1076

原创 TCP协议面试圣经:三次握手四次挥手全场景拆解

TCP协议速查速记手册,更新中······

2025-02-26 23:11:05 1802

原创 C++ 并发、多线程与锁

现代C++中的并发编程总结,包括进程、线程、锁的基本概念和用法示例。

2024-12-22 02:46:00 867

原创 C++常用语法

对于C++常用语法的系统性学习。不包含C++11及之后的新特性。

2024-12-19 21:16:49 1013

西南交通大学数据库实验课程设计

全部使用sql语句来完成对象角色的创建与授权,对角色授予删除和修改表中数据的权限。并进行了数据库备份与删除的实验,采用了丰富的截图来展示操作步骤以及运行结果。

2023-03-20

空空如也

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

TA关注的人

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