RetrievalMarket小型峰会的目的是聚集多个Retrieval Market解决方案的所有构建者,突出迄今为止取得的进展,并确定多个系统如何结合在一起以提高检索交易的效率、效率和可靠性对于网络用户。 在4月的Retrieval Market Builders Mini-Summit上,Raul Kripalani(libp2p和星际文件系统核心开发者)深入研究了Lotus节点的架构和计划的更改,特别是对Lotus-miner节点的更改,以更好地满足客户的需求和网络参与者。 该演讲旨在强调为Lotus客户确保检索交易高度可靠和可扩展所需的工作——帮助确保星际文件系统检索市场建立在稳健的基础上。 Lotus是星际文件系统网络的一个实现,用Go编写。作为星际文件系统的第一个实现,Lotus旨在为整个网络奠定坚实而有弹性的基础。任何星际文件系统节点的核心功能之一是实现有用数据的存储和检索-从而为星际文件系统网络上强大的检索市场奠定基础。 Lotus节点的演变 星际文件系统生态系统正在快速发展,Lotus等生态系统工具也在不断发展以满足网络的需求并尝试未来的机会。特别是检索市场将为星际文件系统网络引入新功能,包括索引、CDN、公共检索等。 我们发现的问题是,这些新的检索市场能力将依赖于强大的客户基础——如今,Lotus客户倾向于解决他们认为不稳定或无利可图的某些功能。归根结底,这是客户见证的良好行为;它帮助Lotus实现发展以满足他们的需求。当网络参与者开始切除某些功能时,表明软件本身应该为其用户提供更多的灵活性和模块化。 通过这一观察,我们意识到Lotus的单体二进制文件阻碍了Lotus客户的灵活和稳健的操作,并确定了解决问题的机会。 单体二进制 到目前为止,Lotus节点的架构在很大程度上是单体的。Lotus有两个不同的入口点:1)一个完整节点,以及2)一个用户。然而,除此之外,网络参与者几乎没有选择权在存储生命周期中承担哪些责任。例如,客户的任务是挖掘、证明存储、交易等。这些是根本不同的职责,但它们通过当前的Lotus-miner架构耦合在一起。 单体架构的问题 从广义上讲,这种整体架构阻止了客户在不同的职责之间有效地分配他们的资源。强制合并责任与客户的核心动机相矛盾,即在最小化运营风险的同时实现利润最大化。具体来说,单体二进制存在许多问题。 脆弱性:当架构内没有隔离时,一个区域的错误可能会泄漏并影响其他关键流程。这使得很难在关键和非关键进程之间进行分割,并使整个实例崩溃。 增加的攻击面:Lotus客户的某些进程需要公开公共端点,这使系统的该部分容易受到攻击。如果架构是单一的,则单个公共端点可能会危及整个系统。 功能膨胀:在星际文件系统的使命中,客户不仅存储和提供原始数据,而且还提供有用的服务,例如索引、发现等。使用新的客户侧功能重载单个进程会导致进一步的担忧和操作风险。 无法扩展:不同的能力需要不同的特性和不同的升级过程。尝试在单一系统中管理这些不同的功能很困难,并且会导致迭代和增长缓慢。 缺乏细粒度控制:由于客户无法主动选择加入或退出功能,他们必须通过拒绝交易、设置高价以劝阻交易,甚至分叉代码库等机制来解决这些问题。 迭代减速:单体架构意味着更难测试和创新,因为没有简单的方法来隔离新组件并选择加入实验功能而不将其引入整个系统。 迈向模块化客户架构 看看Lotus客户在幕后的职责,出现了两个不同的类别挖掘业务和市场。这两个层共享非常不同的服务和SLA。例如,Lotus客户的挖掘作业是其最具经济利润的活动,并且本质上也是私有的。然而,市场运作是完全公开的,并在不同的盈利模式下运作。 使用这种初始分类,迈向解决单体架构缺点的模块化客户架构的第一步出现了:将Lotus客户流程分为1)Lotus市场流程和2)其他Lotus客户流程。 通过分离市场和挖掘,Lotus节点的架构对于客户来说变得更加特定于功能,使他们能够与最适合其能力和网络经济偏好的职责保持一致。 设计原则 在朝着更加模块化的客户架构的这条新道路上前进的同时,Lotus将继续坚持一些设计原则: 避免类似微服务架构的复杂性:明确避免复杂的相互依赖网络,这些网络会迅速转化为意大利面条式架构,并需要专门的工具(如服务网格)来管理和调试。这是向Lotus引入错误的复杂程度。秩序和等级仍然属于,因为这些过程仍然是一个单一的有凝聚力的单元的一部分 简单的中心/辐条架构:Lotus正在向中心辐射架构发展,该架构由主管管理。这些主管知道部署中提供了哪些功能以及哪些节点提供了这些功能。它们还充当聚合的外部API入口点。 在许多方面都值得投资:新的Lotus架构值得投资。除了盈利能力外,其他一些ROI因素包括可靠性、安全性、开发人员敏捷性和稳健性。 强大的分布式流程生命周期监督:模块化架构并不意味着完全孤立的架构。如果出现故障并且意味着其他下游服务将出现故障,那么整个系统必须能够注意到并做出反应。 为了设计这个新的运行时,我们通过Erlang/OTP和面向角色的编程(例如JVM世界中的Akka)等模型来激励自己,并从服务网格和编辑器中借用精选概念和抽象,而实际上并不完全依赖这些框架。 —- 编译者/作者:黑犇科技资讯 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
Lotus升级:可靠性、安全性、敏捷性和稳健性均有改进
2021-06-25 黑犇科技资讯 来源:区块链网络
LOADING...
相关阅读:
- 花旗集团为富裕客户推出加密服务2021-06-25
- NYDIG 和 Q2 合作为 1800 万美国银行客户提供比特币交易2021-06-24
- 客户需求旺盛,VanEck 首席执行官呼吁批准比特币 ETF2021-06-24
- 随着收入和客户群的增长,Revolut 损失增加2021-06-22
- 英国银行 TSB 禁止客户购买加密货币:报告2021-06-21