当前位置: 首页 > article >正文

[高性能] - 缓存架构

    对于交易系统来说,低延时是核心业务的基本要求。因此需要对业务进行分级,还需要对数据按质量要求进行分类,主要包含两个维度:重要性,延时要求,数据质量。共包含以下三种场景:

    1. 重要 + 延时性要求高 

实时行情(可容忍部分丢失):

交易链路(不可丢失,做市,自营(手工单),量化(电子单),RFT/RFQ,订单管理):

报价引擎

实时风控

权限

    2. 重要 + 延时性要求低

历史行情(可部分丢失):

参考数据():

交易对手():

事后风控

监控数据

日志

    3. 不重要 + 延时性要求高

    4. 不重要 + 延时性要求低

1. 缓存场景

对于

1.1 权限

因为粒度细导致数据量大,而且容易产生hotKey,由于消息级别的权限设置,导致对延时性要求极高,一般要求在0.5ms以内。

所以会区分有无权限要求的消息。

1.2 市场参考数据

这些数据通常变化的频率比较低,从数秒到数年不等,数据量相对较小,但访问的时候要求延时性也极高,通常是0.5ms。这些数据如:债券估值,债券合约,收益率曲线,利率曲线,交易行情,交易对手方等。

对于交易频繁的产品,会造成hotKey问题,对于交易行情还容易造成bigKey问题。

2. 缓存过期策略

可以指定过期计算的开始时间,或者指定存储对象中的某个字段。


http://www.kler.cn/news/233310.html

相关文章:

  • 《走进科学》灵异事件:Nginx配置改了之后一直报错
  • 使用 WMI 查询安全软件信息
  • C/C++ 关于 SHA256 的使用
  • B站弹幕分析系统
  • Python爬虫实战:抓取猫眼电影排行榜top100#4
  • React18原理: 生命周期中特别注意事项
  • 大数据之Hadoop3简单入门(一)(通俗易懂)
  • 5-4、S加减单片机程序【51单片机+L298N步进电机系列教程】
  • C语言笔试题之两数相加(多次反转链表实现)
  • Git中为常用指令配置别名
  • Go 中如何检查文件是否存在?可能产生竞态条件?
  • re:从0开始的CSS学习之路 4. 长度单位
  • 2月05日,每日信息差
  • SolidWorks学习笔记——入门知识2
  • 用C语言列出Linux或Unix上的网络适配器
  • 【C语言】深入理解指针
  • 从一到无穷大 #23 《流计算系统图解》书评
  • Netty应用(一) 之 NIO概念 基本编程
  • 人工智能|深度学习——基于全局注意力的改进YOLOv7-AC的水下场景目标检测系统
  • C++——位图与布隆过滤器
  • JVM系列——垃圾收集器Parrlel Scavenge、CMS、G1常用参数和使用场景
  • 二维差分---三维差分算法笔记
  • Android:自定义控件
  • Vue 封装的 axios 类的使用(小bug 改进)
  • 5G技术对物联网的影响
  • C# BackgroundWorker的使用
  • 广义表-C语言
  • 面向工业 X.0 的工业网络简述
  • 微软.NET6开发的C#特性——类、结构体和联合体
  • VitePress-12-markdown中使用vue的语法