【技术实现步骤摘要】
一种基于区块链的模块间调用日志记录方法及系统
本专利技术涉及计算机领域,具体涉及模块间调用日志记录系统的实现方式,具体地说是一种基于区块链的模块间调用日志记录方法及系统。
技术介绍
软件的架构正在逐步趋于模块化,模块化就是将程序划分为多个易于处理的单元,每个模单元是一组方法的集合,通过模块间的互相协作完成整个功能。模块化是复用的基础、是合作的基础、是分层的基础,会使整个程序更加灵活。由于模块间有频繁的调用,调用失败的情况时有发生,而且失败的原因也多种多样,可以分为以下几种:(1)、调用方发送异常:调用指令发送失败;(2)、发送网络异常:调用方指令已发送,但指令丢失;(3)、被调用方接收异常:没接收到指令;(4)、被调用方回传异常:响应信息没有发送成功;(5)、回传网络异常:已回传,但丢失;(6)、调用方接收异常:没有接收到。当模块间调用失败时,一般会通过分析调用日志的方式来定位问题出现的位置。但是基于中心化系统的传统日志存储方案会存在如下问题:①、日志存储在传统 ...
【技术保护点】
1.一种基于区块链的模块间调用日志记录方法,其特征在于,该方法步骤如下:/nS1、部署区块链平台:在服务器上搭建一个去中心化的区块链数据库,复杂软件系统中的每个模块是注册在区块链上的组织,每个模块都可以看成一个用户,用户具有区块链数据库读写权限;/nS2、调用日志写链:模块间发生相互调用时,会将调用日志数据进行写链,从而保证数据的安全性和完整性;/nS3、异常定位:当模块间数据交互出现问题时,通过对比区块链上两个组织的日志数据来迅速定位异常模块;/nS4、日志数据挖掘:通过对日志数据的分析,针对单个模块进行优化,进而提升整个系统的性能。/n
【技术特征摘要】
1.一种基于区块链的模块间调用日志记录方法,其特征在于,该方法步骤如下:
S1、部署区块链平台:在服务器上搭建一个去中心化的区块链数据库,复杂软件系统中的每个模块是注册在区块链上的组织,每个模块都可以看成一个用户,用户具有区块链数据库读写权限;
S2、调用日志写链:模块间发生相互调用时,会将调用日志数据进行写链,从而保证数据的安全性和完整性;
S3、异常定位:当模块间数据交互出现问题时,通过对比区块链上两个组织的日志数据来迅速定位异常模块;
S4、日志数据挖掘:通过对日志数据的分析,针对单个模块进行优化,进而提升整个系统的性能。
2.根据权利要求1所述的基于区块链的模块间调用日志记录方法,其特征在于,所述步骤S1中的部署区块链平台包括编写智能合约,智能合约封装了日志数据写链的操作,只要模块间发生了交互,就满足了智能合约的触发条件,合约就被执行,数据就被写到区块链上。
3.根据权利要求1所述的基于区块链的模块间调用日志记录方法,其特征在于,所述步骤S2中调用日志数据进行写链的前提是软件系统中的各个模块先要创建基于私钥的区块链身份,保障用户隐私和权益。
4.根据权利要求1或3所述的基于区块链的模块间调用日志记录方法,其特征在于,所述步骤S2中的调用日志数据通过日志记录智能合约上传到区块链上,将原始调用日志数据锁在链上,同时能够根据上链时间作为确权依据。
5.根据权利要求4所述的基于区块链的模块间调用日志记录方法,其特征在于,所述步骤S2中调用日志数据包括调用时间、被调用模块名称、被调用方法、被调用模块响应时间及响应数据。
6.根据权利要求1所述的基于区块链的模块间调用日志记录方法,其特征在于,所述步骤S3中异常定位具体是:
模块间调用日志数据被完整的记录在区块链上,当模块间调用失败时,基于调用日志数据的完整性和不可篡...
【专利技术属性】
技术研发人员:马文丽,庞松涛,商广勇,王伟兵,马岩堂,赵树林,姜鑫,陶鑫,
申请(专利权)人:山东爱城市网信息技术有限公司,
类型:发明
国别省市:山东;37
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。