当前位置: 首页 > article >正文

部署应用链太费心?Tanssi 教你轻松开发部署

在这里插入图片描述

如果你在构建一个跨链的去中心化交易所,需要聚合不同链的数据,或者想打造一个链上实时战略游戏,现有公链由于缺乏可定制性,都无法满足这样的需求,因为难以处理开发这些应用所需的处理量、数据聚合或隐私要求。因此,Appchain(应用链)的概念应运而生。应用链是专门针对应用程序的去中心化的区块链网络,致力于支持特定用例和满足特定需求。

应用链是 Web3 行业的新晋热点话题,而究竟应如何使用轻松、高效的办法部署应用链?Tanssi 提供了一种极具性价比的技术路径答案。

Tanssi 是一个无需许可的应用链基础设施协议,主要目标是使应用链和平行链部署更加快捷、安全、高成本效益和开发者友好。该协议提供一套基建工具和资源,包括区块生产、数据可用性、跨链消息传递和与外部网络的桥接,以及一系列管理工具,如模板、区块浏览器和预言机等。想了解更多有关 Tanssi 的内容,可以在 OneBlock+ 之前的文章中获取更多信息:《对话 Tanssi|容器链如何塑造应用链部署新范式》

在这里插入图片描述
在 2023 年 10 月 21 日 14:00 YouTube 直播间举行的 Substrate Saturday 第 18 期活动,OneBlock 邀请了 Parity 工程师王大锤和 Tanssi 开发者关系贡献者 Alberto Viera,一起探讨如何使用 Tanssi 的 ContainerChains 轻松部署应用链,为大家深度展示了 Tanssi TestNet 及如何部署扩容链。

Substrate Saturday 是由 OneBlock+ 创建的 AMA 直播栏目,专注于技术和深度内容分析,每期将邀请 Polkadot 生态中的项目和工程师讨论与 Substrate 相关的内容。本期 Substrate Saturday 深度解析了 Tanssi 的 ContainerChains 技术,展示了如何轻松地创建以太坊兼容的应用链,并介绍了 Tanssi 在 Polkadot 生态中的重要性。

如果你错过了第 18 期 Substrate Saturday 直播,欢迎阅读 OneBlock+ 为你准备的本期直播回顾,也可以在这里观看回放视频:📺https://www.youtube.com/watch?v=zAz69dYjEyk

应用链开发:优势与难度并存

从比特币到以太坊,区块链技术不断发展,尤其是以太坊上 Layer2 解决方案的涌现诞生了许多新需求,因此竞争资源的问题愈发突出。Alberto Viera 提到,以太坊为应用开发者提供了共享的执行环境,即以太虚拟机(EVM),这也意味着所有应用都在竞争有限的资源。

应用链应运而生,它们是专门为特定用例设计的区块链,具有更高的定制性和成本控制功能,可以提供更好的用户体验。此外,应用链提供了更高的去中心化性和代币实用性,使项目能够更好地控制其自身治理和安全性。

在这里插入图片描述
过去两三年中,对于应用链的需求大幅增长,主要原因是通过应用链开发项目可以实现定制化和成本控制。Alberto Viera 发现,例如在 Polkadot 生态中,每个平行链都可以定制,并且有自己的治理和 Tokenomics,也有自己特定的用例。因此,随着项目使用需求的增长,应用链的需求还将持续增长。

然而,由于应用链的创建过程相当复杂,包括基础设施管理、激励措施、复杂部署和开发较慢等,这些问题对于想要构建应用程序等项目来说是重要的挑战。

实时演示:如何让应用链开发更加简单

Tanssi Network 的目标就是解决这些挑战,使应用链的创建变得更加简单。

Tanssi 协议旨在帮助开发者轻松创建自己的应用链,无需处理复杂的基础设施和网络设置。Tanssi 基于 Polkadot 生态进行核心构建的,这意味着通过 Tanssi 构建的应用链可以访问 Polkadot 具有数十亿美元的抵押的共享安全网络,只需要支付所需的安全性,并能够无缝与 Polkadot 的生态系统实现互操作。同时,Tanssi 还可以通过按需区块空间模型提供了提高资源的利用效率和成本效益。

在这里插入图片描述
Tanssi 通过提供易于部署的应用链模板,简化了创建应用链的过程。开发者可以选择使用 EVM 模板、Substrate 模板或自定义模板,然后根据自己的需求进行配置。Tanssi 还提供了自动化流程,简化了应用链的创建过程,提供了一整套管理工具,帮助开发者更容易地创建和上线应用链。Tanssi 还提供了一些其他功能,如治理、智能合约、区块生产、数据检索和其他基础设施支持等。这意味着通过 Tanssi,应用链的开发者可以专注于编写智能合约和应用逻辑,而不必担心底层基础设施的复杂性。

Alberto Viera 还在测试网 Dancebox 上进行了生动的开发过程演示,展示了如何创建和部署一个智能合约,以及通过 MetaMask 等工具,如何部署到 Tanssi 容器链,并与 Tanssi 的容器链进行互动。创建应用链的步骤包括申请 App Chain ID、生成配置文件、注册 App Chain,这一切都可以在 Tanssi 的界面上完成,无需太多的技术知识。Alberto Viera 强调了创建应用链的简便性,无需成为专业开发人员,任何人都可以创建自己的应用链。这一演示让 Tanssi 协议的实际应用过程更加清晰,对开发者来说是一个绝佳的学习机会。
在这里插入图片描述
Alberto Viera 同时也实时演示了 Tanssi 的容器链如何在测试网络上进行创建和部署。他展示了创建应用链的第一步是将其注册到中继链上。然后还需要在 Tanssi 上注册应用链。这两个步骤是为了确保区块链能够以去中心化的方式生成区块,并获得必要的安全性。这一过程清晰地展示了如何将应用链注册到 Tanssi,以便在实际网络中运行。

他还展示了一个已经在测试网 Dancebox 上运行的容器链,演示了它的功能。这个容器链是一个 Ethereum 兼容的链,可以使用 MetaMask 进行交互。他演示了如何部署智能合约并与该链进行交互,展示了容器链的强大功能。一旦应用链准备就绪,开发者可以使用智能合约开发工具在容器链上部署智能合约。这些合约可以与其他以太坊兼容的工具和钱包进行互操作,从而实现各种功能。

Tanssi 正在经历快速发展的阶段,目前已经推出了测试网,吸引了多个团队在上面部署应用链,并已有 100 多个注册,计划在 2024 年第一季度推出主网。此外,Tanssi 还推出了 Pioneers Program,以帮助加速 Tanssi 在主网上的推出,已经吸引了 40 多个项目的注册。

目前,Tanssi 正通过测试网积累反馈,改进流程,以实现更顺畅的应用链部署,并积极寻求与不同伙伴的合作,以提供更多功能,如预言机服务等,从而进一步增强其生态系统。

总体而言,Tanssi 通过简化应用链的创建和部署过程,使开发者能够更容易地创造自己的应用链,为更多项目提供了机会,推动应用链和生态的发展。

Tanssi 的社区问答:深入了解应用链的安全部署

Tanssi 的快速增长和未来展望表明,应用链在区块链生态系统中将继续发挥重要作用。通过 Tanssi,开发者可以更容易地部署应用链,无需担心复杂的基础设施管理,为项目提供更大的灵活性和更好的用户体验,展示了 Tanssi 的强大潜力和创新性。其快速增长和未来展望表明,应用链将在区块链生态系统中将继续发挥重要作用。
在这里插入图片描述
OneBlock+ 社区成员针对 Tanssi 的开发细节和未来发展提出了各类问题,更加深入探究了 Tanssi 如何确保应用链的安全部署。以下是问答的具体内容:

Q1:Tanssi 如何保障应用链的部署安全?

A:Tanssi 是连接到 Polkadot 中继链的平行链。这种集成不仅赋予 Tanssi 可以共享 Polkadot 安全性的优势,还确保通过 Tanssi 启动的任何应用链都能获得中继链验证者提供的相同安全性。

连接到 Tanssi 后,应用链会转化为容器链(ContainerChain)。这种转化解锁了一系列基础设施服务。在安全性方面,ContainerChain 可以访问区块生成服务。简而言之,这个机制指定了区块生产者(或者在 Polkadot 术语中称为"collators")来维护网络的活跃性,并因此获得奖励。此外,ContainerChain 还可以可以访问数据检索,这是一项从区块链历史中识别和提取特定数据的重要工具。这一功能确保链的无缝运行,每条记录都得到验证。

Q2:Tanssi 的 ContainerChain 是一种类似 PaaS 的服务吗?如果是的话,Tanssi 作为基础设施工具和平行链的目的是什么?它的代币 DANCE 只是为了收费而存在吗?

A:Tanssi 可以被视为一种平台即服务(Platform as a Service,PaaS)。它为开发者提供了部署应用链和访问各种基础设施资源的平台。但真正让 Tanssi 与典型的 PaaS 解决方案不同的是它的无需许可(permissionless)性质。这一特性允许开发者直接访问协议,无需经过中间步骤就能部署他们的应用链。

当一个应用链连接到 Tanssi 时,它转化为 ContainerChain,打开了广泛的基础设施服务,包括区块生成、数据检索、链管理工具、关键集成和跨链功能。为了提升开发者体验,Tanssi 还提供了用于应用链部署的现成模板,包括基于 EVM 的模板。这对于希望轻松融入 Polkadot 和 Substrate 生态的开发者来说尤为重要。

需要强调的是,Tanssi 及其 ContainerChain 的运作方式。它们作为平行链运行,而 Polkadot 中继链作为中央锚点,确保每个 ContainerChain 都有自己的执行空间,不受其他链的干扰。

至于 DANCE 代币,它作为 Tanssi 的 TestNet Dancebox 的实用代币,其主要作用包括激励 collators、覆盖交易费用和其他网络服务。随着启用治理功能,它还将在链上治理机制中发挥作用。在 2024 年初,随着 Tanssi 的 MainNet 推出,将引入一种新的专用代币。

Q3:Tanssi ContainerChain 能否在不编写 Rust 代码的情况下定制各种 Pallet 功能?是否可以基于生态系统中已有的各种 Pallet 进行低代码甚至无代码组合和二次开发?

A:定制的程度取决于需求。如果开发者使用预先编码的 Pallet 并且只需要调整特定参数,可能不需要编码。但对于更深层次的更改,比如改变 Pallet 的功能或其基本逻辑,需要熟练掌握 Rust 和 Substrate。

使用预构建的模板,尤其是那些预先安装了与 Tanssi 协议兼容的关键组件的模板,可以简化开发过程。这些模板不仅提供了更顺畅地融入 Substrate 和 Polkadot 生态系统的过程,还提供了灵活性。开发者可以选择部署这些模板如它们所是,或者对其进行适应,以更好地满足其独特需求。特别是对于熟悉以太坊虚拟机(EVM)的开发者,有与 EVM 兼容的模板可以随时使用。

将其他生态系统的 Pallet 集成到 Tanssi ContainerChain 通常是简单的。但要确保这些 Pallet 不会干扰 Tanssi 的协调。例如,应避免可能破坏区块生成机制的 Pallet。

Q4:为什么 ContainerChain 应该作为 Tanssi 的同级而不是子集运行?

A:Tanssi 的架构确保 ContainerChain 作为平行链运行,并互为同级。借助 Polkadot 中继链作为其基础支持,每个 ContainerChain 都有自己的执行槽,免受其他链的潜在干扰。这个结构赋予 ContainerChain 最佳性能并保持其吞吐量,确保它们以最佳状态运行。

Q5:为什么ContainerChain 选择连接到 Polkadot 的中继链?

A:ContainerChain 之所以选择连接到 Polkadot 的中继链有许多原因。从本质上讲,Substrate 因其无与伦比的构建高效且可定制链的能力,已成为开发者首选的框架。许多平行链自然倾向于 Polkadot 生态系统,渴望充分利用其多重优势:

1)共享安全性:Polkadot 通过分配验证者来验证每个平行链创建的区块,提供强大的安全机制。

2)无分叉升级:在 Polkadot 中,平行链可以使用特定交易类型调整其运营规则,无需进行破坏性的网络分叉。

3)跨链通信:借助 Polkadot 的本地 XCM 语言和 XCMP 传输协议,平行链可以无缝地交换消息和通信。

然而,在 Substrate 框架中开发并不没有挑战。在 Polkadot 的拍卖中获得平行链槽位通常需要大量的财务支持或强大的社区支持。在获得槽位后,任务重心转向招募区块生产者,这对网络生态的活力有更高的要求。此外,尽管 Substrate 无疑非常强大,但其深层的灵活性引入了陡峭的学习曲线。这种复杂性,再加上其广泛的定制潜力,可能会阻碍一些开发者深入 Polkadot 的生态系统。

鉴于这些挑战,Tanssi 致力于指导开发者穿越这些复杂的领域。通过引入 ContainerChain,促进了更顺畅地融入 Polkadot 生态系统,而不会牺牲安全性,同时绕过普遍的障碍和复杂性。

Q6:Tanssi 的 TestNet Dancebox 何时启动?如何参与?

A:Tanssi 的 TestNet - Dancebox 已经启动运行!热衷参与的开发者可以轻松地通过 https://apps.tanssi.network/dancebox 部署自己的应用链。有关详细的技术指南,您可以访问 Tanssi 的文档站点,网址为:https://docs.tanssi.network/builders/deploy-manage/dapp/deploy/。

Tanssi 的主网络计划在明年初推出。想要随时关注 Tanssi 的最新发展和新闻,可以订阅新闻简报,网址为:https://www.tanssi.network/newsletter。


http://www.kler.cn/a/105881.html

相关文章:

  • Docker 基础命令介绍和常见报错解决
  • WebRTC实现双端音视频聊天(Vue3 + SpringBoot)
  • RK3568平台开发系列讲解(platform虚拟总线驱动篇)实验:点亮一个LED
  • 第二十一周学习周报
  • QT仿QQ聊天项目,第三节,实现聊天界面
  • 鸿蒙实现 web 传值
  • 解锁高效检索技能:掌握MySQL索引数据结构的精髓
  • 阿里巴巴:海量请求下的接口并发,都有哪些方案?
  • 重复控制器的性能优化
  • [每周一更]-(第69期):特殊及面试的GIT问题解析
  • 华为云双十一服务器数据中心带宽全动态BGP和静态BGP区别
  • 港联证券:2万元股票一进一出手续费?
  • Uniapp 跳转回上一页面并刷新页面数据
  • jdbc技术实现插入数据,更新和删除操作,查询操作
  • 【计算机视觉】MoCo v3 讲解
  • 基于Java的宠物商店管理系统设计与实现(源码+lw+部署文档+讲解等)
  • 全国客运飞机场数据,2023年的,有shp和xlsx格式
  • jvm摘要
  • php实战案例记录(25)intval函数的用法
  • yum--centos 和apt --ubuntu
  • Java实现连接SQL Server解决方案及代码
  • 【Python机器学习】零基础掌握AdaBoostRegressor集成学习
  • CentOS 7 安装和配置java环境
  • FPGA设计时序约束七、设置时钟不确定约束
  • elasticsearch-7.9.3 单节点启动配置
  • AI口语APP的实现方法