布局区块链底层框架,抢占上万亿美金市场

传统软件开发经过多年的技术沉淀,出现了众多成熟的软件框架,仅在JAVAEE领域,被大家熟知的Struts2、Spring、Hibernate、MyBatis等框架就支撑了几乎所有的企业级应用,上万亿美元的市场。在如今的商业应用开发中,软件框架已成为了开发的必备工具,像阿里、腾讯等IT巨头,甚至会不惜花费重金开发属于自己的软件框架。

对处于早期的区块链行业来说,能否早日出现专门支持区块链开发的底层框架,对行业发展有着巨大影响,并且这也是一个巨大的市场。

那软件框架到底是什么,又有着怎样的威力呢?区块链底层框架的巨大市场又有谁正在秘密布局呢?

软件框架及其作用

软件框架是实现了某应用领域通用功能的底层服务,这些服务包括实现该领域所有应用需要的默认行为的类集合,及常用的开发工具。

框架和类库不同,类库主要提供的是具体的开发包,提供特定功能的具体实现,而框架更强调整体设计,通过协调好构件之间的依赖关系、责任分配和流程控制,达到框架可以被不同的应用复用,让开发过程更加简单的目标。

对于软件开发来说,选择框架是架构师技术选型中非常重要的一环,正确的选择框架会带来很多好处:

从开发者的角度来讲,因为框架的代码可以被多次重用,开发会变得更高效,并且构件之间的通信方式,框架已经给出了具体的定义,开发中不用关心很多细节,开发者能更专注于系统业务功能的实现,开发会变得更简单。

从企业的角度来讲,成熟的框架能够有效的提升企业竞争力。因为框架可以极大的降低开发成本,节省开发时间,提高系统的稳定性,改善客户满意度。并且框架能够采用结构化的方式,对某个特定的业务领域进行描述,将这个领域相关的技术以代码、文档、模型等方式固化下来,形成有效的技术沉淀。

软件框架是IT巨头的宠儿

随着传统软件开发技术的发展,在不同的领域,出现了越来越多的软件框架。除了众多开源社区贡献的软件框架之外,国内外众多知名的IT巨头谷歌、阿里、腾讯等,都围绕着自己的生态,耗费的资金,开发了许多自己的软件框架。

Aliware 是阿里巴巴中间件技术品牌,Aliware从2007年开始,到现在,经历了12年的双11大促。双十一成功的背后是庞大的技术体系的支撑,其中就包括软件框架。到目前为止,阿里已经开源了像Jstorm、Dubbo等知名框架,在GitHub和Apache上,都是非常火的项目。

阿里开源框架

腾讯在软件框架中的投入也毫不逊色,仅在腾讯开源的官方网站上,开源框架就有15个。

腾讯开源框架

越来越多的IT巨头意识到,软件框架对于企业的发展至关重要,能够拥有更多成熟的框架,是企业在商业应用中,能否取得胜利的关键,也是企业能否长久发展的基石。

NULS布局区块链底层框架

区块链行业仍处于发展早期,又由于区块链中包含了分布式、P2P、密码学等多种技术,相较于传统互联网开发而言,区块链开发的难度和成本会更高,这也加大了区块链技术发展的难度。

NULS核心团队通对区块链技术和行业现状的深入研究,明确了“让区块链更简单”的发展定位,并于2018年7月,成功启动了团队开发的公有链NULS1.0的主网。

NULS是一个面向可定制化服务的区块链基础设施,是一个全球化的开源社区项目。在NULS1.0主网上线之后,NULS核心团队和NULS CCC(NULS核心技术社区)成员又设计了NULS2.0。NULS2.0是基于微服务的全新架构,其架构中的核心部分NULSTAR,更是一个基于微服务的区块链底层框架。

NULSTAR:区块链微服务底层框架

想要实现基于微服务的底层框架,服务发现、服务注册、服务通信是必须要解决的问题。众所周知,SpringCloud是传统软件开发当中,基于微服务架构设计的优秀开源框架,包含了完备的微服务架构解决方案。对比SpringCloud,NULSTAR的设计除了与其有许多相通之处外,又根据区块链特性,做出了自己的创新。

SpringCloud在总体架构中主要包含三个关键角色:

  • Service Provider: 暴露服务的提供方;

  • Service Consumer:调用远程服务的服务消费方;

  • EureKa Server: 服务注册中心和服务发现中心。

SpringCloud总体框架

为了实现服务发现和服务注册,SpringCloud中采用了Eureka。Eureka是Netflix开发的服务发现组件。在Eureka中,包含了三个关键概念:Region、Zone、Eureka。Region和Zone均是AWS的概念,在非AWS环境中,可以简单的将Region理解为Eureka集群,Zone理解为机房,Eureka理解为具体的服务器。

Eureka集群

在NULSTAR中,实现服务发现和服务注册的采用的方式是,独立出一个叫Manager的模块,来专门负责这两项工作。当模块A被部署到服务器,想要对外提供服务时,模块A需要将自己的基本信息注册到Manager中。这样的设计让NULSTAR中的Manager充当了SpringCloud中Eureka的角色。

Module A 在Manager中注册服务

如果模块B需要使用模块A提供的服务,模块B需要先到Manager中获取模块A的信息,然后根据这些信息向部署模块A的服务器发起请求,从而获得服务。

模块B向模块A获取服务

在NULSTAR中,模块间的通信方式和标准的client-server系统不一样,每个微服务既是客户端(SpringCloud中的Service Consumer),又是服务器(SpringCloud中的Service Provider),因此需要全双工通信协议。NULSTAR最后选择了采用Websocket作为通信协议,消息格式采用的是使用最广泛,并易于调试的Json格式。

在NULSTAR中,取消了常见的消息总线设计,每个服务会直接进行点对点的消息传输。之所以这样设计,是因为消息总线相对于模块本身需要大量的资源,如果让消息以一种聪明的方式流动,不仅可以减少资源的消耗,而且速度会更快。

NULSTAR每个模块既是Service Provider,也是Service Consumer

作为一个优秀的区块链微服务底层框架,需要保证足够的可扩展性。为了做到这一点,NULSTAR中还设计了一个特殊的模块Controller,专门处理那些有特殊需求(例如更快的处理速度、更高的安全性等)的服务。

当特殊需求出现的时候,系统需要开发特殊的模块,特殊模块会被部署到独立的服务器中,这个时候Controller就能发挥它的威力了。Controller会和特殊模块一起部署到独立的服务器中,根据预定义的规则启动和停止特殊模块,并且向主服务器发送相关信息。

除了Manager和Controller,NULSTAR的核心模块中还包含一个Storage模块和Connector模块。Storage模块主要实现存储相关的功能,Connector模块相当于一个API网关,是所有外部应用访问NULS系统的唯一入口。

NULSTAR中的每个模块都会包含一个服务基础库(Service Base Lib)。服务基础库中会提供标准的基础功能,允许内部模块和外部应用程序无缝地集成到平台中。在后续的开发中,NULS核心团队和技术社区的成员,还会开发多种语言的基础库,方便不同开发语言的开发者使用NULSTAR开发不同的区块链。


NULSTAR_区块链微服务底层框架

结语

1.软件框架在软件开发中起着至关重要的作用,能够让软件开发变得更高效、更简单,降低了成本,节省了开发时间,并且能够保证系统的安全性、可维护性和可扩展性;

2.优秀的软件框架有利于催生出更多优秀的商业应用,从而推动整个行业的发展。国内外的IT巨头在软件框架上都做了巨大投入,目标是为了提升企业竞争力,开发更多优秀的商业应用,保证企业的长久发展;

3.区块链开发门槛较高,并且仍处于行业发展的早期,如果能够出现优秀的区块链底层框架,将对整个区块链行业的发展有着巨大的推动力,并且底层框架也是一个潜在的巨大市场;

4.NULS团队率先布局区块链微服务底层框架,在区块链底层框架领域占得先机,这不仅是一个具有上万亿美金的巨大潜在市场,对整个行业的发展也是极大的助力。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 198,154评论 5 464
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 83,252评论 2 375
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 145,107评论 0 327
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,985评论 1 268
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 61,905评论 5 359
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 47,256评论 1 275
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,978评论 3 388
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,611评论 0 254
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,891评论 1 293
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,910评论 2 314
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,736评论 1 328
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,516评论 3 316
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,995评论 3 301
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,132评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,447评论 1 255
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,034评论 2 343
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 41,242评论 2 339

推荐阅读更多精彩内容