=======================场景=======================
10w+用户每天 15 分钟的数据一天 96 点(未来 5 分钟级别就是 288 点),两个系统( A oracle->B mysql 库是隔离的)之间目前使用 HTTP 同步,两侧 DB 的 I/O 时效性能很差。
=======================疑惑=======================
1 、其实内核就是数据同步,或者请问使用什么样的架构设计会好点,但是由于限制问题可能没有办法直接连接两个库,能用的方案就是 grpc 或者消息中间件
2 、数据库针对这种点数据如何设计表结构,目前这表 100 个字段,数据量大了之后很多问题,但是为了统计还是先这样( p1 p2 )用了。
3 、我现在在类生产环境开发了一套 mock 服务提供给系统进行数据采集,用了 caffeine ,一天伊始模拟 10w 用户浮动数据再异步落库上 JVM 里面缓存占用 670MB ,然后接口调用也考虑缓存一致性问题,但是压力来到我们自己的系统了,入库耗时久,有什么优化方案吗?
======================不成熟的想法===================
1 、订阅 binlog 发送 mq 消息,数据一致性要求高的话做对账,还是异步 mq 失败的话也会重试,还有对账兜底
2 、或者直接 A 系统产生文件然后用 http 传递 binlog 、log 这种
3 、有就是 10w 用户不该再去查询返回,直接 A 系统存好 B 要的 10w 的 ID
10w+用户每天 15 分钟的数据一天 96 点(未来 5 分钟级别就是 288 点),两个系统( A oracle->B mysql 库是隔离的)之间目前使用 HTTP 同步,两侧 DB 的 I/O 时效性能很差。
=======================疑惑=======================
1 、其实内核就是数据同步,或者请问使用什么样的架构设计会好点,但是由于限制问题可能没有办法直接连接两个库,能用的方案就是 grpc 或者消息中间件
2 、数据库针对这种点数据如何设计表结构,目前这表 100 个字段,数据量大了之后很多问题,但是为了统计还是先这样( p1 p2 )用了。
3 、我现在在类生产环境开发了一套 mock 服务提供给系统进行数据采集,用了 caffeine ,一天伊始模拟 10w 用户浮动数据再异步落库上 JVM 里面缓存占用 670MB ,然后接口调用也考虑缓存一致性问题,但是压力来到我们自己的系统了,入库耗时久,有什么优化方案吗?
======================不成熟的想法===================
1 、订阅 binlog 发送 mq 消息,数据一致性要求高的话做对账,还是异步 mq 失败的话也会重试,还有对账兜底
2 、或者直接 A 系统产生文件然后用 http 传递 binlog 、log 这种
3 、有就是 10w 用户不该再去查询返回,直接 A 系统存好 B 要的 10w 的 ID