区块链服务网络 让区块链简单点

区块链服务网络 让区块链简单点(一)
java

来源:假日区块链
node

mp.weixin.qq.com/s/3fOgky5FA…python

mp.weixin.qq.com/s/pOfH_uKph…docker

“ 本月15日,由国家信息中心、中国移动、中国银联共同发起的区块链服务网络(BSN)发布会在北京召开,小编在发布会结束的第一时间,参与了区块链服务网络的内测,这个标题文章分两部分来发主要围绕普通开发人员现阶段如何使用区块链系统及区块链服务网络可以为开发人员带来什么来展开。”
服务器

要解释区块链服务网络是什么,首先仍是要从现阶段若是普通开发人员想要将区块链加入到本身的系统中来,须要作哪些工做?本篇文章主要讲,没有服务网络的时候, 一名普通的开发人员,要将区块链加入到本身的业务中来,若是本身团队没有懂区块链的人员,基本上有如下两种方式来实现,1、若是本身足够有钱,能够找一家区块链技术服务公司,来让他们帮助实现区块链部分的内容,固然,这里的成本确定是不低的。2、借助社区区块链开源系统来实现,这部分须要开发人员投入时间来进行学习使用。这里咱们以联盟链中目前比较成熟的Hyperledger Fabric来讲明一名未接触过区块链的开发人员从开始学习到完成区块链系统的搭建须要经历的事情。微信

01 区块链测试系统的部署网络

区块链服务网络 让区块链简单点


熟悉Github项目熟悉开发文档架构

尝试本身在本地部署一下区块链系统,跑下测试实例,这里才是真正头疼的开始:运维

a. 直接在本地安装的话,是否是把本身的系统弄得很乱?仍是在本身的电脑上搞个虚拟机吧,一通折腾,嗯,虚拟机搞好了。分布式

b. 看安装手册上说要安装下go的开发环境,这里有些网络的问题须要搞一下

c. 系统经过容器来运行,嗯,须要安装Docker,发现,网络问题更加麻烦了,一番折腾,嗯差很少了,不过网上说须要配置下镜像源,要不会很慢,配置下。

d. 终于把前期系统配置的基础问题解决了,接下来终于能够开始尝试安装了,拉下samples代码,下载相关的依赖,docker镜像,固然不熟悉的话,会遇到各类奇葩问题,一切结束以后,激动人心的时刻,当心翼翼的敲下byfn.sh up,紧张的盯着屏幕上一行行闪过的日志,通常状况下,会遇到如下几种坑:镜像版本不对,缺乏某必要工具,缺乏相关依赖。上天保佑一切顺利。终于看到了下面的画面:

区块链服务网络 让区块链简单点


测试系统搭建完毕,此刻感受本身的心里充满了力量:

02 区块链合约开发及SDK的使用

区块链合约开发

测试系统终于搭建完成了,但接下来要作什么,怎么和区块链底层进行交互呢,好像须要编写智能合约啊,等等,合约是个什么东西,须要签字盖章吗?又是一通折腾,终于搞明白了,目前Fabric支持的合约编写语言是go、java、node.js。扫了下官方给出的合约代码,勉强能够写出本身的合约了,调试完毕,部署到区块链上,用命令行的形式,调用了一下,能够了。

SDK的使用

合约是部署完成了,等等,要怎么和咱们的应用系统进行对接呢,官方给出sdk了吗?嗯,官方给了,可是看了一眼调用示例,这。。。也太难使用了吧,为了缩减后续的开发量,是否是要作层封装呢,又是一段折腾,终于,终于跑通了。成了,而后兴奋的找到boss,心里os:

区块链服务网络 让区块链简单点


然而,现实是,区块链在生产环境的部署,和测试环境,还有很大的不一样。

03 区块链生产环境部署

通常企业的生产环境,是连不上外网的,docker要不要搞个离线安装包啊,那些区块链系统镜像要不要打包一下,生产环境,为了保证系统的性能,搞一台机子安装,是否是有点跑不起来啊,要考虑分节点部署的吧,等等,区块链系统的搭建通常是几个企业一块儿来搭的,企业之间还要完成网络的配置,还有,测试环境,能够byfn.sh up一条命令启动,分布式部署的状况下,是否是要为每一个节点准备好启动环境啊。。。。

终于一切准备就绪,再次找到boss,老大,成了,如今须要您这边签字赞成了,老大一看须要申请资源,服务器资源,虚拟机或服务器须要增长的台数,眉头紧锁(通常要部署生产环境的系统,fabric为例的话,2orderer,2peer,kafka集群4台,总体加起来须要8台服务器,就算是使用raft模式的话也至少须要7台)。这还不算要加的代理服务器、证书服务器等。老板说,投入是否是有点大啊,再说,这个项目只是试试水,还不知道深浅呢,要不我们缓缓。。。此时的你:

以上内容,基本就是现阶段若是想要应用区块链系统,使用开源环境的时候,开发人员须要投入的事情,以及整个项目须要增长的硬件资源。从这里可以看到想要把区块链用起来,仍是须要比较复杂的流程,以及比较大的投入的。但有了区块链服务网络以后,上面的问题可以获得很好的解决,在下篇文章中,敬请期待。

文中所使用的图片均来自于互联网,若有侵权,请联系小编,小编会当即删除

区块链服务网络 让区块链简单点(二)

转自假日区块链微信公众号

“在昨天的文章区块链服务网络 让区块链简单点(1)中,已经介绍了没有区块链服务网络的状况下,想要把区块链系统应用到本身的业务系统中来,须要学习的东西,以及须要准备的资源,这篇文章中咱们将重点介绍区块链服务网络可以为咱们开发人员带来的便利,以及小编第一手的内测体验。”

整个区块链服务网络是公共城市节点和排序集群服务组成,每一个城市节点创建一个或多个公共城市节点,全部节点经过互联网链接起来,造成物理城市节点遍及全国的区块链服务网络。排序节点由中国银联提供,全部城市节点共享。这意味着,区块链系统的搭建,由区块链服务网络为你们提供,所以昨天所说的区块链系统的学习和搭建彻底不须要用户来投入额外的成本(只须要用户出资源的使用费用)。服务网络提供了智能网关来方便用户的业务系统和区块链服务网络进行交互,下图比较清晰的展现了区块链服务网络和业务系统进行交互的示意:

区块链服务网络 让区块链简单点


用户只须要专一业务系统的开发,经过和节点网关来和区块链服务网络进行交互,所以开发者能够将区块链部分彻底交由服务网络来完成,这样的话,针对于普通开发者,对于区块链知识的要求基本降到了最低,能够说区块链系统是一个黑箱,开发者只须要会调用相关的接口便可。真正的实现了区块链系统的无感使用。

目前区块链服务网络提供应用服务和应用产品两种发布形式,应用服务是指在区块链网络中部署并运行的区块链应用,应用公开发布以后,会在应用商店中进行展现,使用者能够申请加入应用,应用发布者批准以后,使用者可使用相应的功能;应用产品指的是发布者只将本身的产品在服务网络中展现,并不实际部署到区块链服务网络中,使用者如需使用该产品,能够与产品发布者取得联系,达成协议后,由购买方在区块链服务网络上发布该应用服务。

在区块链服务网络帮助手册中,能够发现目前的网络支持Hyperledger Fabric系统,在发布会上,相关的人员也强调了,将来会支持更多的区块链架构,并且网络将来也会朝着开源的方向来走。具体的内容,你们能够登陆区块链服务网络https://www.bsnbase.com,下载相关资料进行了解。网络目前处于内测阶段,如今能够访问区块链服务网络申请内测名额。下面将实际展现下区块链服务网络内测使用方式。

1. 访问www.bsnbase.com网址,进入到服务网络官网,申请内测,内测阶段支持我的用户和企业用户两种注册方式,按照指引注册完成后,会有后台人员进行审核,审核完毕后,便可登陆区块链服务网络,登陆进来后以下所示:

区块链服务网络 让区块链简单点


进来以后能够先查看下文档资料里面的内容,总体熟悉一下区块链服务网络。

2. 参与服务(参与发布者发布的应用)

如首页中推荐的大象合同,咱们点击进入,按照相关的指引,进行服务使用申请:

区块链服务网络 让区块链简单点


这里须要咱们选择参与服务的角色,也就是每个应用服务发布者对外开放的服务,还有须要接入的城市节点,并申请证书(证书是为了申请好后,与智能网关交互调取区块链的底层服务的),完成后,点击提交申请,后台由服务发布者进行审核。能够看到申请服务须要支付必定的资金的,这里因为是内测阶段,所以不收取费用,这里我尝试了几个服务的申请,用户能够在网页侧边栏我参与的服务-->我参与的,查询本身已经申请和正在申请的服务:

区块链服务网络 让区块链简单点


这里咱们查看已经经过的申请,质量溯源链,以下所示:

区块链服务网络 让区块链简单点


申请经过后,能够看到会给你们下发一个身份证书的压缩文件,以及智能网关的接入地址,经过下发的身份证书及节点网关的地址,能够调用应用服务中对应角色的相关方法,与区块链系统取得交互,此外还有应用服务接入配置参数,给出了能够调用的合约名称及相关方法。经过角色功能权限能够查询到本身所申请的角色可以有哪些权限:

区块链服务网络 让区块链简单点


申请完成以后便可经过编码同智能网关进行交互,调用相关的方法,服务网络给出了链下业务系统经过网关API调用链码的示例源代码,包括go、java、C#和python四种语言的调用示例,帮助开发者快速入门。

3. 应用发布

应用开发者,开发好本身的智能合约,想要对外发布本身的应用服务,能够经过我发布的应用-->我发布的服务-->建立新服务,

区块链服务网络 让区块链简单点


首先填写一下服务的基本信息,以及发布者的基本信息,接着将本身服务对应的智能合约打包,上传:

区块链服务网络 让区块链简单点


接下来定义服务的功能,以及角色,功能权限,方便使用者进行相应角色服务的申请:

区块链服务网络 让区块链简单点


接下来选择服务要部署的节点:划重点(内部测试阶段,每一个用户仅能发布一条应用服务,最多选择三个城市节点部署,所以但愿你们在选择的时候尽可能慎重)

区块链服务网络 让区块链简单点


接下来设置本身服务的接入方式,以及费用明细,这里主要是在正式商用的时候须要为服务支付的费用,内测阶段一概为0元:

区块链服务网络 让区块链简单点


上述内容填写完毕以后,发布应用的请求就会发到后台,进行相应的审核-->测试-->复审-->发布流程,这几个流程由后台帮你完成,等一切流程走完以后,系统会邮件和短信通知你应用发布成功:

区块链服务网络 让区块链简单点


发布成功以后便可邀请他人,参与你所发布的服务了。

再次提醒,内测阶段,一个用户只能发布一条应用服务,选取3个城市节点部署,发布会上相关负责人表示,内测阶段的数据在网络正式上线以后,是不会清除的,如需继续使用,须要发布者提供使用费用,所以,建议你们在发布本身的应用的时候,能够发布本身切实想要使用的。

4. 链下业务系统经过API调用链码示例的测试,因为小编对go、java比较熟悉,所以测试了这两个示例代码,区块链服务网络开放了泉州的节点供你们测试,上面部署的是一个具有基础增删改查功能的预置链码包,如下为你们展现go测试实例的测试结果:

区块链服务网络 让区块链简单点


若是在测试的过程当中出现connection refused的状况,能够查看下是否是网络防火墙的问题,小编在使用公司网络进行测试的时候,就出现了这个问题,后来仍是联系客服,切换到本身的手机热点才解决的。对了这里点赞一下区块链服务网络的技术支持客服,在测试和使用过程当中,用户有任何的疑问,均可以经过网站侧边栏 开发者社区-->技术支持,将您遇到的问题及您的联系方式填写提交,很快就会有相关的客服人员和您打电话进行沟通,帮助您解决问题。java代码的测试这里就不展现了。

以上就是区块链服务网络内测申请、参与服务、发布应用服务、链下业务系统经过API调用链码示例的测试的内容,基本上掌握这些,用户就能够将区块链服务网络使用起来了,其余的内容,麻烦你们本身去申请一个帐号,去体验吧,小编在这里就很少啰嗦了。

经过该开发实例,用户能够很容易的掌握与区块链服务网络上的应用进行交互的方法,能够将开发人员的精力投入到业务逻辑的设计实现中来,大大的缩减了区块链系统的开发运维成本,并且发布会上相关负责人表示,使用城市节点的资源,也会是一个比较便宜的价格。所以对于想要试水区块链的企业或者我的来讲会是一个比较合适的平台。总体来讲的话,区块链服务网络的出现,仍是比较大程度的下降了区块链技术的使用门槛的。

固然目前网络还处于内测阶段,感兴趣的同窗能够去切身的体验下。

文中所使用的图片均来自于互联网,若有侵权,请联系小编,小编会当即删除

相关文章
相关标签/搜索