小浣熊下载站:值得大家信赖的下载站!
发布时间:2024-03-16 03:34:05来源:小浣熊下载站作者:
从比特币的探索到自主研发,这一路走来,我见识了众多未曾设想的科技风景,其中最令我自豪且意义非凡的成就便是负责开发了区块链开发框架 chain33,并已在 Github 上开源,戳这里查看:https://github.com/33cn/chain33。各位程序员小伙伴,欢迎前来点star、fork,一起共建共享!
1. 自2013年起涉足比特币研究,随后转战以太坊源码,再到对 tendermint 和 fabric 的深入探究。到了2016年,我们决定另辟蹊径,自研一套区块链系统。原因有二:一是市面上现有的软件在设计时并未充分考虑到深度定制需求,例如想要调整 mempool 排队机制就必须触及内核代码,随着版本升级,合并代码带来的兼容性问题频现;二是我们在区块理解和系统架构上有着独特的见解,拥有自主知识产权至关重要,目前该系统已申请近200项专利。
2. 我们立志打造一个能够进行内核二次开发的区块链系统,而非仅仅作为Dapp开发平台。实践证明,开发这样一套系统远比想象中复杂,它不仅需要构建严谨的世界观和洞察事物本质的能力,比如如何处理交易间的关联性和合约间的关系。点击此处深入了解区块链世界观案例——“交易组”。
**第一阶段**
初期团队仅有5人,为确保项目能快速落地,我们先设定实现一个基础公链系统的目标,暂不考虑复用性和二次开发,追求功能快速实现。历时三个月完成了初步开发,然而测试阶段同样耗时三个月,bug丛生,尤其P2P模块难以测试。庆幸的是,我们正确地选择了基于消息传递的架构设计,各个模块通过消息队列通信,有效解耦并利于分布式部署和性能优化。不过,由于急于求成,在软件质量把控上稍显不足,导致后期调试时间较长,bug不易及时发现。
**第二阶段**
随着市场行情向好和资金充裕,团队扩展至约50人,分布于杭州、上海、南京三地,皆是资深后端开发者。这个阶段,我们进行了devops改造,采用 gitlab + jira + jenkins 的工具链提升管理效率。同时将系统模块化,并划分出公链及联盟链两个开发小组。此阶段的重大突破在于实现了“交易组”和“平行链”的概念。主链简化通用数据存证,用户通过自定义平行链处理具体业务逻辑,如此一来,主链可轻易实现分片,平行链则便于管理和升级。
**第三阶段**
尽管开发模式未变,但我们意识到关键在于架构层面保证每个开发者能独立工作,尽量减少相互干扰。协作虽不可避免会降低效率,但可通过架构设计使其影响最小化。得益于一体化设计的第一阶段成果,系统模块已经相对独立,而在这一阶段,我们将其独立性进一步细化,力求满足用户个性化需求,如添加共识模式、签名方式或mempool排队模式等,这些都能遵循开闭原则,通过插件化形式轻松实现,无需改动核心代码。如下图所示:
内核精简小巧,几乎每个组件都支持插件化替换。我们还提供了一些便捷工具帮助大家快速开发插件,更棒的是,用户可以像分享URL一样分享自己开发的插件,从而避免重复造轮子。随着更多开发者在 chain33 内核基础上开发出新功能,chain33 将愈发强大,有望让更多人放弃自行开发区块链系统的念头。
当前我们已开源大部分插件,访问地址:https://github.com/33cn/plugin,以下是主要插件列表:
值得一提的是,我们为了公平公正地运行博彩类游戏,还在共识级别引入了随机数生成的概念,这是当前许多区块链系统无法企及的。最近EOS遭受的攻击恰恰暴露了这一点,即共识节点可能随意操控随机数。
无论你是否具备区块链开发经验,均可加入我们的开源社区,这里有经验丰富的大咖为你答疑解惑,一起在 chain33 的世界里乘风破浪! TRADE币
下一篇:返回列表
翻转
休闲益智
怪兽power
动作格斗
冠军来了
休闲益智
荧的惩罚游戏
角色扮演
挖掘机逆袭记
休闲益智
沙丘
休闲益智
披萨塔正式版
休闲益智
方程式赛车手
休闲益智
米加世界迷你小镇
模拟经营