中电金信:银行业私有云何去何从
2009年,云计算开始从概念走向实践。在这一年,Gartner在预测2010十大发展趋势中,将云计算列在榜首。在这之后,谷歌、亚马逊、IBM等科技巨头纷纷加码对云计算的研发投入。2010年正式迎来云计算时代,这一年也被定为“云元年”。
2013年4月,2013中国国际云计算技术和应用展览会(Cloud China 2013)在北京举办。此次展会的主题是"云成就未来",会上不仅展示了云计算技术的最新进展,更正式拉开了国内云计算实践的帷幕。
01|银行业私有云演进
1.1 从虚拟化到私有云的演进
随着银行业数据大集中的推进,银行业IT正式进入了IOE时代,随之开始对虚拟化进行了广泛应用。虚拟化最早的应用是计算虚拟化,但随着其应用的不断拓展,银行业逐渐实现了从虚拟化到私有云的演进。这一演进过程主要带来了两方面的提升,一是网络虚拟化,提升了网络的管理效率、使用效率及安全性;二是简化了基础资源管控,从而提升了基础资源的管控效率和便利性。
虚拟化是实现私有云的重要技术,正是这一技术的引入,使得私有云有效提升了虚拟化后资源的调度能力、高可用能力,同时简化了虚拟化管理。可以说,虚拟化技术是私有云的基础,但同样的,私有云也离不开虚拟化的底层支撑。
1.2 银行业私有云的快速发展
2015年,银行业在国家“十三五”发展规划基础上,推出了《中国银行业信息科技“十三五”发展规划监管指导意见》,并在意见中明确了银行业私有云规划、建设、应用迁移的具体发展战略。在指导意见的指引下,银行业私有云建设得到了快速推进和发展。
1.3 私有云在发展中演进
私有云的演进,先后经历了资源交付、服务交付、应用交付等阶段。伴随云原生的发展,私有云已成为银行业不可或缺的基础平台。
■ 狭义云计算
私有云在2010-2013年进入银行业,这个阶段为狭义云计算阶段,主要以IaaS为主。在这个阶段云计算主要职能是资源交付,为应用提供基础支持,与应用关系并不紧密。
■ 广义云计算
随着分布式、微服务等应用架构的革新,需要支持应用的中间件、数据库日益增多,环境安装部署配置日益复杂,为更好、快速支撑应用迭代和发布,将中间件和数据库形成平台云服务,云计算进入了IaaS+PaaS阶段。这个阶段为广义云计算阶段,基础设施与应用关系变得紧密,云计算主要职能为服务交付。
在广义云计算发展的同时,以持续集成、DevOps、容器等为核心的云原生技术被大力推广,有效促进了应用上云。银行业私有云也由此得到了快速发展。
■ 容器云的应用
为简化应用及应用环境部署,更进一步提高资源弹性,容器技术得到了广泛的推广和应用。容器技术诞生之初,是与虚拟化技术并行发展的两条技术路线,但由于虚拟化技术更广泛地应用于银行业,所以在容器技术推向市场时,经常会面临一种质疑——能否在虚拟机中顺利进行部署。
2013年,出现了众多以容器技术为主题的创业公司,容器云(即CaaS)这一概念随即被推向市场。由于这些创业公司对容器技术的积极推广,加之随后信创与云原技术生的双重助力,容器技术迅速获得了大多数银行的认可与应用。同时,以容器技术为核心的云原生技术,与应用之间的关系也变得更加紧密。随着云原生技术的推广和发展,银行业私有云逐步演进到应用交付阶段。
问题探讨
容器云究竟是属于私有云的一部分,还是属于私有云的其中一种类型?以及企业只建立容器云能否满足基础平台的发展需求?这些是非常值得评估和探讨的问题。
● 观点一:从虚拟化与容器技术的诞生和应用视角来看,虚拟化与容器都是基础资源供给方式之一。虚拟化更偏重于基础资源供给,容器除了基础资源供给之外,与应用关系更加紧密。虚拟化与容器都是私有云所使用的技术,两者也可以结合起来共同为应用服务。
● 观点二:无论是基于虚拟化技术的私有云,还是基于容器技术的私有云,二者都属于私有云。
● 观点三:当企业所有应用都进行了云原生改造后,只建设基于容器技术的容器(私有)云,完全可以满足企业基础平台需求。只是每个企业在较长时间内,都会同时存在多种形态应用,一定程度上离不开虚拟化技术,所以只建设基于容器技术的私有云是不行的。
1.4 信创助力私有云快速发展
信创建设是当前阶段银行IT建设的重点工作。然而,信创单品在性能、稳定性方面所面临的瓶颈与挑战也是业界所熟知的。想要解决此类问题必须依靠资源集群化、资源横向扩展、双活、多地多活等架构革新策略。无论是应用架构还是基础架构,都需要满足高并发、高可用、灵活扩展的特性,这些特性正是云原生天然具备的,而云原生实现又需要私有云的支持,所以信创的推进让私有云得到快速发展。
截至2022年,CNCF云原⽣计算基金会已经有175个开源项⽬,其中有40+来⾃中国。自2018年上海⾸次举办KubeCon+ CloudNativeCon大会后,每年都会有数⼗家中国企业成为CNCF云原⽣计算基⾦会的会员。从信通院2023年云原生大会报告、Gartner云原生相关技术成熟度曲线对比来看,云原生技术在国内发展速度远远大于国外,其中非常重要的原因就是国内信创建设的推进。所以,私有云建设不仅要满足信创需求,而且还要满足云原生需求。
02|银行业私有云建设目标
2.1 满足全行业务发展、支撑全行业务上云
基础资源云化是大势所趋,所建设云平台需要从全行业务视角规划,明确技术路线和技术栈,明确全行业务上云路线。
2.2 规避供应链风险、逐步实现自主可控
通过多云建设、云平台分层解耦,减少对单一云厂商依赖,引入多厂商、构建自研队伍,增强议价能力,逐步实现自主可控。
2.3 增强与应用关系,从资源供给型转向应用供应型
基于应用视角构建开发运维一体化能力,满足应用快速迭代和发布需求,实现基础资源和环境快速供给、实现配置自动化。
2.4 构建全链路可观测,提升云原生架构下应急能力
纵向资源打穿、横向交易链路打穿,基于业务视角构建全链路可观测能力,实现云原生私有云下问题快速发现和定位。
03|银行业私有云建设思路
3.1 基础架构统一规划
在IOE时代,基础架构经过多年、多行业、全球性验证,各银行可以完全复用或照搬已经成熟的基础架构。而目前面向信创、云原生等技术下的基础架构,各银行进展不一致、应用架构存在较大差异性,同业间复用或照搬基础架构可行性不高。但自行搭建一套基础架构,在稳定性、可用性方面又难以保障,更无法适用于全行级业务应用。所以对于银行而言,亟需要启动基础架构统一规划,通过规划指导全行级基础平台建设,支撑全行级业务发展和应用上云。
遵循横向分层、纵向分域思想,梳理应用架构,规划完整技术路线,建设满足全行业务的私有云。通过基础架构统一规划,满足全行业务发展、支撑全行业务上云。
从横向视角,分为设施层、IaaS层、CaaS层、PaaS层。其中设施层包括机房与IT硬件,IaaS层与CaaS层通常称为基础平台,PaaS层称为技术平台。从纵向视角,分为每个平台的管理与各平台一体化管理,应用在各平台如何部署,平台运维与安全等能力构建。
各层规划重点如下:
■ 设施层规划:需要考虑几地几中心、每个机房的承载容量、业务及应用定位,多机房间多活设计,基础平台与技术平台在每个机房的部署架构等内容。
■ IaaS层规划:大中型银行具备持续性投入能力,可考虑建设两朵IaaS云,规避供应链风险。对于具备平台级自研能力的银行,可以基于云源代码进行延续性开发,满足私有云个性管控需求。对于中小型银行,特别是小型银行,可以考虑基于开放架构,融合不同厂商IaaS组件及管理平台,构建开放融合私有云。
■ CaaS层规划:从基础资源供给视角,CaaS与IaaS属于同一层次,都是向上层供给基础资源。从云服务供给视角,CaaS不局限于构建在IaaS或物理机,向下可以屏蔽异构基础资源,向上满足应用快速部署、资源弹性、故障自愈等需求,与应用和运维结合更紧密。
■ PaaS层规划:以支撑全行应用上云视角,规划PaaS平台整体能力,将能力细化为组件,规划组件的部署策略,全域部署或应用私有部署。对于大中型银行,还需要考虑PaaS平台从开发态、运行态、管理态等视角的解耦规划。
■ 云管理规划:对于多朵云或多技术路线,需要规划多朵云统一管控能力构建,实现基础资源及环境的统一供给、自动化供给。对于有条件的银行,可以考虑云管理、应用上云、云运维等能力的统一管理规划。
■ 应用上云规划:结合大型行业上云最佳实践,规划形成应用上云参考模型,对全行应用进行梳理和评估,确定应用上云目标,根据云服务类型确定具体应用上云技术路线。
■ 云运维规划:从云原生视角,规划云运维岗位及能力、云运维技术、云运维对原有运维流程优化、云运维工具建设等内容,云运维工具主要从全链路可观测、云资源供给、配置信息自动化等视角进行规划。
■ 云安全规划:云安全考虑安全区域划分、安全区域隔离、安全策略,横向视角规划每层的安全能力。
3.2 私有云组件与部署关系解耦
私有云为什么要解耦,是当下私有云建设和私有云治理中非常值得考虑的问题。
私有云解耦是规避供应链风险、避免被单一云厂商绑定、提升议价能力、逐步实现自主可控的有效手段。
遵循分层解耦思路,通过技术栈解耦、组件解耦、部署关系解耦,实现私有云自主管控能力和成本控制能力,提升应用部署的灵活性和可扩展性。
私有云解耦的主要思路和内容:
■ 不同云厂商产品解耦
引入不同厂商IaaS或容器等私有云,减少对单一云厂商的依赖,对私有云管控接口进行封装,当某个厂商出现问题后,保障其它厂商产品能进行平滑替换。
■ 部署关系解耦
容器、PaaS组件、金融应用,可以选择部署在不同的技术栈IaaS,规避对单一技术栈基础资源的部署依赖。金融应用可实现同一技术栈IaaS内高可用、也可以实现不同技术栈IaaS间高可用。
■ 基础层IaaS解耦
基于开放架构思想,将私有云IaaS拆分为计算虚拟化、网络虚拟化、分布式存储、云负载、云安全等组件。各组件可选择采购不同厂商产品,并另外采购第三方厂商的私有云管理平台对各组件进行统一管理,最终形成“开放架构融合私有云”。该模式如同早年间自行攒兼容机一样,采用最简单方式达到降本、可控的目标。开放架构融合私有云有助于银行提升议价能力,有效降低大厂全栈云(全家桶)后续支持不到位风险,并且可以复用原有各专业(网络、计算、存储、负责等)运维能力。
■ PaaS层解耦
对于PaaS层,一般包括三种视角下的解耦。从开发视角,考虑对PaaS组件调用接口封装,规避后续PaaS组件替换带来的应用二次改造;从运行视角,考虑PaaS组件为多套应用共享部署和每套应用私有化部署;从管理视角,构建PaaS统一管理平台,同时管控全栈云PaaS组件、第三方PaaS组件、自研PaaS组件。
3.3 由资源供给向应用供给转型
银行私有云建设最终支撑应用系统的稳定性和可用性,私有云从IaaS到PaaS,从CaaS到XaaS的演进,都是在围绕如何更好的支持应用、如何更好的减轻运维工作而开展。
据Gartner前沿技术研究报告指出,私有云的演进和发展,一直是围绕“持续基础设施自动化”而开展,其模型如下:
图源:Gartner《如何运用云技术为敏捷性赋能》
按照这个模型,基础资源的规划与供给,将前移至应用需求阶段,引入基础设施即代码(IaC)技术,将基础设施纳入持续集成环境,与应用代码一样,共同执行版本控制,在线选择、编排、配置应用所需要的基础资源和环境,同步完成基础资源和环境的配置基线、以及监控和可观测能力的构建。在应用运行时,动态调整资源、实现资源弹性,实现私有云由资源供给型转型为应用供给型。
“持续基础设施自动化”已经走过概念阶段,目前业内已推出行业落地产品,产品功能架构如下:
通过持续基础设施自动化平台建设,实现基础资源及环境的快速供给和弹性供给、实现满足金融安全合规要求的基线配置、实现私有云由资源供给型转型为应用供给型。通过持续基础设施自动化平台建设,有效扩展了银行私有云能力,让私有云更加有效的提升运行效率、降低运维工作量、简化运维工作难度。
3.4 构建全链路配置管理与可观测能力
配置管理信息不完整、不准确,是全行级IT管控、实现智能化运维的主要障碍,私有云通常只实现了基础资源的配置信息自动化,距离实现全链路配置信息自动化还有很多的工作要做。随着云原生应用大范围推广,云原生架构下的运维对准确、完整的全行级配置信息要求越来越高。所以在配置信息自动化需求驱动下,需要对私有云功能进行扩展,一方面通过分散式配置管理实现全行级配置管理,另一方面通过分散后各个配置管理模块的自动化,实现全行级配置管理自动化。
■ 构建分项配置数据库
Gartner前沿技术研究报告提出了分散式配置管理,按照这个思想,全行级配置数据库应该由多个分项配置数据库共同组成,每个分项配置数据库保障其信息动态、完整、准确,即可以保障全行级配置数据库的动态、完整、准确。全行级配置数据库可以划分为网络拓扑、基础资源、应用关系、微服务关系等多个分项配置数据库。
■ 构建分项配置数据库间的关联
多个分项配置数据库在使用时,需要进行关联和打通。纵向需要打通基础资源与应用配置信息,实现纵向全链路可观测。横向通过微服务注册、全局交易流水号等信息还原交易链路,对于没有全局交易流水号的应用,可以通过链路跟踪技术对应用进行埋点,实现交易链路跟踪。通过分项配置数据库间的关联,可以将应用故障定位到应用微服务方法调用级别,实现应用故障快速定位。
■ 全行级配置管理自动化
实现全行级配置数据库,需要对私有云功能进行扩展,通过功能扩展实现网络拓扑、应用关系、微服务关系等配置信息自动化。具体实现方式是一方面将私有云与其它运维工具进行打通互动,另外一方面如果现有运维工具不完整,需要补充相应功能,如链路跟踪、链路可观测等功能。
04|银行业私有云展望
4.1 大型银行从上云到深度用云
对于大中型银行,应用上云已处于成熟期,已从全面上云发展到深度用云阶段。在深度用云阶段必将深度融合本行的管理体系、管理流程、个性业务需求,所以会涉及私有云的改造和升级。云厂商的支持力度、个性化支撑情况,直接关系到本银行私有云的运行效率和是否能良好的使用,所以分层解耦被提上日程。架构开放、接口开放、生态融合,是私有云发展的必然,全栈功能、简化运维、傻瓜化操作的私有云平台并不适应于银行业的长远发展。
4.2 中小型银行仍处于上云探索期
上云是银行IT发展的必然,是适应高并发、高可用、高弹性业务需求的基础,是实现配置信息自动化、提高运维效率的基础。但对于中小型银行而言,由于种种原因限制,大厂云不是首要选择的目标。对于此类银行来说,选择开放架构、选择合适的厂商、选择适合自身的私有云更加重要,关注新技术、关注私有云技术路线发展更加重要。
4.3 FinOps从概念到落地
在私有云运营中,成本是首要关注的目标,特别是面向分行(或行社)运营的分行云(或行社云)。落地并推广FinOps,可以满足私有云成本优化的场景需求。FinOps是Finance和DevOps的融合体,不仅将应用DevOps、私有云成本、业务发展等有机结合,更将私有云成本优化纳入私有云运营管理体系中,从而提高管理者的成本优化意识、建设流程规范、加强开发与运维及运营团队协作,将私有云成本优化从单纯的减少和释放资源,延伸到资源预测、成本预测,并通过引入机器学习、AI等技术,生成可供银行管理者参考的私有云成本优化建议。
4.4 私有云的跨越式发展
云计算作为向下打通算力、向上支撑应用的关键技术,对银行科技发展起到的关键性作用不言而喻。私有云厂商如何向银行提供多样化、可组装、可扩展、易操作的产品,是未来私有云厂商的关注重点。各银行从上云走向用云和管云,云运营成本、云运营稳定、云运营安全性是各银行管理层关注的重点。云厂商关注重点与银行管理层关注重点,如何有效结合和统一,是私有云能否跨越式发展的关键。
相关文章:

中电金信:银行业私有云何去何从
2009年,云计算开始从概念走向实践。在这一年,Gartner在预测2010十大发展趋势中,将云计算列在榜首。在这之后,谷歌、亚马逊、IBM等科技巨头纷纷加码对云计算的研发投入。2010年正式迎来云计算时代,这一年也被定为“云元…...

Adobe Acrobat Pro或者Adobe Acrobat Reader取消多标签页显示,设置打开一个pdf文件对应一个窗口。
Windows系统:Adobe Acrobat Pro或者Adobe Acrobat Reader首选项-一般-取消在同一窗口的新标签中打开文档(需要重启)的对勾,点击确定,彻底关闭后重启,这样打开的每一个PDF文件对应的是一个窗口,并…...

从0开始学习pyspark--pyspark的数据读取[第4节]
在PySpark中,读取文件型数据是一个常见的操作,Spark支持多种数据格式,如CSV、JSON、Parquet、Avro等。以下是一些常用的方法来读取不同格式的文件数据。 读取文本型数据 读取CSV文件: 使用spark.read.csv方法读取CSV文件,可以通…...

极速升级:MacOS系统中Pip源的切换指南
极速升级:MacOS系统中Pip源的切换指南 在MacOS系统中,Python的包管理工具Pip是我们管理和安装Python库的得力助手。然而,默认的Pip源在国外,对于国内用户来说,访问速度可能较慢。因此,更换Pip源以提高下载…...

服务器的分类,主流服务器的应用场景
一、服务器分类 服务器可以按应用层次、体系架构、用途、外形等进行分类。以下是详细说明: 按应用层次分类 入门级服务器:这些服务器一般用于小型企业或部门的简单任务,如文件共享和打印服务。工作组级服务器:适用于中小型企业&…...

Objects and Classes (对象和类)
Objects and Classes [对象和类] 1. Procedural and Object-Oriented Programming (过程性编程和面向对象编程)2. Abstraction and Classes (抽象和类)2.1. Classes in C (C 中的类)2.2. Implementing Class Member Functions (实现类成员函数)2.3. Using Classes (使用类) Ref…...

从单点到全景:视频汇聚/安防监控EasyCVR全景视频监控技术的演进之路
在当今日新月异的科技浪潮中,安防监控领域的技术发展日新月异,全景摄像机便是这一领域的杰出代表。它以其独特的360度无死角监控能力,为各行各业提供了前所未有的安全保障,成为现代安防体系中的重要组成部分。 一、全景摄像机的技…...

Java学习 -Golang开发环境+目录结构+编译+部署
开发环境 环境变量设置 GOROOT 指定 golang sdk 的安装目录GOPATH golang 工作目录,项目的源码放在这个目录下PATH 将 GOROOT/bin 放在 Path 路径下,方便命令行能直接运行 golang的命令行工具项目目录结构 |--project // 位于G…...

Redis 典型应用——缓存(缓存预热,穿透,雪崩,击穿)
一、缓存 缓存是计算机中一个很经典的概念,核心思路是把一些常用的数据放到访问速度更快的地方,方便随时读取; 但对于计算机硬件来说,往往访问速度越快的设备,成本越高,存储空间越小,缓存是更…...

Sharding-JDBC分库分表的基本使用
前言 传统的小型应用通常一个项目一个数据库,单表的数据量在百万以内,对于数据库的操作不会成为系统性能的瓶颈。但是对于互联网应用,单表的数据量动辄上千万、上亿,此时通过数据库优化、索引优化等手段,对数据库操作…...

7月信用卡新规下:信用卡欠的钱不用还了?
说到信用卡,现在基本上人手一张,大家都有使用过。但你知道吗,使用信用卡不是这么简单容易的事,比如会对你的贷款有影响,透支不还逾期对生活的影响,信用卡新规对持卡人和银行那边的影响。 一、只要不逾期&am…...

坑——python的redis库的decode_responses设置
python的redis库查询返回的值默认是返回字节串,可以在redis.Redis()方法中通过设置decode_responses参数,让返回值直接是字符串; 查询返回字节串是因为Redis()方法中decode_responses默认值是False: 设置decode_responses为True就…...

从项目中学习Bus-Off的快慢恢复
0 前言 说到Bus-Off,大家应该都不陌生,使用VH6501干扰仪进行测试的文章在网上数不胜数,但是一般大家都是教怎么去干扰,但是说如何去看快慢恢复以及对快慢恢复做出解释比较少,因此本文以实践的视角来讲解Bus-Off的快慢恢…...

视频参考帧和重构帧复用
1、 视频编码中的参考帧和重构帧 从下图的编码框架可以看出,每编码一帧需要先使用当前帧CU(n)减去当前帧的参考帧CU(n)得到残差。同时,需要将当前帧的重构帧CU*(n)输出,然后再读取重构帧进行预测…...

js修改scss变量
style.scss $color : var(--color,#ccc); // 默认值 #ccc .color{background: $color; } 定义了一个scss变量($color),用普通的css变量(--color)给他赋值,这里需要一个默认值,此时css变量(--co…...

【中霖教育怎么样】报考注册会计师有年龄限制吗?
【中霖教育怎么样】报考注册会计师有年龄限制吗? 申请参加注册会计师考试有没有年龄约束? 对于注册会计师的考试,不存在具体的年龄上限。而且该考试的入学门栏相对低,主要对考生的年龄下限规定。 在专业阶段,注册会计师考试要求考生具备…...

PHP验证日本手机电话号码
首先,您需要了解手机号码的规格。 根据 ,手机和PHS(个人手持电话系统)可以理解为以“070”、“080”和“090”开头的11位数字。 此外,以“050”开头的11位特定IP电话号码也将包含在该目标中。 关于以“060”开头的F…...

Qt 配置ASan
Qt 配置ASan 文章目录 Qt 配置ASan摘要关于ASan(AddressSanitizer)在Qt中配置 ASan1. 安装必要的工具2. 修改项目的 .pro 文件3. 重新构建项目4. 运行应用程序5. 分析错误报告示例注意事项 关键字: Qt、 ASan、 AddressSanitizer 、 GCC …...

MySQL常用操作命令大全
文章目录 一、连接与断开数据库1.1 连接数据库1.2 选择数据库1.3 断开数据库 二、数据库操作2.1 创建数据库2.2 查看数据库列表2.3 删除数据库 三、表操作3.1 创建表3.2 查看表结构3.3 修改表结构3.3.1 添加列3.3.2 删除列3.3.3 修改列数据类型 3.4 删除表 四、数据操作4.1 插入…...

有人物联的串口服务器USR-TCP232-410S基本测试通信和使用方案(485串口和232串口)
1.将 410S(USR-TCP232-410S,简称 410S 下同)的串口通过串口线(或USB 转串口线)与计算机相连接,通过网线将 410S 的网口 PC 的网口相连接,检测硬件连接无错误后,接入我们配送的电源适配器,给 410S 供电。观察指示灯状态…...

二维码登录的原理
二维码登录的原理: 二维码登录是一种基于移动设备和网络技术的便捷登录方式。其原理主要依赖于以下几个关键要素: 随机生成:服务器端随机生成一个具有唯一性和时效性的二维码。编码信息:这个二维码包含了特定的登录信息,例如用户标识、会话标识、时间戳等。扫描识别:用户…...
归并排序详解(递归与非递归)
归并排序是建立在归并操作上的一种有效算法。该算法是采用分治法的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列间断有序。若将两个有序表合并成一个有序表,成为二路归并。 一…...

计算机系统基础(二)
1.数值数据的表示 为什么采用二进制? 二进制只有两种基本状态,两个物理器件就可以表示0和1二进制的编码、技术、运算规则都很简单0和1与逻辑命题的真假对应,方便通过逻辑门电路实现算术运算 数值数据表示的三要素 进位记数制(十…...

vue根据文字长短展示跑马灯效果
介绍 为大家介绍一个我编写的vue组件 auto-marquee ,他可以根据要展示文本是否超出展示区域,来判断是否使用跑马灯效果,效果图如下所示 假设要展示区域的宽度为500px,当要展示文本的长度小于500px时,只会展示文本&…...

leetcode-21-回溯-全排列及其去重
一、[46]全排列 给定一个 没有重复 数字的序列,返回其所有可能的全排列。 示例: 输入: [1,2,3]输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], [3,2,1] ] 其中,不需要使用startIndex used数组,其实就是记录此时path里都有哪些元素…...

如何根据两个关键字查询报错日志的位置
1、查找两个关键字(无顺序要求) 如果你不关心这两个关键字出现的顺序,你可以使用egrep(等同于grep -E)或grep的-E选项来启用扩展正则表达式,并使用管道(|)来组合两个搜索模式。 gr…...

短视频预算表:成都柏煜文化传媒有限公司
短视频预算表:精打细算,打造高质量视觉盛宴 在数字时代,短视频以其独特的魅力迅速占领了互联网内容的半壁江山,成为品牌宣传、文化传播乃至个人表达的重要载体。然而,每一个成功的短视频背后,都离不开一份…...

【Llama 2的使用方法】
Llama 2是Meta AI(Facebook的母公司Meta的AI部门)开发并开源的大型语言模型系列之一。Llama 2是在其前身Llama模型的基础上进行改进和扩展的,旨在提供更强大的自然语言处理能力和更广泛的应用场景。 以下是Llama 2的一些关键特性和更新点&am…...

mysql-sql-第十三周
学习目标: sql 学习内容: 37.查询各科成绩最高分、最低分和平均分: 以如下形式显示:课程 ID,课程 name,最高分,最低分,平均分,及格率,中等率,优良率,优秀率 及格为>60,中等为:70-80,优良为:80-90,优秀…...

【Android】ViewPage2嵌套Fragment+SeekBar横向滑动冲突
问题描述 ViewPage2嵌套FragmentSeekBar,拖动SeekBar的进度条时,触发ViewPage2的滑动。 解决方案: 方案一:通过事件总线ViewPage2的isUserInputEnabled属性 子Fragment: class SeekBarFragment : Fragment() {priv…...