tron-数据库设计1-接口和内存数据库状态
数据库设计tron的数据库设计是在基于leveldb的基础上抽像自己的相关业务,设计出基于自己的业务数据操作类。有两大块分别是:
内存数据库
持久化数据库
从两个角度进行梳理:
代码设计
业务应用
代码结构
代码结构设计
接口关系、主要功能方面着手了解。
业务使用
generateBlock
pushBlock
pushTransaction
switchFork
一、ITronChainBase 存储操作接口数据库相关的接口比较多,有些关系结构看起来功能相似,反而不容易区分出差异。下面按照功能职责划分。
作用:提供基础数据库基础操作方法。
ITronChainBase: 顶层接口,提供如:put、get、delete等相关操作,包含两个抽象类。
TronStoreWithRevoking: 抽象类,提供构造器中包含初始化方法。各个Store的初始化从这里开始,包含36个Store,如:a. AccountStoreb. BlockStorec. BlockIndexStore
TronDatabase:抽象类,提供的方法大部分为抽像方法,这样的话,实现类可以根据 ...