System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据存储,尤其是一种基于实时消息的数据二级缓存方法。
技术介绍
1、在一般情况下,新能源场站监控数据通过直接访问数据库来获取,其效率很低,并且对数据库系统要求较高。一但发生当机情况,可能造成系统一段时间内不可用。各服务之间缓存方式不统一,容易造成服务器缓存浪费。
2、数据库效率低主要原因:一是数据存储结构,主要是基于表存储,每张表结构固定,包括字段和数据类型。二是存储方式,主要是通过磁盘存储数据,磁盘的读写速度比内存慢。三是数据库在执行sql语句时,需要进行语法分析和优化等额外操作。
技术实现思路
1、本专利技术要解决的技术问题是:提供一种基于实时消息的数据二级缓存方法,提高数据的可靠性。
2、本专利技术解决上述技术问题所采用的技术方案是:一种基于实时消息的数据二级缓存方法,包括如下步骤:
3、1)可支持数据源的中间工具实时监听数据源的数据文件的变化,获取数据文件,并对获取的数据进行解析;
4、2)将第一步解析后获得的解析数据存储到二级缓存redis模块中,同时将解析数据发送给mq消息服务;定时任务定时全量同步将解析数据存储到二级缓存redis模块;
5、3)消费mq消息,把解析数据存入一级缓存caffeine模块中。
6、优选的,第三步中,在把解析数据存入一级缓存caffeine模块的同时开启本地数据补偿服务。
7、优选的,可支持数据源的中间工具为canal工具,对应的数据源的数据文
8、优选的,可支持数据源的中间工具为flume工具,对应的数据源的数据文件为oracle的datalog数据,实时消息为oracle的datalog数据。
9、优选的,所述实时消息为新能源场站的实时监控数据。
10、优选的,可支持数据源的中间工具以集群方式部署。
11、本专利技术的有益效果是:本专利技术的基于实时消息的数据二级缓存方法提高了数据的可靠性:数据由原来只存储数据库中,变为数据库和缓存同时存储,如果数据库当机,不影响数据正常访问。本专利技术的基于实时消息的数据二级缓存方法提高了数据的一致性、准确性:数据由原来单一数据库存储,变为数据库和缓存同时存储,因此可能会存在数据一致性问题,本方案通过mq消息和定时全量数据同步服务保证数据的一致性。
本文档来自技高网...【技术保护点】
1.一种基于实时消息的数据二级缓存方法,其特征在于:包括如下步骤:
2.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:第三步中,在把解析数据存入一级缓存CAFFEINE模块的同时开启本地数据补偿服务。
3.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:可支持数据源的中间工具为CANAL工具,对应的数据源的数据文件为MYSQL的BINLOG数据,实时消息为MYSQL的BINLOG数据。
4.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:可支持数据源的中间工具为FLUME工具,对应的数据源的数据文件为ORACLE的DATALOG数据,实时消息为ORACLE的DATALOG数据。
5.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:所述实时消息为新能源场站的实时监控数据。
6.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:可支持数据源的中间工具以集群方式部署。
【技术特征摘要】
1.一种基于实时消息的数据二级缓存方法,其特征在于:包括如下步骤:
2.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:第三步中,在把解析数据存入一级缓存caffeine模块的同时开启本地数据补偿服务。
3.根据权利要求1所述的一种基于实时消息的数据二级缓存方法,其特征在于:可支持数据源的中间工具为canal工具,对应的数据源的数据文件为mysql的binlog数据,实时消息为mysql的binlog数据。
【专利技术属性】
技术研发人员:付宇航,陈成杰,周盛龙,徐宇航,翁存兴,
申请(专利权)人:北京华能新锐控制技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。