阿里、滴滴钟爱的微服务为何能与区块链完美融合?

官方新闻NULS中文社区2019-01-10 18:27:16  阅读 -评论 0

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

近几年微服务架构技术的成熟,让我们看到了,包括阿里、滴滴、唯品会等越来越多知名企业开始使用微服务对自身的系统进行重构。甚至在2017年开始大火的区块链行业中,也有区块链项目开始使用微服务架构。

为何这些知名企业都开始抛弃单体架构,转而使用微服务?大火的区块链又为何能和微服务结合在一起呢?

什么是单体架构

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

从Web应用的早期开始,单体架构就是软件系统架构中最主流的架构,那什么是单体架构呢?

举个例子,假设你要开发一个电子商务系统,其中包含了订单、客户、商品等不同功能的模块。开发完成之后,你将所有的程序统一打包,然后部署到一个服务器中,用户访问系统的所有功能,都是依靠这一个服务器来提供。

像这样,所有功能都部署在同一个服务器中的系统,采用的架构就是单体架构。

单体架构的缺陷

维护过拥有单体架构的大型软件系统的人一定有过这样的体会:当你需要为系统新增一个业务功能时,你需要从代码库中下载所有模块的代码,在IDE中进行部署,然后才能进行开发和测试;本来在某个已有的模块中,已经完成了你需要的部分编码,但是你却无法直接调用,只能拷贝一份同样的代码,然后进行修改,实现新增的业务功能。

这些都是单体架构中模块耦合度高、代码复用性差、可扩展性低的表现。在小型软件系统中,因为业务不会过于复杂,在平衡开发成本之后,通常也可以采用单体架构。

但在大型软件系统中,维护和迭代是持久性的,如何保障开发完成之后,更好的对系统进行维护是必须要重点考虑的,而微服务正是一种能够有效节省维护成本的架构设计。

微服务架构及其特性

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

微服务是一种架构风格。它将一个复杂的大型软件系统,根据业务的不同,拆分成不同的模块,每个模块可以被独立部署,并对外提供服务。

如果你开发过微服务架构的系统,你会发现,业务驱动,是微服务架构的一个典型特征。

在上世纪80年代初,RPC(远程过程调用)技术出现之后,开发者开始应用RPC来构建大型系统,在这个过程中,开发者发现不是所有技术上能够拆分的功能,都应该被拆分。由此得出的结论是:根据业务拆分功能更加合理。这一经验最终进化成为微服务架构中的设计原则之一:业务驱动。

微服务架构的另一个特征是模块化服务。这是什么意思呢?

采用微服务架构开发的系统,每一个独立的业务单元被划分为一个单独的模块,而每一个模块可以被独立的部署在服务器中,提供相应的业务服务。最终所有模块提供的服务组合在一起,就可以形成一套完整的业务流程,成为一个系统。

业务驱动和模块化很好的解决了单体架构系统中存在的问题。模块之间相互独立,通过接口完成模块间的通信,有效降低了代码的耦合度。在开发新增的业务功能时,你只需要从代码库中下载你需要的模块,并不需要下载所有的代码,开发和测试将会更加简单,并且新功能不会对原有的系统产生任何影响,系统的可扩展性得到了有效地提升。

NULS区块链与微服务的完美融合

不仅阿里和滴滴等传统互联网知名企业喜欢微服务架构,从2017年开始大火的区块链行业,也有项目率先使用微服务架构做出了创新。

在2018年7月正式完成主网上线,获得比特大陆战略投资的NULS公有链项目,在1.0的设计中就采用了模块化的思想,想要实现一个可定制的区块链基础设施。

但是NULS1.0的设计并没有做到完美的地步,依然有许多需要优化的地方,其中就包括如下三个主要问题:

测试和部署仍然必须应用于整个项目;

用户界面仍然是代码库不可分割的一部分;

只有一种开发语言可以用来增强系统并进行修改。

为了解决这些问题,进一步优化NULS的整体设计,NULS核心团队和社区成员共同设计了基于微服务的NULS2.0全新架构。

NULS模块仓库,你的区块链乐高

在使用微服务架构对NULS进行优化之后,NULS将利用微服务模块化的特性,构建一个模块仓库,里面将包含搭建区块链所需要的所有基础模块。

模块仓库的成功构建,让企业或机构定制自己想要的区块链,变成了像是一个搭乐高的过程。例如,一家金融机构,想要用NULS模块仓库搭建一个满足自己业务的区块链系统,这时候可以直接从模块仓库中挑选账户、交易、区块等基础模块进行使用,然后再根据自己的业务需求开发相应的业务模块即可。

之所以说,这像是一个搭乐高的过程,还有一个原因是一个已经开发完成的模块,可以被独立的部署,并对外提供服务,这样每个模块就可以被多个区块链重复使用。这就像你搭乐高,一个模块不仅可以用来搭火车,还可以用来搭汽车。这样模块的复用性就提高了,灵活性也提高了。

完善的开发库,让开发区块链更简单

使用微服务的系统,解决好模块间通信的问题是必须要考虑的,NULS在这一点上也提供了自己的解决方案。

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

模块间通信是每个模块都必须要处理的任务,为了方便开发,避免重复性的工作,每个基础模块中都会添加一个服务基础库。这样基础模块就可以方便的继承所描述的通用方法,不需要重新编写相应的代码。

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

为了进一步的减少开发者的工作量,方便外部程序与平台的无缝连接,NULS2.0的架构中,还设计了适应各种终端的基础应用程序库。这些库是一些代码,提供了关于如何管理网络资源的复杂细节,即设计消息,协议处理等,这样的话开发人员就只需要关注他们的应用程序想要解决的问题,而不用关心如何将其集成到平台中。随着时间的推移,这些库可以移植到多种开发语言中,从而吸引更多的外部开发人员加入到项目中。

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

NULS是一个面向可定制化服务的区块链基础设施,是全球性区块链开源社区项目,完整的NULS2.0的微服务架构主要分为三层:

第一层:微服务基础架构层;

第二层:区块链基础服务层;

第三层:DAPP应用层。

这个设计跳出了常见的区块链思维局限,从更高的维度对NULS进行了重构。NULS核心团队决定在这个架构基础上来进行NULS2.0的重构。这样的设计让NULS将不仅仅是区块链底层基础设施,还是与区块链系统无缝结合的分布式系统基础架构,它将成为一个不同系统间可以进行无缝通信的平台,这将使围绕NULS构建的企业能够更快地蓬勃发展,同时大大降低开发成本。

未来,当NULS真正成为一个强大灵活的平台之后,那番景象一定不可想象!

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

NULS目前上线的交易平台

币安Binance:https://www.binance.com/

OKEx:https://www.okex.com/

火币:https://www.hbg.com

火币韩国:https://www.huobi.co.kr

Bit-Z:https://bit-z.com/

炒客网CHAOEX:https://www.chaoex.com/

KuCoin:https://www.kucoin.com/

Wazirx:https://wazirx.com/

QBTC:https://www.qbtc.com/

币和:https://www.bibr.com/

KTRADE:https://www.ktrade.io/

Indacoin:https://indacoin.com/

7EBIT:https://www.7ebit.com/

Coinspot:https://www.coinspot.com.au/

Ucoin:https://www.ucoin.pw/

BLOEX:https://www.bloex.com/

Coin918:http://www.coin918.cc/

BBAEX:https://www.bbaex.com/

Etherflyer:https://etherflyer.com/

DragonEx:https://dragonex.im

IDAX:https://www.idax.mn/#/

CEO:https://ceo.bi

TOKOK:https://www.tokok.com/

趣币:https://www.qubi.com/

INEX影力所:https://www.inex.exchange

SimpleSwap:https://simpleswap.io

了解NULS

项目网站:https://nuls.io/

微博:https://weibo.com/nulsio

Twitter:https://twitter.com/nulsservice

Medium:https://medium.com/@nuls

Telegram:https://t.me/Nulsio

Facebook:https://www.facebook.com/nulscommunity/

Github:https://github.com/nuls-io/nuls

Reddit:https://www.reddit.com/r/nulsservice/

Steemit.com:https://steemit.com/@nuls

Gitter:https://gitter.im/nuls_io

Slack:https://nuls.slack.com

阿里、滴滴钟爱的微服务为何能与区块链完美融合?阿里、滴滴钟爱的微服务为何能与区块链完美融合?

NULS中文社区 公众号

长按二维码 识别关注

阿里、滴滴钟爱的微服务为何能与区块链完美融合?

NULS,让信任更简单!

因为认同,所以分享

感谢每一位社区成员,一起转发朋友圈吧

声明:链世界登载此文仅出于分享区块链知识,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不构成投资建议。投资者据此操作,风险自担。此文如侵犯到您的合法权益,请联系我们kefu@lianshijie.com

参与讨论 (0 人参与讨论)

相关推荐

共识的价值与风险

我们认为这是成立的,即共识的成本决定了区块链的价值,这种成本按照当前的BTC模型来讲,就是算力。

百度超级链推动区块链首次写入防伪溯源国家标准

此次颁布的防伪溯源标准对区块链在防伪溯源领域的应用做了明确要求,这也是区块链首次进入防伪溯源类的国家标准,推动区块链在防伪领域应用进入新的里程碑。

史上最大 1C0,17 亿美金项目被美 SEC 和法院判处「死刑」,大批项目已被盯上

史上最大 1C0,17 亿美金项目被美 SEC 和法院判处「死刑」,大批项目已被盯上

Telegram 区块链团队随即作出反应,在 27 号请求法院澄清该禁令是否适用于 TON 的非美国投资者,试图寻求迂回的方式上线 TON,但 SEC 则同时要求法院拒绝 Telegram 争取向非美国投资者出售代币的请求。

Shyft Network 计划构建符和 FATF规定的 Polkadot 平行链

律动 BlockBeats 消息,位于巴巴多斯的区块链公司 Shyft Network打算基于 Parity 技术的衬底网络建造一个 Polkadot 平行链。此举是 Shyft 为加密货币监管合规创建通用标准的更大努力的一部分。

史上最大IC0,17亿美金项目被美SEC和法院判处“死刑”,大批项目已被盯上

史上最大IC0,17亿美金项目被美SEC和法院判处“死刑”,大批项目已被盯上

3月25日,针对 Telegram 在2018年通过发行数字货币筹集17亿美元一案,纽约联邦法官发布了一项初步禁令,裁定其发行违反了美国证券法。

Solana与Chainlink集成:High-Speed Price Oracle Data将提供更好的DeFi应用

我们计划让Chainlink成为所有Solana的Dapp的oracle解决方案和标准。Solana将Chainlink oracle与一个无切分、低延迟、高容量的复制状态机连接起来。Solana已宣布推出Solana Accelerator,并鼓励开发人员使用此集成来构建各种类型的去中心化金融产品。

BMJ独创天才模式:“燃烧挖矿”实现最强价值共识

BMJ独创天才模式:“燃烧挖矿”实现最强价值共识

尤为难得的是,BMJ的团队始终不忘初心,深耕技术,砥砺前行,果然在2020年开年就推出了BMJ首创的独家项目“燃烧挖矿机制”。

比特币有什么缺点?

1.交易平台的脆弱性。比特币网络很健壮,但比特币交易平台很脆弱。交易平台通常是一个网站,而网站会遭到黑客攻击,或者遭到主管部门的关闭。2.交易确认时间长。比特币钱包初次安装时,会消耗大量时间下载历史交易数据块。而比特币交易时,为了确认数据准确性,会消耗一些时间,与p2p网络进行交互,得到全网确认后,交易才算完成。3.价格波动极大。由于大量炒家介入,导致比特币兑换现金的价格如过山车一般起伏。使得比

麦妖榜
更新日期 2019-09-03
排名用户贡献值
1牛市来了30910
2BitettFan24187
3等待的宿命23810
4区块大康20369
5六叶树20310
6linjm122719429
7天下无双16192
8lizhen00215280
9让时间淡忘14586
10yelanyi050511349
返回顶部 ↑