标签:
RepChain(Reactive Permissioned Chain)是第一款采用响应式编程实现的自主可控的许可链基础组件,面向企业应用,强调交易的实时性和分布式环境下的柔韧性,且易于根据不同应用场景进行模块定制和弹性部署。其合约设计、可视化设计、接口设计对工程实施提供友好支持。RepChain由区块链技术与应用联合实验室、北京连琪科技有限公司和软件所互联网金融技术研究中心共同研发,RepChain1.0已通过“2019可信区块链”功能测试和性能测试,在典型场景获得成功应用,其中“区块链数字不动产证应用”被评选为 “2019可信区块链优秀案例”。
分层架构:
1、数据层:负责数据格式定义,数据结构采用Protocol Buffers定义文件,并以此为基础实现数据的交换、验证、存储、读取及检索
2、网络层:采用JDK内置的TLS实现,支持入网许可验证,在此基础上进行去中心化的gossip组网,网络传播支持P2P和Pub/Sub两种方式
3、共识层:完成区块的输入共识和输出共识。采用兼顾实时性和安全性的CFRD算法,既照顾到交易的实时性要求,又能在一定程度防止节点串通作弊;输入共识对入块的交易顺序达成一致,输出共识对交易顺序执行的结果达成一致
4、合约层:为合约执行提供上下文环境,支持合约的动态部署、运行时加载和编译执行
5、API层:提供外部接口,允许第三方应用以Restful的形式与系统交互,并允许开发者通过Swagger UI进行在线测试。API层提供交易签名提交、区块和交易检索等基本功能
6、监控层:在区块链网络中收集事件/日志,并将其以Protocol Buffers的格式推送至Web端,以H5图形技术进行实时状态的可视化展示和日志回放
安装:
install jdk8+
install Python
install Scala
install SBT
install Scala IDE
install keystore-explorer ——用于生成密钥对的工具,非必须
install protobuf editor——编辑protobuf定义工具,非必须
运行:
git clone https://gitee.com/BTAJL/repchain.git 下载项目到本地
sbt 在项目的根目录下下载项目依赖项,可以配置仓库或者使用阿里镜像
compile 编译成Protocol Buffer Scala类
eclipse 生成eclipse工程文件
打开 Scala IDE, File->Import->Existing Projects,导入项目
右键单击 rep.app.Repchain.scala,Run As->Scala Application(单机组网4个节点)
运行配置VM参数 -Dlogback.configurationFile=conf/logback.xml (使logback配置生效)
查看实时图 http://localhost:8081/web/g1.html
RepChain 更新日志:
v1.1.0_RC
1、支持OpenJDK(使用13)
推荐使用zulu社区版
2、依赖组件升级
3、组网成员在线增加/删除(节点离网入网时,系统能很快更新节点视图,保证出块不受影响)
节点由于网络故障离线,剩余节点出块不受影响,在网络恢复情况下,节点不需经过人工干预重启即可重新加入到网中,节点恢复加入后,可以继续工作。
节点由于崩溃性故障,需要人工干预重启,节点重启恢复加入后,可以继续工作。
4、共识层抽象和更多的共识算法实现
CFRD
PBFT
RAFT
5、数据前向兼容
假设系统更新时,Block数据结构追加了新的字段,新的系统代码处理和Block相关的逻辑时,可根据version来做分别的处理,以保证系统对上一个版本的数据可读可处理。
6、存储层抽象
针对不同的共识协议,进行抽象
加载全部内容
Godot游戏引擎 官方版53.12MB157人下载 Godot是一个全新开发的开源跨平台游戏引擎,其功能集类似知名的跨平台游戏引擎Unity,可用于开发PC、主机、移动和Web游戏。
下载右侧自动生成二维码和返回顶部代码 v1.091 KB117人下载网页自动生成可扫描二维码图,二维码内容为对应网页网址链接 支持所有静态和动态网页页面,生成二维码可用手机软件我查查、魔码、微信等软件利用手机摄像头扫描,即可实现手机
下载jquery v1.12.1 121 KB109人下载jQuery 是一个javascript 库,它有助于简化 javascript 以及 Asynchronous javascript + xml (Ajax) 编程。与类似的 javascript 库不同,jQuery 具有独特的基本原理,可以简洁地表示常见的复杂代码。学习 jQuery 基本原理,探索其
下载Scrapy Web爬虫框架 v1.3.0 1.19 MB109人下载Scrapy 是一套基于基于Twisted的异步处理框架,纯python实现的爬虫框架,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便。
下载Ionicons开源图标集合 正式版1.53MB109人下载 Ionicons是一个完全开源的图标集,其中包含1100多个图标,这些图标是专为Web,iOS,Android和桌面应用程序而设计的。Ionicons是为Ionic Framework构建的,因此图标同时具有Material Design和iOS版本。
下载Vant移动端组件库22.08MB106人下载Vant 是一套轻量、可靠的开源移动端组件库。通过 Vant,可以快速搭建出风格统一的页面,提升开发效率。特性:1、60+ 高质量组件2、95% 单元测试覆盖率3、完善的中英文文档和示例4、支持按需引入5、支持主题定制6、支持国际化7、支持 TS8、支持 SSR建议搭配 webpack,babel 使用 Vant,这样可以使用 webpack 提供的丰富插件和个性化配置。Vant 支持了 babe
下载JPress v0.2 bulid0706 6.13 MB104人下载JPress,一个wordpress的java代替版本,使用JFinal开发。支持类似wordpress的几乎所有功能,比如:模板,插件等。同时在模板上,JPress提出了模板即模型的概念,方便模板制作人灵活制作业务模型,移除了widget等繁杂功能,同时在模板和插件制作上比wordpress
下载obs-studio实时流媒体和屏幕录制软件 最新版20.35 MB104人下载 OBS Studio 是一款用于实时流媒体和屏幕录制的软件,为高效捕获,合成,编码,记录和流传输视频内容而设计,支持所有流媒体平台。
下载CSerialPort跨平台串口类库 最新版4.26MB104人下载 CSerialPort是一个基于C++的轻量级开源跨平台串口类库,可以轻松实现跨平台多操作系统的串口读写。
下载QtScrcpy81.58MB104人下载QtScrcpy可以通过USB(或通过TCP/IP)连接Android设备,并进行显示和控制。不需要root权限。单个应用程序最多支持16个安卓设备同时连接。同时支持GNU/Linux,Windows和MacOS三大主流桌面平台。主要功能:1、实时显示Android设备屏幕2、实时键鼠控制Android设备3、屏幕录制4、截图为png5、无线连接6、最多支持16台设备连接(PC性能允许的情况下可以
下载