区块链服务网络的顶层设计与应用实践

news2024/11/17 23:35:38

日前,2023全球数字经济大会专题论坛:Web3.0发展趋势专题论坛暨2023区块链、元宇宙蓝皮书发布会在北京举行。本次论坛上隆重发布了《中国区块链发展报告(2023)》,对我国区块链行业在2022年的发展状况进行了总结梳理,针对区块链行业发展的焦点问题、核心技术以及未来趋势进行了精准解读,为进一步发挥区块链技术在促进我国数字经济发展中的重要作用提供了科学参考。

BSN也参与了此次《中国区块链发展报告(2023)》的部分内容编写,论述了基于以区块链为代表的分布式技术,在构建公共IT系统(多方IT系统),继而推动互联网新公共层的建立,并最终形成下一代分布式可信互联网上的探索与实践。

BSN编写的部分全文如下:

区块链服务网络的顶层设计与应用实践

——可信公共IT基础设施建设的探索与实践

单志广、谭敏、何亦凡、马晓军、刘国栋

国家信息中心、中国移动通信集团设计院有限公司、北京红枣科技有限公司

摘要:区块链技术的崛起,是新一轮数字经济变革的关键。只有理解技术的本质才能更好的满足真实的业务需求,实现新型技术对数字经济的赋能。本文从技术演进的角度深入探讨了区块链作为一种广播式传输技术的本质,并提出构建基于区块链的公共信息化系统的必要性。在此基础上结合区块链服务网络(Blockchain-based service network,BSN)在实践中的设计理念以及技术体系,阐述了构建可信公共信息化系统中涉及的关键技术架构、必要特性和相关应用探索与实践。

关键词:区块链服务网络(Blockchain-based Service Network, BSN)、广播式传输协议、公共信息化系统

一、引言

(一)区块链技术的本质

区块链是新一轮数字经济变革中关键技术之一。然而,目前对于区块链的概念定义还存在多种不同的观点。是一个共享账本、一套多重技术的组合?或者是一种数据不可篡改、可追溯的技术?抑或是代表了某种数字货币?笔者看来,这些定义都只是区块链技术概念的外延,仅体现了其技术特性和部分应用场景。那么区块链技术的本质是什么?让我们先跳出概念定义本身,快速回顾一下信息化技术发展的过程。

人类历史上,每次信息化革命均是通过改变信息的传输方式提升了通信效率,从而提高了生产力,推动社会进步。1876年电话的发明,使得人类的信息交流发生了质的飞跃,让人们之间的交流突破了空间和时间的限制。然而早期的电话只能实现两两通话,无法满足需要多人决策的场景需求,而且这种线性的信息传输方式在传递过程中的低效和容易出错的问题也凸显出来。随着技术的发展和演进,出现了支持多人通话的电话会议系统。站在信息传播的角度来看,电话会议将原来信息的线性传输变为广播式传输,信息的交换和传递方式发生了根本性的改变。

1946年出现了第一台真正意义上的计算机,随后在1970年代Internet诞生,也就是我们今天的互联网,随之掀起了一场科技与信息革命,开创了人类文明的全新时代。然而互联网是由一个个计算机相连接组成的网络,其信息的传输方式本质上还是两两传输的线性方式。

我们不妨用电话及电话会议来类比互联网和区块链技术。区块链技术的伟大之处,在于其基于互联网现有的硬件模拟出一种广播式传输方式,让多个IT系统之间可以进行“电话会议”,形成信息可全方位传递、交换的网络。相较于区块链对于传播方式的改变,人们常说的区块链共识只是基于广播式通讯上的一种应用。换句话说,之所以可以达成共识是因为有一个更高效的广播式传输技术作为基础,而这种广播式传输实际上是对互联网的升级以及信息传播方式的变革,将带来产业结构和经济结构的变化。

这种广播式通讯须同时满足三个原则:一是数据以广播式方式向其他人传输;二是任何数据接受者的反馈都将广播给网络内的所有人;三是网络内的所有人同时知道其他人接收到相同的数据。不难看出,广播式通讯方式具有信息传输效率更高、更透明、更加去中心化、更加安全可信的优势。

综上所述,区块链技术的本质是利用广播式传输方式,在达成共识的基础上,对数据从结构、追溯、权限和验证上进行共治的去中心化、分布式,并且公开透明的信息化系统。

(二)未来的公共信息化系统

互联网是建立在点对点传输的基础之上的,这导致目前的互联网技术体系只能有效地服务于中心化应用,或者称为被一家主体控制的私有信息化系统。随着互联网上的商业逻辑和数据交互的日趋复杂化,以及发展数字经济的需要,不同的业务场景和数据处理要求对于分布式技术和应用的需求越来越明确。

基于区块链和分布式技术,未来可以在公共环境中构建公共信息化系统,由权利对等的多方共有、共享、共治。公共信息化系统中的所有数据、运算都对所有方透明,并且可以让终端用户通过私钥管理自己的数据,真正掌握自身数据的控制权和所有权。未来所有的信息化系统都会由私有信息化系统和公共信息化系统共同组成,来服务不同的业务场景和数据处理需求。

随着分布式技术应用的推广普及以及公共信息化系统的出现和快速发展,未来将会出现无数开放、透明的分布式网络环境,而分布式身份与认证、全网分布式域名、链环境互认等分布式技术能力,以及未来还将出现的包括新的分布式云技术、分布式操作系统、分布式数据库和广播式通信协议等在内的新的技术体系,将会把所有这些公共分布式网络环境连接在一起,从而形成物理互联网之上一个新的技术体系层。

在这里插入图片描述

图1 未来互联网结构图

因此未来的互联网也会分为两层,一层就是现在的互联网,也可以称为互联网的私有层,服务于目前在世界上占据主流的、由一个实体或一家公司控制的私有IT系统;第二层就是新的互联网公共层,服务于公共信息化系统,对数据的透明性、互通性、所有权以及永续性等要求较高的应用场景都会向互联网公共层迁移或进化。

这也将改变今后的信息化系统设计逻辑,IT人员在设计应用时可以更加灵活,根据自身的业务需要,考虑哪些数据需要放在私有化系统中进行保存和处理,而对于某些场景,则要将数据放在公共信息化系统中,以便充分利用公共信息化系统在数据所有权、透明性和高效互联互通上的优势。

而BSN的使命及目标,就是推广互联网新公共层的概念,构建公共信息化系统所需的基础分布式云环境,为未来所有基于分布式技术的新型操作系统、通信协议、数据库、开发工具和应用场景的创建建立基础。

(三)公共信息化系统的意义

公共信息化系统代表了一种新的IT系统和应用程序的构建思路,有望在未来发展成为一种主流趋势,为用户带来更加开放、透明、安全和高效的IT系统和应用程序。在公共信息化系统上,用户可以建立个人数据库,使用私钥管理自己的数据,以及决定是否允许其他IT系统访问和调用自己的数据。结合隐私计算等技术,用户可以更好地保护自己的数据隐私和安全,避免数据被单个实体或公司滥用和泄露。公共信息化系统还可以促进用户参与和创新,用户可以自由地参与到信息系统和应用程序的建设和管理中来,也可以根据自己的需求和兴趣定制和开发更加个性化、灵活、高效的应用程序和系统。相较于私有化信息系统,公共信息化系统具有以下几个显著优势:

第一,更加公开透明。由于数据是共享和公开的,并且所有用户都具有同等权利,使得所有用户都可以访问和使用同样的数据,从而提高数据的透明性和可见性,这也有利于公众监督和评估数据的质量和真实性,这也是为什么分布式系统经常被称为可信网络或可信系统。

第二,更高效的信息互通。由于数据是在公共环境中共享和交换的,多个应用程序和系统之间可以更加容易和高效地传输数据,提高了数据的互通性和互操作性,从而使得用户可以更加方便地使用和管理数据。

第三,更明确的数据所有权。在公共信息化系统中,多个用户可以共同管理和控制IT系统和应用程序,不存在单个实体或公司对数据的垄断,保护了用户的数据所有权和使用权。

第四,数据永续存在。在公共信息化系统中可以更加长久地保存数据,因为不会受到单个实体或公司的控制和限制,数据也不会被单个实体或公司的倒闭或解散所影响。

相信随着业务和技术的演进,未来各国都会针对公共信息化系统推动相关立法和监管办法,促进行业的健康有序发展。

二、区块链服务网络的构建机制

(一)概念与特点

区块链服务网络(blockchain-based service network,BSN)是由国家信息中心进行总体规划和顶层设计,并联合中国移动、中国银联、北京红枣科技等单位共同发起建立的全球性区块链公共基础设施。通过提供分布式云基础环境软件,BSN可以帮助传统的云服务商、数据中心、企业打造一个专用的或可供加入的系统级公共分布式信息化网络,使用区块链作为操作系统,管理各类分布式应用、操作系统和云资源。

BSN从设计之初,就是按照分布式云基础设施理念开展的。BSN通过提供分布式云管软件,可以在任何私有云和公有云内建立一个与传统云环境平行的分布式云环境(BSN专网);同时BSN也推出了分布式云服务网络(BSN公网),企业和个人可以搭建自己的算力中心来加入网络,并自由搭建和管理自己的分布式应用。与互联网类似,所有的BSN虚拟数据中心、云环境和算力中心通过通信协议相互连接,形成全球BSN网络。

(二)构建理念

区块链服务网络的顶层设计思想和构建理念可以概括为一个核心、两大方向、六多服务、七大原则。

1.一个核心。

即以服务数字经济、智慧城市、数字政府等数字化发展为核心。充分发挥区块链在促进数据共享、优化业务流程、降低运营成本、提升协同效率、建设可信体系等方面的作用。面向数字经济、智慧城市、数字政府等发展需求,通过提供一站式的区块链运行环境和节点精细化的计算、存储和网络服务,有效降低区块链部署运维成本,通过智能网关和预制链码机制,有效降低区块链应用开发技术门槛,利用区块链技术促进数据、信息、资金、人才、征信等方面更大规模的互联互通,保障生产要素在区域内有序高效流动。

2.两大方向。

坚持共管与共治两个基本方向,BSN并非属于某一个体或某一家公司,而是由服务网络联盟对服务网络进行共同管理及共同治理,从而在最大程度上保证服务网络的健康运营及网络生态的良性构建。

3.六多服务。

即打造“多云服务、多门户、多底层框架、多公网、多地域、多机构”的服务体系。一是多云服务,用户可以自由在任何云服务商的资源上部署应用,甚至可以将一个应用的多个节点部署在不同的云服务商的城市数据中心上。二是多门户,不同的用户可以在不同门户内加入同一个开放联盟链。三是多底层框架,通过制定区块链底层框架适配标准,打通区块链底层技术平台,实现不同框架间跨链数据交换。四是多公网,区块链公用基础设施支持任意用户使用任意公网自由访问。五是多地域,区块链公用基础设施应该是一个全球性部署的网络设施,一个区块链应用可根据需要选择不同地域的节点构成。六是多机构,区块链公用基础设施应支持多机构接入和业务协同。

4.七大原则。

BSN构建遵循“自主性、公用性、扩展性、开源性、多门户、低成本、安全性”的建设原则。一是自主性,BSN由中国自主研发并控制入网权,实现多底层框架的统一纳管适配和实现组件化的跨链技术、分布式存储技术以及集成开发环境,打造功能完备的区块链建链、用链、扩链、跨链、管链一体化生态。二是公用性,要以建设公共基础设施的理念进行研究、设计、建设和运营,而不是一个完全商业化的项目,BSN通过一套区块链环境和协议把数据中心资源连接起来,在加密算法、国密支持、信息安全技术等方面均支持国家标准和行业标准。三是扩展性,允许所有符合安全和配置要求的数据中心和云服务资源依申请加入BSN。四是开源性,遵循区块链开源发展理念,城市数据中心软件必须开源,运行机制对所有人透明。五是多门户,BSN采取多门户策略,避免垄断和排他性,任何加入网络的云服务商均可以自建服务门户,管理自己的开发者和服务产品。六是低成本,构建BSN的最直接目的就是降低区块链应用的开发、部署、运维、互通和监管成本,从而推动区块链技术的普及和发展。七是安全性,BSN的建设严格遵循国家信息安全技术相关标准中规定的3级以上物理及网络安全相关要求,并保证关键节点的冗余部署,保证系统的可用性。

(三)发展目标

BSN定位于分布式技术应用的底层公共基础设施,致力于持续降低分布式技术的应用成本、技术门槛和监管难度。从技术上,当前阶段BSN将区块链作为分布式云环境中的操作系统,并持续推进新型分布式操作系统建设,不断突破技术瓶颈,全面革新分布式技术的认知与应用模式,为分布式技术创新提供底层沃土,以加快推进分布式技术的普及和应用;从应用思路上,BSN致力于加速推动分布式技术的产业融合,使其在促进我国信息化水平提升方面发挥更大的作用,为实体经济的数字化转型和创新发展注入新动能,为中国数字经济发展和社会治理提供强有力的支撑。

从长远来看,随着社会需求的变化及技术的演变传统互联网势必无法完全满足使用的需求,而公共信息化系统的出现将会使分布式技术融入现有的经济体系之中,这也将成为全球各地区探索的方向。因此,BSN的长期目标就是在互联网上推动建立一个新的公共层,为各行各业、各种类型的分布式应用提供服务。

三、区块链服务网络的应用实践

(一)技术架构

BSN的技术架构包括BSN专网和BSN公网两大体系,其中BSN专网即企业级的“BSN分布式云管平台”,支持在各类物理IDC机房、公有云和私有云部署,建立基于区块链的分布式云系统环境。

而BSN公网则包括面向国内市场的“BSN-DDC基础网络”,一个由开放联盟链组成的公共分布式云服务网络,算力中心免费、开源;以及专门面向境外市场的“BSN Spartan Network”,一个由无币公链组成的公共分布式云服务网络,提供免费、开源和匿名的数据中心。

在这里插入图片描述

图2 BSN技术架构

1.BSN专网。

BSN专网即企业级的“BSN分布式云管平台”,分布式云管平台是一套用来管理分布式和区块链系统以及应用的专业云环境管理软件,面向政企和机构客户,在其现有的公有云、私有云或局域网内,部署一套基于BSN技术体系的专有分布式网络环境,与仅支持中心化应用的传统云管环境平行,以多区块链框架作为操作系统,能够跨云资源层、系统层、节点层、应用层和BaaS层进行全方位、自动化的计费、运维和运营管理。

2.BSN公网。

包括面向国内的“BSN-DDC基础网络”,以及专门面向境外的“BSN Spartan网络”。

(1)面向国内的BSN-DDC基础网络

BSN-DDC基础网络是BSN发展联盟与多家区块链技术服务企业共同搭建的公共分布式云服务网络,面向国内市场,集成了多条开放联盟链作为操作系统,用以开发和运行分布式应用,同时也为区块链和NFT等技术在国内的发展应用提供基础设施能力支撑,为其合规发展保驾护航。

(2)面向海外的BSN Spartan网络

BSN Spartan网络是基于BSN技术体系建立的公共分布式云服务网络,面向境外市场,遵循国际技术标准,创新性地使用无币公链作为操作系统。海外企业尤其是传统企业的IT部门可以基于BSN Spartan网络的无币公链技术构建自己的分布式应用。BSN Spartan网络完全开源,并可以匿名使用,以确保数据和隐私的安全性。

(二)技术特性

BSN对于区块链核心的底层技术进行了统一的适配与纳管。通过多底层框架集成适配、异构云资源的编排及调度、同构/异构跨链通信及可拓展的PKI体系等技术,为用户提供庞大的分布式云环境,用以搭建和运行各种各样的分布式应用。

1.多底层框架集成适配。

作为一个基础设施环境,技术的兼容性和多样性是首要考虑的问题。BSN几乎将全球所有主流的区块链底层框架进行了研究,实现了对几十种全球范围内成熟稳定的开源和商用区块链底层框架的适配纳管,并形成了一套区块链底层框架纳管的最佳实践标准。

2.异构云资源的编排及调度。

BSN服务网络不仅能够基于主流的OpenStack和Kubernetes集群技术对区块链运行环境资源实现全生命周期管理,并且实现了基于多种异构云的自动化资源调配、扩容编排、负载优化、监控分析和运行维护的统一管理,意味着BSN可以将市场几乎所有主流云资源统一纳入虚拟环境管理体系,并实现自动化管理和部署。

3.同构/异构跨链通信。

随着区块链技术的广泛应用,不同区块链应用之间数据的共享需求越来越迫切。BSN实现了基于中继链跨链机制的跨链通信枢纽,支持平台内多种同构/异构链的跨链交易管理和交易处理,同时支持与平台外部的链网络进行跨链通信和交易处理;支持统一的链ID、Relayer管理和跨链管理合约的自动化部署和管理,从而满足了跨链通信过程中信息的有效性、安全性和事务性的需求。

4.可拓展的PKI体系。

支持各类国密和国际算法,对平台内管理的各种区块链网络的节点通信认证、交易处理、应用接入提供CA证书颁发、更新、吊销和验证服务。通过国家权威机构颁发的根密钥和跨链技术,实现了各类区块链应用的可信互联互通。

(三)应用成效

BSN受到了业界用户的广泛认可,其技术模式和发展理念被写入包括云南省、海南省、安徽省、福建省、宁夏回族自治区、湖北省、甘肃省、江西省以及湖南省长沙市、福建省南平市、山东省淄博市、山东省青岛市、浙江省杭州市、湖北省武汉市等多个省市的“十四五”规划、“新基建”总体规划等政策实施方案中。基于BSN专网已经面向行业打造了一批标杆项目,并取得了显著的应用效果。目前,海南省、甘肃省、黑龙江省、河北省、广东省、河南省,以及杭州、长沙、珠海、长春、锦州、雄安、宁波共13个省市部署了BSN政务和行业专网,为各省市数字经济发展提供了可靠的区块链公共服务能力。此外,基于BSN技术和设施,我国首个基于自主区块链基础设施建设的“深圳-新加坡跨境贸易区块链专网”正式建成并于2021年9月上线运行。该专网由深圳市政务服务数据管理局、商务局和新加坡IMDA牵头,基于深圳南方电子口岸单一窗口业务,利用BSN技术,构建了深圳和新加坡之间的跨境数据加密、存储、传输、调用和互认的底层基础设施网络,实现了深圳-新加坡两地跨境贸易数据可加密、可管理、可监管、可授权、可定向传输、可追溯的安全流通,有效提升了跨境贸易便利化,该模式未来可以复制到国内其他口岸和其他国与国之间的贸易场景,并实现任意多个数据中心间的灵活应用组网。

BSN-DDC公网目前已经有包括泰安链、中移链、武汉链、文昌链、遵义链、酒泉链、成都链等多个开放联盟链在网络中部署开发使用,为广大企业单位和个人提供了成本极低的区块链基础服务,应用领域覆盖政务民生、司法、税务、文旅、金融、制造、农业、商贸、知识产权等各个领域。自2022年1月25日发布以来,DDC网络上的业务发展迅速。截至目前,已经有超过1500家平台和企业在DDC网络上注册,创建了超过3200万个链账户,生成了接近500万个官方DDC和超过3000万个平台方NFT,整个网络的日交易量稳定保持在100万左右,2022年链上交易总数累计超过1.5亿次,DDC官方网关的请求量超过135亿次。2022年6月29日,BSN-DDC公网迎来里程碑时刻,自正式运行以来,第一次单日生产环境应用的日交易(Transaction)数超过以太坊(Ethereum)。当日BSN-DDC基础网络全天24小时交易数达到了974,517次,而以太坊全天24小时交易数则为938,166次。此外,BSN-DDC基础网络区域算力中心,也先后在全国范围内布设56个区域级算力中心,服务近2000家各类区块链应用平台方企业,终端用户超过3500万,每日活跃区块链业务量更是超100万个,全球领先。

2022年9月,面向国际市场的BSN Spartan网络正式上线,支持传统领域企业能够在不使用虚拟货币的情况下应用区块链技术。BSN支持从国内DDC基础网络向国外Spartan网络的单向跨链。基于BSN的跨链技术,可以推动中国艺术家作品出海。例如,把中国艺术家的作品铸造成NFT,以合规的方式发布到OpenSea上,推广中国艺术和文化。在沙特,全球最大的石油生产企业沙特阿美利用BSN云管平台开展供应链管理,通过将上下游企业、第三方仓储物流企业、银行等供应链数据上链,实现了信息流、资金流、物流的集成,提升了工作效率。在香港,汇丰银行利用BSN建立B2B支付处理网络,解决支付和结算、贸易融资、供应链等领域在使用区块链技术时遭遇的虚拟货币风险、交易数据完整性、透明性等问题,提高了支付过程的效率和安全性。此外,阿联酋、土耳其、巴林等国政府利用BSN推动数字身份认证、医疗信息共享等应用。

BSN不仅以区块链技术为底座赋能中国数字经济的发展,为区块链应用的实践提供借鉴经验与思路,更致力于区块链领域的标准规范制定、技术研究等。在2022年,BSN参与了4次行业关键标准规范的起草与制定,包括《区块链专用服务网络基础设施总体要求》团体标准、《数据安全合规评估方法》团体标准等,并提交了7项技术专利以及18个软件著作权,为区块链技术发展树立标杆,赋能千行百业。

四、总结与展望

BSN将继续保持中立、成本低廉、公开透明、技术多样性、生态多元、安全可信和可监管的立场,吸引更多的技术企业和用户,为现代化数据治理和数据要素“大市场”的建设提供关键的能力载体。

未来,随着新的互联网公共层和信息化系统的发展,将出现类似当前互联网的另一个具有颠覆性的新产业,包括未来分布式的操作系统、数据库和通讯协议等都有巨大的发展空间和机会。通过BSN当前的发展趋势及持续的推动可以预见,未来将形成一个由中国主导关键技术和标准的新的互联网公共层,使中国成为全球信息化革命的发源地。以此希望有更多志同道合的伙伴加入BSN,共同推动中国技术走出去,共同实现人类信息化技术进步的伟大事业。

参考文献

[1] 袁勇等:《区块链技术发展现状与展望》,《自动化学报》2016年第42期。

[2] 区块链服务网络发展联盟:《区块链服务网络基础白皮书》,2020。

[3] 李芳等:《区块链跨链技术进展研究》,《软件学报》2019年第30期。

[4] 区块链服务网络发展联盟:《区块链服务网络(BSN)发展报告(2022年)》,2022。

[5] 单志广等:《区块链服务网络的构建机理与技术实现》,《软件学报》2023年第34期。

-END-

欢迎转发评论。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/788955.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【英飞凌PSoC 6】使用软件和硬件I2C点亮OLED屏,帧率从2FPS提升到51FPS

文章目录 一、准备工作1.1 硬件准备1.2 软件准备1.3 硬件连接 二、原理分析2.1 开发板原理图2.2 芯片数据手册 三、软件I2C驱动OLED3.1 创建RT-Thread项目3.2 添加ssd1306软件包3.3 配置软件I2C和ssd1306软件包3.4 编译和下载程序3.5 运行和测试程序 四、硬件I2C驱动OLED4.1 增…

depcheck检测缺失哪些依赖包

npm install -g depcheck 如果不想全局安装,npm i depcheck后可以在package.json的scripts中输入 "check": "depcheck" 之后使用 npm run check depcheck - npm 超级好用的依赖检查工具depcheck【渡一教育】_哔哩哔哩_bilibili

Cron 选择器

// 定义一个名为 cron 的新组件 Vue.component(cron, {name: cron,props: [data],data() {return {second: {cronEvery: ,incrementStart: 3,incrementIncrement: 5,rangeStart: ,rangeEnd: ,specificSpecific: [],},minute: {cronEvery: ,incrementStart: 3,incrementIncremen…

[Tools: tiny-cuda-nn] Linux安装

official repo: https://github.com/NVlabs/tiny-cuda-nn 该包可以显著提高NeRF训练速度,是Instant-NGP、Threestudio和NeRFstudio等框架中,必须使用的。 1. 命令行安装 最便捷的安装方式,如果安装失败考虑本地编译。 pip install ninja g…

QT第一讲

思维导图 手动实现登录框 要求&#xff1a; 1、登录窗口更改标题、图标 2、设置固定尺寸、并给定一定的透明度 widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget>#include<QWidget> #include<QDebug> //信息调试类&#xff0c;用于打印输出…

谱瑞PS186芯片DP1.4转HDMI2.0主动式4K转换线DSC支持10bit色深HDR

PS186 是 DisplayPort ™ v1.4a 到 HDMI ™ 2.0b 视频接口转换器&#xff0c;非常适合电缆适配器、扩展坞、监视器、电视接收器和其他需要视频协议转换的应用。输入是一个 DP v1.4a 兼容的上行端口&#xff0c;它接受音频和显示数据&#xff0c;输出是一个 HDMI 2.0b 兼容的下行…

【C++】模板(下)

文章目录 一、typename的使用二、非类型模板参数三、模板的特化1.概念2.函数的模板特化3.类的模板特化① 全特化② 偏特化 一、typename的使用 前面我们在使用模板参数的时候可以使用class&#xff0c;也可以使用typename定义模板参数&#xff0c;现在typename有了新的作用 tem…

jQuery 对象转换与选择器

目录 1.js与jQuery对象之间转换 2.jQuery选择器 2.1 基本选择器 2.2层级选择器 2.3 基本过滤选择器 1.js与jQuery对象之间转换 js的DOM对象转换成jQuery对象&#xff0c;语法&#xff1a;$(js的DOM对象) var jsDomEle document.getElementById("myDiv"); //js的…

搭建禅道环境作为练习UI和接口自动化测试对象

搭建禅道环境作为练习UI和接口自动化测试对象 1 目的2 禅道下载3 禅道安装4 禅道运行5 接口查看6 验证接口测试7 验证UI测试 1 目的 做UI和接口自动化练习时&#xff0c;有时候找不到合适的对象&#xff0c;我们可使用禅道来联系&#xff1b;因为禅道有开源版&#xff0c;可以…

three.js-解决外部模型太暗的问题

先看效果 优化前 优化后的效果 在网上找了好久&#xff0c;好多方法都过时了&#xff0c;还有调整自发光都不行&#xff0c;后来又调金属度的&#xff0c;试了下很ok, child.material.metalness 0.58;&#xff0c;完整例子看下边。 解决方案 调整模型的金属度 loader.lo…

git 提示 不能合并

今天A分支合并B分支&#xff0c;提示“不能合并” 最终发现&#xff0c;是另一个分支的版本落后导致&#xff0c;但是git并未提示出来 有遇到这种问题可以先检查下版本

go-zerogo web集成JWT和cobra命令行工具实战

前言 上一篇&#xff1a;从零开始基于go-zero的go web项目实战-01项目初始化 从零开始基于go-zero搭建go web项目实战-02集成JWT和cobra命令行工具 源码仓库地址 源码 https://gitee.com/li_zheng/treasure-box JWT JWT&#xff08;JSON Web Token&#xff09;是一种开放标…

一起学SF框架系列5.8-spring-Beans-注解bean解析4-bean解析

前面三节主要讲了如何加载注解Bean的BeanDefinition&#xff0c;执行环节是在DefaultBeanDefinitionDocumentReader.parseBeanDefinitions中用BeanDefinitionParserDelegate.parseCustomElement(ele)加载的&#xff0c;实际上没对注解真正进行解析。本节主要讲述注解bean如何被…

性能测试过程有哪些?都要做什么

13.1 性能测试过程概述 13.2 性能测试设计 需要关注的问题&#xff1a;事务需求、技术需求、系统要求、团队要求 分析从五个方面分析&#xff1a;需求调研、事务模型、场景模型、数据设计、环境设计 13.2.1 需求调研 ① 测试系统预研&#xff1a;系统相关知识、系统目的、…

MinIO在Linux环境下单机安装部署

1、MinIO是什么&#xff1f; MinIO 是一个基于 Go语言实现的高性能对象存储。它采用AGPL&#xff08;GNU Affero General Public License&#xff09; 开源协议并兼容 S3 协议。 官网地址&#xff1a;https://min.io/ github地址&#xff1a;https://github.com/minio/minio …

C 程序 运算符

文章目录 1、算术运算符2、关系运算符3、逻辑运算符4、位运算符5、赋值运算符6、杂项运算符 ↦ sizeof & 三元7、运算符优先级 1、算术运算符 #include <stdio.h>int main() {int a 21;int b 10;int c ;c a b;printf("Line 1 - c 的值是 %d\n", c );c …

Jenkins从配置到实战(一) - 实现C/C++项目自动化构建

前言 本文章主要介绍了&#xff0c;如何去安装和部署Jenkins&#xff0c;并实现自动拉取项目代码&#xff0c;自动化编译流程。 网站 官网中文网站 下载安装 可以下载这个 安装jenkins前先安装java yum search java|grep jdkyum install java-1.8.0-openjdk 安装jenkins j…

我是如何做性能测试 - 文档收集并深入学习

目录 前言&#xff1a; 1. 架构设计说明书 2. 需求说明文档/需求规格说明书 3. 接口设计文档 4. 接口详细设计文档 5. 数据库设计文档 前言&#xff1a; 性能测试是软件开发过程中的一个重要方面&#xff0c;它旨在评估软件在不同负载和压力条件下的性能表现。性能测试需…

Android10 调用相机 ( 涉及读写文件 ) 闪退

背景 按照 << 第一行Android代码>>写了一下调用摄像头和相册的案例, 页面是下面截图的样子, 拍照或者从相册选择图片后, 在下方的 imageView 里将图片显示出来. 点击 “从相册选择照片” 按钮的时候功能是正常的, 点击 “拍照” 按钮的时候会闪退并报告相机异常.…

Java训练三

一、数独 将1~9的数字放入一个3x3的数组中国&#xff0c;判断数组每行每列以及每个对角线的值相加是否都相同。 package haha; public class helloworld{public static void main(String[] args) {int arr[][] {{1,2,3},{4,5,6},{7,8,9}};//每行int arr1[]new int[3];for(int…