孟威
作者孟威·2018-11-30 17:38
系统架构师·IT

IBM Cloud Object Storage 在银行业非结构化数据存储场景下的对象存储解决方案解析

字数 10007阅读 7612评论 1赞 5

1. 对象存储在银行业的应用机会

随着银行业IT技术的快速发展和业务的不断升级变革,业务应用系统产生的非结构化数据(包括文件、图片、音视频文件等)的规模也越来越大,银行业非结构化数据呈指数式爆发式增长。目前使用非结构化数据的主要系统包括内容管理平台、后督影像系统、身份验证、柜员办业务扫描件等需要用到影像图片,以及呼叫中心系统、电话客服的录音文件,需要长期保存并保存高效。企业的技术部门需要不断寻求新的解决方案,应对海量文件的挑战,解决容量和性能问题。

随着容量的不断增大和文件数量的不断增加,采用传统集中式存储架构采用SAN+NAS存储,解决非结构化数据存放出现了性能严重衰减、扩展性差、扩展经济效应低等诸多问题。
传统的方式采用SAN存储。SAN存储的优势在于性能快,适用于结构化数据。缺点是在处理大量非结构化数据时,无法处理多级目录,随着影像文件越来越多,通过SAN存储管理上亿个小文件是巨大的困难。遍历文件需要极大的资源消耗,文件目录打开需要很长的响应时间,严重影响了业务系统的服务水平。

传统的方式采用文件存储系统NAS。NAS存储的优势是适用于文件共享,无需调整接口,通过标准的NFS或CIFS接口给业务应用提供数据访问的接口。缺点是在处理多级目录和海量非结构化文件同样遇到问题。NAS存在卷容量受限、弹性扩容能力下降、文件数量受限、单位容量成本升高等问题,目前针对海量数据文件的存储均通过多个NAS卷存储、历史数据及时归档等方法临时性地解决问题。此外业务还提出实时访问全量数据(历史数据+在线数据)的需求,这更加增大了存储服务的难度。

数据作为银行最重要的资产,需要通过多种备份方式进行数据保护,但数量庞大的影像文件在备份过程中也面临着巨大挑战,传统的备份软件和备份方式已经不能对影像文件进行备份,更多采用存储级别的备份方式。通过存储底层的复制技术达到数据保护的目的,但这种方式不能规避逻辑错误,不能规避人为的误操作,不能准确的恢复至具体时间点。尤其在涉及到数据高可用时,通过利用传统的磁盘RAID/数据副本/镜像等技术时,会成倍的扩大化存储空间的投入。

正是基于以上这些非结构化数据面临的问题,选择适合非结构化数据存储的整体解决方案,解决当前存储在问题,提升业务系统的服务。

如下图所示给用户一个更为直观的角度,从文件数量、容量、是否结构化的角度来对待不同的存储类型。旧的存储模式已是瓶颈,对象存储和传统集中式存储在数据量级和文件数量级不同时各自适合的应用场景。

ue24j5un1sc

ue24j5un1sc

在这一背景下,对象存储通过一种全新的存储技术手段,作为稳定的分布式存储正是非结构化数据的应对之策!采用分布式对象存储,通过软件整合服务器及其磁盘阵列,提高存储服务能力,提供标准HTTP接口(S3接口)给业务应用系统提供数据访问接口,具有高扩展性、高性能高可用、操作简单、成本低廉等优点,是目前解决海量文件存储的有效方案!

2. IBM对象存储COS解决方案解析

IBM对象存储Cloud Object Storage(简称COS)有助于解决银行业所面临的海量数据的存储挑战。可以实现当今银行业快速增长的非结构化数据所必需的可扩展性、可用性、安全性、易管理性和灵活性,同时还能降低总拥有成本(TCO)。
IBM COS通过利用分布式的X86服务器集群加LAN网络构建了一个无限扩容、永远在线、存储共享的高性价比存储架构体系。对外提供了统一REST API接口,支持各种编程语言(Java, Ruby, Python等)和多种上层应用类型(内容管理系统、网盘、备份、归档等)。同时通过引入先进的纠删码(Erasure Coding)技术,可以利用1.X倍的空间需求(对比3.X倍传统的RAID+多副本的高可用架构)实现高达9个9的可靠性和6个9的可用性。而在扩容及系统维护时全过程0宕机,高度满足了业务的连续性需求。

2.1 IBM COS功能组件介绍

IBM COS可部署为三种节点类型为一体的集群。包含三种节点类型分别是:IBM COS Manager、IBM COS Accesser 和 IBM COS Slicestor。每个节点都包含在行业标准服务器上运行的 IBM COS软件。IBM COS 软件可兼容来自不同渠道的包括物理或虚拟设备在内的各种服务器,此外,IBM 还可对客户希望在其环境中使用的特定服务器开展认证,有助于确保快速完成初始安装,实现长期的可靠性以及可预见的性能。

  • Manager节点:提供带外配置、管理和监控功能;
  • Accesser节点:处理存储I/O请求,并对写入数据进行切分、派发、检索、加密和编码;Accesser是一个无状态节点。
  • Slicestor节点:为IBM COS System提供数据存储容量,维护数据片来确保数据的安全性、可靠性和可用性,单站点或多站点部署。Slicestor 节点可在摄取数据时接收来自Accesser节点的待存储数据,并根据读取要求将数据返回到Accesser节点。

2.2 IBM COS为用户带来的业务收益

2.2.1. 可扩展性:系统从小容量72TB起步,轻松发展到PB甚至EB级别。存储系统应该能够处理所有当前的存储要求并具备扩展能力,以便在单个存储系统和单个命名空间内满足未来5-10 年的预期需求,而不是通过不断增加容量有限的存储筒仓来满足这些需求。IBM COS软件经过测试和考验,多个客户的生产部署容量超过100PB,不仅如此,还能扩展到EB 级别,在保证可靠性、可用性、易管理性的同时还能更加经济实惠。无论您当前的需求是否低于1PB、10PB 还是数百PB。

2.2.2. 安全性:即便涉及到多个驱动器、服务器、容器或位置,也能始终确保数据机密性。从内置的静态和动态数据加密到一系列验证与访问控制选项,IBM COS 提供丰富的功能,帮助您满足安全需求。这些安全功能得到充分实施,可实现更高的安全性,同时不会影响可扩展性、可用性、易管理性或经济效益。

2.2.3. 可靠性与可用性:在IBM COS System 内,系统的可靠性与可用性特征是可以配置的。静态数据加密,采用擦除码算法(erasure coding),提供最低6个9的可用性。数据永久在线,替代传统的NAS和磁带,无论是否有计划内或计划外停机都能随时使用数据。对于要求极端严苛的应用程序而言,可以提供16个9的可靠性与8 个 9 的可用性。 但更普遍的情况是,客户可以配置更正常的可靠性与可用性级别,从而实现更多经济节省。IBM COS System 系统具备可配置性,因此您可选择最适合您要求的可靠性、可用性以及经济性组合。通过内置的完整性检查和自行修复功能实现长久的数据持久性。

2.2.4. 易管理性:每位管理员可以更轻松地管理数十PB的存储容量。IBM COS System 的易管理性让管理员管理的存储容量增加了15倍,能够将时间腾出来处理其他任务。IBM COS System可提供始终如一的可用性,可以在完成任务时继续为存储应用程序提供服务,而在大多数传统存储系统中,则需要计划停机时间。软件升级、硬件维护、存储容量扩展、硬件刷新以及存储系统的物理重定位,几乎都可在不发生停机的情况下完成。

2.2.5. 经济性/TCO:IBM COS的软件定义存储解决方案无需IBM 特定或专有的硬件。IBM COS软件与行业标准硬件系统结合使用,有助于IT组织显著降低每可用TB曲线的成本,帮助组织以更经济的方式管理迅速曾展个存储容量需求。

IBM COS 无需成本高昂的复制,在PB 甚至更高级别显著降低存储系统的总拥有成本。可根据客户的具体要求配置可靠性和可用性特征。软件使用独特的信息传播算法 (IDA) 保护数字资产,而无需存储多个副本,后者会将物理存储容量降低50% 以上。IDA 在存储数据之前会对数据进行编码,使用这种方法,即便出现多次硬盘或服务器故障,甚至是站点中断,数据仍继续可用,同时仅需存储一份数据即可。另外,IBM COS System 可用容量的利用率可高达99%,且不会出现显著的性能下降,而在大多数传统的存储系统中,随着利用率的提高,性能通常会有所下降。

IBM COS对象存储采用以太网组网,利用大容量高密度低转速近线SAS盘和通用X86服务器等,带来极大的成本降低。如下图所示,举例来说,存储节点选用高密度大容量8TB磁盘,单台4U高的PC服务器即可容纳384TB容量,12台服务器均衡部署三站点,总体裸容量4.5PB,结合纠删码技术7/12带来的1.7倍冗余系数,12台PC服务器总体可用容量达2.6PB。

iq9ku7vzfvf

iq9ku7vzfvf

与大多数传统存储系统以及公共云存储相比,IBM COS system 可节省高达 80% 的TCO。TCO节省不仅反映在更低的购置成本,还体现在因为硬件占地面积减小而节省的电源、冷却成本和空间,以及在存储管理和运作方面投入的更低人力成本。

2.2.6. 业务创新:IBM COS引领企业业务创新。云,大数据,移动,社交,随着企业业务形态的发展,带来了海量的、非结构化数据;非结构化数据的速度增长,使得客户出现大量的PB甚至以上级别的数据存储需求;而对于传统的存储架构来说,针对海量的非结构化数据,已经到达了数据存储的临界点。想要突破临界点,必须寻求创新的企业级存储架构,保证存储的扩展性、安全性、成本效率、连续可靠的访问,以及高效率的管理监控。从长远角度来说,对象存储是未来突破数据临界点的一个发展方向,用来整合海量的非结构化数据,如果数据存在一个统一的平台上。对象存储采用S3接口,有利于互联网类的应用开发。具备标准的接口,那么未来就可以实现跨平台的应用数据共享。

3.银行业建设分布式对象存储需解决的问题

3.1. 提升运维管理和操作能力

IBM COS在运维管理方面,提供用户权限管理、监控管理、日志管理等,对接告警系统和备份恢复系统,确保数据稳定性和完整性;IBM COS在运维操作方面,方便用户进行存储申请、故障处理(包括服务器/硬盘替换等)、扩容操作,降低运维成本。

整个管理界面极其简单,同时能够监控到每一台机器,每一块磁盘的IO,当有告警、报警的时候,将必要的信息体现在管理界面的中控台,并返回对应不同的报错信息,给系统管理员能够很好判断、处理系统健康状况。除了日常的系统监控、维护之外,所有的系统硬件替换、存储空间扩容、系统软件版本升级都可以简单的通过管理界面来完成可视化操作。同时,管理控制台也支持API的调用方式,提供和现网其他管理平台集成,或者相应其他应用所需信息的灵活调用。

  • 可视化监控视图:IBM COS提供了非常丰富的可视化监控视图,包括存储池级、服务器级、设备级(网卡、磁盘等)。监控对象存储的整体状态以及事件、性能相关的监控信息。
  • 配置管理:IBM COS提供对整个对象存储系统中各个部件的的管理配置和存储资源申请。
  • 安全配置:IBM COS提供整个存储系统的安全相关信息,包括用户的访问权限管理,内部PKI体系的相关配置和参数,鉴权机制的选择以及安全事件的审计和查询。其中访问权限控制,首先可以通过角色Roles区分不同的用户角色,不同的角色具有不同的权限,其次每个Vault(Bucket)只有在赋予权限后才可以被用户看到(管理员、读和写、只读、无访问权限)。
  • 内建数据加密技术、版本控制、配额管理、索引管理:IBM COS提供可选的数据加密功能,可以选择使用AES256加密算法进行加密。提供配额管理,可以根据业务需求,对不同的bucket设置相应的使用量上限。
  • 运行维护:IBM COS提供便捷的运维管理相关的功能,包括系统在线升级,日志收集,主动系统运行监控,系统操作控制台,密码修改和报表等功能。

3.2. 提升海量数据的安全性

IBM COS应对海量非结构化数据的整体安全性的保障实际上有多重防护:

  • 第一层是纠删码的保护,通过将原有数据的编码、切片,从而使得每一个切片数据在没有纠删码算法反编译的情况下,是不可读;
  • 第二层是信息离散算法,此算法保证了纠删码编译后的切片数据能够跨站点的分布到每个节点中,因此去攻击每一个数据中心的每台存储节点基本已经变成了不可能;
  • 第三层,更为强大的是,采用AES256加密算法,通过随机生成的key将原数据加密后,将key和加密数据包XOR后的结构,附加在加密原数据上形成AONT包再进行纠删码运算。COS是内置的静态/动态数据加密,包括一系列授权和访问控制选项,且COS是不需要密钥管理系统的;任何单个磁盘、节点或位置均没有数据拷贝。采用 TLS 进行动态加密,并采用 SecureSliceTM 加密技术进行静态加密;COS提供可以高达政府级的数据安全性,得到了美国CIA的认可,并且支持美国情报委员会,所以安全性方面是一个很大的优势。
  • 第四层,用户授权方面,可使用多种机制(如用户名密码、证书+私有密钥)授权单个用户,所有的关键配置信息都采用安全传输或数字签名,以防任何外部人员盗用管理员的角色,Vault还可根据无类别域间路由 (CIDR) IP 访问限制进行配置。

这四层的保护保障了IBM COS从硬件层面做到了不可攻破的高安全性。

3.3. 站点容灾和数据保护,确保数据可靠性

传统集中式存储存放海量非结构化数据,在备份、数据保护方面存在困难,只能使用存储级别复制技术来进行数据保护。IBM COS的数据保护机制不仅提供采用跨站点的纠删码算法,使得对象存储根据多节点部署,某存储节点发生故障时生产不受影响;还可以提供同步、异步的镜像配置技术;提供多版本的功能,规避逻辑错误,保证非结构化数据被误删除后可进行恢复,数据可靠性得到了很高的提升。

IBM COS根据用户的业务需求,可以采用三种不同的顶级配置进行部署,可部署单站点、双站点及三个及以上站点。在单个站点或者多个地理上分散的站点之间,用户只需一个公有或私有网络,将其连为一体即可。将来可在不发生系统停机的情况下更改已利用站点的数量。最初在两个站点部署的系统,后期可经过重新配置,部署在三个站点。

1. 单站点部署:单个站点部署IBM COS是最简单的部署选项,可在不需要站点冗余时提供最佳性能,IBM COS采用纠删码的方式,通过信息离散算法(IDA)提供数据保护,允许该站点内多个设备出现故障。且无需复制数据,更加经济。

2. 双站点Mirror部署:IBM COS采用Vault Mirror镜像配置技术,在两个站点内保持数据副本,两个站点可并行进行读写,即使两者之间出现通信中断也是如此,从而提供站点级别的故障容错功能。复制的方式是同步或者异步。

oeurx9ag8ac

oeurx9ag8ac

3. 三个及以上站点部署:IBM COS采用纠删码的方式,具有天生的地理容灾性,可借助IDA在三个或更多站点部署IBM COS,提供无需复制的站点级别故障容错功能,提升数据可靠性,极大降低存储成本。在7/12的例子中,如果将四个节点分布在不同的三个站点中,在一个站点出现故障的时候,整体系统因为失效四个节点而小于最大五个节点的配置,而不受任何影响,具备了天生的地理容灾性。

hx7awd8mwfk

hx7awd8mwfk

综上,IBM COS数据保护机制对比传统存储的优势:IBM COS云对象存储和传统方案相比,最突出的体现在于两点完全颠覆传统的方式,无需副本,无需RAID。IBM COS采用纠删码的方式,通过信息离散算法(IDA)将切片分发的规则。在经典7/12的配置中,意味着7+5,通过5个切片的冗余,COS可以做到任意失效其中的5个切片原数据依然正常读取,系统正常运行。同时,整体纠删码是可变的,7/12,14/18,16/24,20/36等等都是根据客户需要的经济性和可靠性完全定制的方案。

传统集中式存储采用RIAD技术对数据进行保护,若RAID组中一块盘失效,需要通过RAID算法重建,一般来说,一块盘的修复需要几个小时的时间,不仅重建速度满,而且会影响存储整体性能。

三中心架构采用传统方案至少需要RAID6+三副本,至少需要3.6倍的裸容量。而采用IBM COS (7/12为例)仅需要1.7倍的冗余,三站点场景极大降低存储成本,提高数据可靠性。同时,根据各个客户实际需求的不同,可以定制化不同的纠删码比例,这些参数包括但不限于系统可用容量、扩展性、安全性、数据可靠性、数据可用性和访问性能。

7ktd4qydb6w

7ktd4qydb6w

3.4. 优化分层存储架构

IBM COS有利于银行业优化分层存储架构,存储体系提供分层(热、温、冷)服务,用于不同的应用服务等级,同时存储对应用完全透明。

纵观整个存储的发展,块存储、文件存储、对象存储,直到现在三块主要的存储技术分而治之,共同构筑起存储分层的概念,这也是数据生命周期管理最重要的实现。存储分层架构有明显的好处:

  1. 从数据使用热度上区分其数据的使用价值,让IT设施的性能为价值数据服务。
  2. 优化整体存储方案的成本结构,保护既有存储资产的前提下能够突破海量数据的存储的限制。
  3. 从存储本身考虑,在扩展性、性价比、可用可靠性上,由于对象存储技术的出现找到新的平衡点。

银行业传统的方式全部数据使用集中高端存储,没有实现优化的分层存储架构,带来的问题是非结构化数据影像整体存储性能,并且这些数据长期存放与高端存储对存储的高IOPS也是一种浪费。

IBM COS提供全新的优化分层存储架构,根据业务系统的相关重要性进行分层,例如影像平台进行调度管理的数据库使用传统集中式的高端存储,保证数据库的高响应,非结构化的数据使用对象存储进行存储。根据对象存储的扩容特点,将对象存储制作成二级存储资源池,所有非结构化数据存放于“池”中。性能线性增长,支持灵活扩展,且在超大规模环境100PB以上经久验证。

考虑非结构化数据的性能和兼容性,将对象存储作为二级存储池的设计,可选择两种架构。根据用户的具体应用场景进行分析,譬如用户是做备份、归档、还是代替现有文件系统存储海量数据等。比如,对于影像系统来说,如果用户使用Spectrum Scale做并行分布式文件系统,可在后端加入COS作为一个分层的存储解决方案,Spectrum Scale负责性能,而COS负责容量的无限制扩展。

针对性能要求不高,且支持对象存储接口访问的场景,采用架构1。针对性能要求高,兼容文件存储协议的场景,采用架构2。

架构1. 非结构化数据对象存储池:

基于先进的COS企业级统一的对象存储平台,基于REST API的对象存储接口进行访问。管理非结构化数据, tier2的存储,即用户对IO的敏感程度不高,或者数据的访问频率不高的场景。

h5efx6obxtj

h5efx6obxtj

架构2. 非结构化数据文件系统+对象存储池:

基于IBM Spectrum Scale(GPFS) + Transparent Cloud Tier(TCT) + COS无缝结合。GPFS并行文件系统提供极佳的性能,移除应用访问性能瓶颈。GPFS并行文件系统对应用提供Posix/NFS/SMB/CIFS,兼顾文件系统兼容性,现有应用的访问模式不变,应用开发无需适配对象存储。GPFS TCT不是数据透传,需要使用部分小容量磁盘缓存数据,然后通过migration policy或manually迁移数据至COS,读取数据时也需要将数据先从COS将数据缓存在缓冲区,对于客户而言,全过程是透明的(Transparent)。GPFS+TCT+COS兼顾应用访问兼容性和性能,提供二级可扩展的对象存储池,是优化的整体软件定义平台解决方案。

7lbzgweyezb

7lbzgweyezb

3.5. 应用改造及迁移,保障业务连续性

我们已经了解到对象存储为银行业海量的非结构化数据提供了可靠的存储介质和方式,同时对于银行业的应用程序开发人员来说,也带来了一些挑战。IBM COS是一款对象存储的解决产品和方案,所以相比传统的块存储,文件存储来说,它的一个很大的不同点就是访问方式的不同,对象存储采用的协议是S3、Openstack Swift、Simple Object等Rest API接口,而传统的集中式存储采用FC或者NFS协议。

3.5.1. COS技术对现用存储进行改造过程中的风险及解决预案

对企业现有系统主要的改变和影响体现在应用改造方面,需要根据用户的具体应用场景进行分析,譬如用户是做备份、归档、还是代替现有文件系统存储海量数据等。

  1. 如果用户的应用支持标准的对象存储接口,则不需要更改应用,将COS直接使用和访问;
  2. 如果用户具备COS的合作伙伴支持的应用,比如备份、归档类的应用作为gateway;
  3. 如果用户要求不更改应用,兼顾老系统应用访问接口,且需求受益于对象存储,可选择IBM GPFS、第三方NAS网关无缝集成COS,将对象存储作为二级存储池。比如,对于影像系统来说,用户使用GPFS做并行分布式文件系统,可在后端加入COS作为一个分层的存储解决方案。GPFS负责性能和NFS等文件协议,而COS负责无限制扩展对象存储池。GPFS TCT功能通过策略自动实现GPFS和COS的迁移和回迁,全过程对应用是透明的。GPFS+TCT+COS整体解决方案兼顾应用访问兼容性和性能,保持现有应用的访问模式不变,应用开发无需适配对象存储。
  4. 对多数用户来说,需要对应用的接口进行更改,改为标准的S3等COS支持的标准接口。但是从长远角度来说,对象存储是未来突破数据临界点的一个发展方向,用来整合海量的非结构化数据,如果数据存在一个统一的平台上,具备标准的接口,那么未来就可以实现跨平台的应用数据共享。此时应用改造的解决方式是,对于新上线的系统对非结构化数据的访问采用对象存储,对于存量的系统,逐步推进变更的方式。

此外,如果是替换原有的文件系统等,对于现有的如内容管理平台等影像平台,目前的数据量庞大,迁移过程是个严峻的挑战,迁移至对象存储需要进行详细的方案设计,保证对系统的影响最小,提供系统的业务连续性。

3.5.2. 原有业务系统已有数据到对象存储的无缝数据迁移

一般来说,新的NAS设备本身具有向对象存储迁移的功能。或者使用数据无缝迁移、协议转换引擎等工具,能够帮助用户实现原有业务系统已有数据到对象存储的无缝迁移。

用户访问数据时,若对象存储无该部分数据,则会回源到用户源站去读取数据,并写入到对象存储,将数据传递给用户。利用迁移工具将用户源站的已有数据迁移到对象存储。若用户源站所有数据都被访问过,则源站所有数据都会被同步对象存储,无需再使用迁移工具迁移数据。

结合用户的迁移场景,综合考虑用户的业务需求、迁移的时间成本、数据迁移量、网络速度等因素(1MB 以下的小文件数量较多、磁盘 IO 性能不足等等也会影响到数据的迁移进度),可以选择离线迁移或者在线迁移两种方式。

  1. 离线迁移:如果用户的存储容量很大(TB~PB 级别),或者带宽有限,在线迁移时间成本较高,业务场景允许停服,则可以考虑离线的迁移方式。离线迁移可解决本地数据中心通过网络传输迁移云端时间长、成本高、安全性低的问题。
  2. 在线迁移:如果用户的存储容量不是很大,而且业务场景不太允许停服,可以考虑在线的迁移方式。

典型的NAS设备在线迁移至对象存储说明如下图所示:

4zcg765sqvr

4zcg765sqvr

DB:修改访问地址,文件系统地址转到对象存储服务的url。
File Gate Way说明:

  • 指定源和目标:

    • 源端:NAS设备,采用NFS/CIFS协议,由文件系统组成,目录结构Folder/Directory/File
    • 目标:COS设备,采用Swift/S3协议,Buckets组成,存放Object ID,http://hostIP/namespace/AABB
  • 程序判断:

    • 已经迁移完成的文件直接提供对象存储访问
    • 未迁移过来的文件通过回源的方式提供访问
    • 完整性校验,完成迁移

迁移至对象存储的设计,移除迁移链路的不稳定性和风险,因此COS迁移机制支持多种功能,保障用户成功完成数据的在线迁移。

  • 查看数据迁移进度
  • 文件一致性校验
  • 失败重传
  • 断点续传
  • 启动HTTPs安全传输等功能

为了提升迁移效率机制,分布式并行传输有利于加快迁移速度,迁移至对象存储支持:

  • 可迁移全量或增量数据
  • 根据网络环境自定义调整大小文件的阈值
  • 针对大文件小文件分别定义并发度
  • 实现大文件分块、小文件并发传输
  • 自定义迁移执行时间和带宽限制
  • 监控生产数据压力,保证自身业务运行不受迁移数据带宽占用影响等最佳迁移方式

综上,IBM COS为应用提供完整的NAS和对象存储的切换方案,规避新技术引入的风险,保障业务连续性。IBM会帮助用户更好的针对应用和架构的具体情况进行针对性的改造、部署、测试等。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

5

添加新评论1 条评论

huaweitachuaweitacIT顾问sandstone
2018-12-06 09:28
可否提供PDF版本以供学习
Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广