云计算数据中心(三)

目录

    • 四、自动化管理
      • (一)自动化管理的特征
      • (二)自动化管理实现阶段
      • (三)Facebook自动化管理
    • 五、容灾备份
      • (一)容灾系统的等级标准
      • (二)容灾备份的关键技术
      • (三)云存储在容灾备份中的应用


四、自动化管理

在这里插入图片描述

(一)自动化管理的特征

  云自动化,即按需分配和收回服务器、存储、网络、应用程序。数据中心的管理需要资源的自动化调度和对业务的灵活响应,即需要单个业务能自治管理,也需要一个负责全局控制和协调的中心,对业务和资源进行统一监控、管理和调度。
  数据中心自动化管理应具有如下五个主要特征:全面的可视性、自动的控制执行、 多层次的无缝集成、综合与实时的报告和全生命周期支持。

在这里插入图片描述
  (1)全面的可视性。数据中心自动化软件利用自动发现功能建立对数据中心所有层次的全面可视性,获得数据中心从基础设施层、中间件和数据库层、应用层直到业务服务层跨各个层次的运行时视图,使得数据中心自动化软件能够全面掌握数据中心资产、 配置和各个层次依赖关系的现状,从而奠定自动完成各种功能的基础。
  (2)自动的控制执行。将自动化全面实施于数据中心的流程管理,提高实施信息技术基础架构库的成功率。
  (3)多层次的无缝集成。消除不同层次、不同组成部分间的各种障碍和间隙,完成连接所有数据中心和组成部分,流畅地自动执行在这些层次和组成部分间的各种处理流程,快速地协调数据中心内外的所有变更,实现端到端的流程管理。
  (4)综合与实时的报告。使用自动化管理工具提供具有全面综合和透视依赖关系的报告来提高管理水平。可通过建立集中的配置管理数据库,存储所需信息,简化报告的创建和产生,并确保完整性。
  (5)全生命周期支持。IT服务管理每个流程都强调周而复始的“计划一实施一检查一更正”,利用自动化策略和技术来实现支持整个IT流程生命周期,把数据中心自动化从静态的过程转变成动态的螺旋形发展过程。

在这里插入图片描述
  自动化管理一方面是对环境设备 (如供配电系统、冷却系统、消防系统等) 的智能监控系统,可实时动态呈现设备告警信息及设备参数,快速定位出故障设备,使维护和管理丛人工被动看守的方式向计算机集中控制和管理的模式转变。另一方面数据中心在采用虚拟化技术降低物理成本的同时,会提升运维成本,使IT管理更加复杂,需要使用统一的资源可视化来管理虚拟化网络的相关信息,同时自动化管理能自动监测虚拟机的创建和迁移,并确保网络设置随着迁移,真正把虚拟机的优势发挥出来。所有基础架构实现虚拟化并以服务的形式交付,数据中心的管理和控制由软件驱动,通过数据中心统一管理软件达到对数据中心设备、网络、服务、客户的智能化统一管理。

(二)自动化管理实现阶段

  由于资金、效率等问题,实现自动化管理不可能一蹴而就,自动化管理通常须经历三个阶段。
  第一阶段:IT服务操作。这一阶段主要是监控和管理IT基础设施的广义集合,如网络、服务器、应用和相关的存储设备。
  第二阶段:IT服务管理。这一阶段会制定一系列的设施间的交互和协作处理,确保IT服务符合标准规范。
  第三阶段:数据中心自动化。这一阶段的时间和精力主要是维护IT环境,定制、检查和执行服务层协议。
  IT服务操作的目标是生成有效的全局IT支撑架构,提高IT服务质量,对活动和过进行协调和执行。活动和过程包括事故管理,事件监控和管理、问题管理。
  一旦IT操作机构能监控和管理基础设施,下一步重点就是IT服务管理。通常IT服务管理是处理IT技术部门与其客户间的交互信息。Forrester将IT服务管理定义为根据客户需求的服务层次确保IT服务质量的一系列过程。IT服务管理通常包含了促进服务提高的方法,如IT基础架构库 (Information Technology Infrastructure Library, ITIL) 将配置管理、失效管理、容量和性能管理、安全管理和计费管理流程进行了简化。IT服务管理通常由4个主题范围所组成:服务管理、服务层管理、IT资产管理和财务管理。
  目前,IT将75%的预算用在持续经营和维护上,一个主要原因就是缺少自动化工作机制。数据中心混合了硬件、软件和工作处理等各种方法,简化了IT操作。数据中心自动化在概念上位于IT服务操作和IT服务管理流程之间,减少了IT服务操作团队的工作量,因而提高了效率,降低了人为错误。第一个自动化工具是执行配置为中心任务的产品,如服务器配置和软件分发。在这样的自动化工具中,配置管理数据库 (Configuration Management DataBase, CMDB) 的存在是重要的,它能存储配置数据并衡量实时改变。自动化发展的下一个变化就是操作管理流程的自动化,IT流程自动化工具有两种类型:一种提供通用的IT流程自动化,如BMC的RealOps、HP的iConchude;另一种关注具体流程。
  数据中心自动化的最关键成功因素是其基础服务和支持流程都已到位。在最低限度上,一个公司想要采用数据中心自动化工具必须具备下列条件。
  (1)管理系统。支持各类IT管理软件,能管理、监控、探测、识别和解决IT设施的异常行为。
  (2)定义过程。一套基本明确定义的流程并能运作良好,应包括事件管理、变更管理、配置管理和版本管理。
  (3)认知非自动化过程的成本。为了计算引入自动化的成本节约,必须知道非自动化过程的成本,避免为了自动化而自动化。
  (4)内部流程资源。在初始配置时可使用外部资源,但是在后续的维护中,使用内部资源是更节约且有效的。

(三)Facebook自动化管理

在这里插入图片描述
  Facebook在OCP项目硬件管理中对设备自动化管理给出了具体规则,硬件管理主要关注四个方面的内容:

  • 固件的生命周期:提供一个统一界面独立地对固件的二进制文件和配置进行部署和更新
  • 事件告警和日志:对产生的机器事件和日志消息进行格式统一
  • 远程管理:远程控制机器配置和执行系统操作,并打开一个远程控制台
  • 策略技术:遵循和鼓励有潜在利益的产品和标准,探索未来的开放计算规范

  Facebook推出了数据中心基础设施管理 (DCIM) 项目,以及一个全新的集群规划系统用于将所有数据都可视化。这个一体化管理软件能够将温度、湿度等户外信息与整栋建筑的能耗,以及CPU存储和内存方面的数据进行综合分析和管理。该管理软件包含自开发的软件,如CYBORG可自动检测服务器问题进行修复。服务器的设计坚持“可服务性”原则,如在主板的设计上,为了节约能源,像PCIe通道、PCI通道、USB接口、SATA/SAS端口等很少用到的功能都被直接禁用。BIOS同样经过严格调整,以确保系统功耗始终处于最低水平。根据规范要求,BIOS还在设定方面做出了有针对性的修改,进而使各组件以特定的速度及功率运转。主板上配有五个热敏元件,负责监测CPU、PCH、输入接口及输出接口的温度。若侦测到温度过高,这些元件还会自动控制风扇转速,以确保冷却效果与运行状态相吻合。大厅里的一个监视器,就能告诉你数据中心的状态,以及制冷系统是否正常工作,如图所示。一体化管理软件减少了工程师设计数据中心性能优化方案的时间,从过去的12小时缩短到半个小时。

在这里插入图片描述
  Facebook拥有世界上最大的MySQL数据库集群,其中包含了成千上万台服务器, 这些服务器分布在跨越两个大洲的多个数据中心里。Facebook采用MySQL Pool Scanner (MPS) 系统对MySQL数据库集群进行管理,所有任务几乎全部自动化,MPS是一个大部分用Python写的复杂状态机。它能够代替DBA执行很多例行任务,并且可以很少或不施加人为干预就能执行批量维护工作。
  Amazon采用StarCluster实现服务器集群管理自动化,StarCluster开源工具可通过在Amazon弹性云计算 (EC2) 中自动化运行众多的烦琐程序,使服务器集群的创建和管理工作得到显著简化,且耗时更少。StarCluster软件可以让用户使用简单的命令行程序创建服务器集群。服务器集群中包含了一台单个的主服务器、多台工作服务器以及弹性块存储 (EBS) 卷。当你输入一个创建服务器集群的命令时,StarCluster会完成如下工作:
  (1)初始化虚拟机实例;
  (2)配置一个新的安全组;
  (3)定义一个用户友好的主机名(如node001);
  (4)创建一个非管理员的用户账号;
  (5)为密码登录配置SSH;
  (6)定义跨集群的网络文件系统(NFS)文件共享;
  (7)配置Oracle网格引擎排队系统以实现跨服务器集群的任务管理。

五、容灾备份

  容灾备份是通过在异地建立和维护一个备份存储系统,利用地理上的分离来保证系统和数据对灾难性事件的抵御能力。

在这里插入图片描述
在这里插入图片描述
  数据中心的容灾备份系统主要用两个技术指标来衡量:数据恢复点目标 (Recovery Point Objective, RPO) 和恢复时间目标 (Recovery Time Objective, RTO)。RPO主要指的是业务系统所能容忍的数据丢失量,RTO主要指的是所能容忍的业务停止服务的最长时间,也就是从灾难发生到业务系统恢复服务功能所需要的最短时间周期。

(一)容灾系统的等级标准

  数据数据中心容灾与备份主要涉及两个标准:国际标准SHARE78和我国的国家标准GB/T 20988—2007。SHARE78将数据容灾与备份系统的安全等级分为7级,我国的国家标准将其分为6级,其对应关系见下表。

在这里插入图片描述

(二)容灾备份的关键技术

  备份是容灾的基础,是为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其他的存储介质的过程。在建立容灾备份系统时会涉及多种技术,目前,国际上比较成熟的灾备技术包括SAN/NAS技术、远程镜像技术、虚拟存储、基于IP的SAN的互连技术以及快照技术等。

1. 远程镜像技术

  远程镜像技术在主数据中心和备援中心之间的数据备份时用到。镜像是在两个或多个磁盘或磁盘子系统上产生同一个数据的镜像视图的信息存储过程,一个叫主镜像系统,另一个叫从镜像系统。按主从镜像存储系统所处的位置可分为本地镜像和远程镜像。远程镜像又叫远程复制,是容灾备份的核心技术,同时也是保持远程数据同步和实现灾难恢复的基础。
  远程的数据复制是以后台同步的方式进行的,这使本地系统性能受到的影响很小,传输距离长 (可达1000km以上),对网络带宽要求小。但是,许多远程的从属存储子系统的写没有得到确认,当某种因素造成数据传输失败,可能出现数据一致性问题。为了解决这个问题,目前大多采用延迟复制的技术 (本地数据复制均在后台日志区进行),即在确保本地数据完好无损后进行远程数据更新。

2. 快照技术

  远程镜像技术往往同快照技术结合起来实现远程备份,即通过镜像把数据备份到远程存储系统中,再用快照技术把远程存储系统中的信息备份到远程的磁带库、光盘库中。
  快照是通过软件对要备份的磁盘子系统的数据快速扫描,建立一个要备份数据的快照逻辑单元号LUN和快照Cache。在快速扫描时,把备份过程中即将要修改的数据块同时快速复制到快照Cache中。在正常业务进行的同时,利用快照LUN实现对原数据的一个完全的备份,大大增加系统业务的连续性,为实现系统真正的7×24运转提供了保证。快照是通过内存作为缓冲区 (快照Cache),由快照软件提供系统磁盘存储的即时数据映像,它存在缓冲区调度的问题。

3. 基于IP的SAN的远程数据容灾备份技术

  它是利用基于IP的SAN的互连协议,将主数据中心SAN中的信息通过现有的TCP/IP网络,远程复制到备援中心SAN中。当备援中心存储的数据量过大时,可利用快照技术将其备份到磁带库或光盘库中。这种基于IP的SAN的远程容灾备份,可以跨越LAN、MAN和WAN,成本低、可扩展性好,具有广阔的发展前景。基于IP的互连协议包括FCIP、iFCP、Infiniband、iSCSI等。

4. 数据库复制技术

  如果需要将数据库复制到另外一个地方,必须满足以下重要指标:数据必须实时、数据必须准确、数据必须可在线查询、数据复制具有独立性、数据复制配置简单、数据复制便于监控。Spanner是谷歌公司研发的可扩展、多版本、全球分布式、同步复制数据库。它是第一个把数据分布在全球范围内的系统,并且支持外部一致性的分布式事务。Spanner是一个可扩展、全球分布式的数据库,是在谷歌公司设计、开发和部署的。在最高抽象层面,Spanner就是一个数据库,把数据分片存储在许多Paxos状态机上,这些机器位于遍布全球的数据中心内。复制技术可以用来服务于全球可用性和地理局部性。客户端会自动在副本之间进行失败恢复。随着数据的变化和服务器的变化,Spanner会自动把数据进行重新分片,从而有效应对负载变化和处理失败。Spanner被设计成可以扩展到几百万个机器节点,跨越成百上千个数据中心,具备几万亿数据库行的规模。应用可以借助于Spanner来实现高可用性,通过在一个洲的内部和跨越不同的洲之间复制数据,保证即使面对大范围的自然灾害时数据依然可用。
  Spanner的主要工作,就是管理跨越多个数据中心的数据副本。尽管有许多项目可以很好地使用BigTable,但BigTable无法应用到一些特定类型的应用上面,比如具备复杂可变的模式,或者对于在大范围内分布的多个副本数据具有较高的一致性要求。谷歌的许多应用已经选择使用Megastore,主要是因为它的半关系数据模型和对同步复制的支持,尽管Megastore具备较差的写操作吞吐量。由于上述多个方面的因素,Spanner己经从一个类似Big Table的单一版本的键值存储,演化成为一个具有时间属性的多版本的数据库。数据被存储到模式化、半关系的表中,数据被版本化,每个版本都会自动以提交时间作为时间戳,旧版本的数据会更容易被垃圾回收。应用可以读取旧版本的数据。Spanner支持通用的事务,提供了基于SQL的查询语言。作为一个全球分布式数据库,Spanner提供了几个有趣的特性。
  第一,在数据的副本配置方面,应用可以在一个很细的粒度上进行动态控制。应用可以详细规定,哪些数据中心包含哪些数据,数据距离用户有多远 (控制用户读取数据的延迟),不同数据副本之间距离有多远 (控制写操作的延迟),以及需要维护多少个副本 (控制可用性和读操作性能)。数据也可以被动态和透明地在数据中心之间进行移动,从而平衡不同数据中心内资源的使用。
  第二,Spanner有两个重要的特性,很难在一个分布式数据库上实现,即Spanner提供了读和写操作的外部一致性,以及在一个时间戳下面的跨越数据库的全球一致性的读操作。这些特性使得Spanner可以支持一致的备份、一致的MapReduce执行和原子模式变更,所有都在全球范围内实现,即使存在正在处理中的事务也可以。之所以可以支持这些特性,是因为Spanner可以为事务分配全球范围内有意义的提交时间戳,即使事务可能是分布式的。这些时间戳反映了事务序列化的顺序。除此以外,这些序列化的顺序满足了外部一致性的要求:如果一个事务T1在另一个事务T2开始之前就已经提交了,那么,T1的时间戳就要比T2的时间戳小。Spanner是第一个可以在全球范围内提供这种保证的系统。实现这种特性的关键技术就是一个新的True Time API及其实现。这个API可以直接暴露时钟不确定性,Spanner时间戳的保证就是取决于这个API实现的界限。如果这个不确定性很大,Spanner就降低速度来等待这个大的不确定性结束。谷歌的簇管理器软件提供了一个True Time API的实现。这种实现可以保持较小的不确定性 (通常小于10ms),主要是借助于现代时钟参考值 (比如GPS和原子钟)。

(三)云存储在容灾备份中的应用

  云存储是指通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统。
  在存储系统内通过容错数据布局提高存储系统的数据可用性,当前的分布式存储系统如Amazon S3、Google等文件系统为了保证数据的可靠性,都默认采用3-Replicas的数据备份机制。在存储层级,主机故障完全由其文件系统 (如Google的GFS) 处理。 在云数据中心运用服务器虚拟化技术、存储虚拟化技术等实现跨数据中心的资源自动接管及移动,实现服务器虚拟化和网络虚拟化的无缝融合。
  Google的所有在线应用(包括Gmail,Google Calendar,Google Docs,以及Google Sites等)均采用了数据同步复制技术。
  (1)Google的一个数据中心支撑着数百万用户,因此,每个用户分摊的成本相对低很多。
  (2)Google的备用数据中心并不是在灾难发生时才启用,而是一直在使用中,Google始终在这些数据中心之间进行平衡,保证没有资源浪费。
  (3)Google的数据中心之间有自己的高度连接网络,保证数据快速传送。

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

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

相关文章

NXP i.MX8系列平台开发讲解 - 3.19 Linux TTY子系统(二)

专栏文章目录传送门:返回专栏目录 Hi, 我是你们的老朋友,主要专注于嵌入式软件开发,有兴趣不要忘记点击关注【码思途远】 目录 1. Linux 串口驱动 1.1 Uart 驱动注册流程 1.2 uart 操作函数 1.3 line discipline 2. Linux tty应用层使用…

Windows安装部署MySQL8.0

1.版本及下载 1.版本介绍: Alpha 版:开发版,公司内部使用 Beta 版:完成开发后,用户体验版 RC 版:生产环境发布之前的一个小版本或称候选版 GA 版:正式发布版本(咱们要用的&…

代码随想录算法训练营Day26 | 491.递增子序列 | 46.全排列 | 47.全排列 II | 332.重新安排行程 | 51.N皇后 | 37.解数独

今日任务 491.递增子序列 题目链接&#xff1a; https://leetcode.cn/problems/non-decreasing-subsequences/description/题目描述&#xff1a; Code class Solution { public:vector<vector<int>> findSubsequences(vector<int>& nums) {vector&l…

SSE(Server Sent Event)实战(2)- Spring MVC 实现

一、服务端实现 使用 RestController 注解创建一个控制器类&#xff08;Controller&#xff09; 创建一个方法来创建一个客户端连接&#xff0c;它返回一个 SseEmitter&#xff0c;处理 GET 请求并产生&#xff08;produces&#xff09;文本/事件流 (text/event-stream) 创建…

leetcode145. 二叉树的后序遍历,递归法+迭代法,全过程图解+步步解析,一点点教会你迭代法后序遍历

leetcode145. 二叉树的后序遍历&#xff0c;递归法迭代法 给你一棵二叉树的根节点 root &#xff0c;返回其节点值的 后序遍历 。 示例 1&#xff1a; 输入&#xff1a;root [1,null,2,3] 输出&#xff1a;[3,2,1] 示例 2&#xff1a; 输入&#xff1a;root [] 输出&#…

vue、js截取视频任意一帧图片

html有本地上传替换部分&#xff0c;可以不看 原理&#xff1a;通过video标签对视频进行加载&#xff0c;随后使用canvas对截取的视频帧生成需要的图片 <template> <el-row :gutter"18" class"preview-video"><h4>视频预览<span&…

LabVIEW电路产品功能自动检测系统

开发基于LabVIEW的电路产品功能自动检测系统。该系统通过整合先进的硬件和软件技术&#xff0c;实现了电路产品的自动化测试&#xff0c;显著提高了测试效率和准确性&#xff0c;对于提升电子产品的可靠性和工作效率具有重要意义。 项目背景 在电子制造业中&#xff0c;电路产…

PyCharm查看文件或代码变更记录

背景&#xff1a; Mac笔记本上有一个截图的定时任务在运行&#xff0c;本地Python使用的是PyCharm IDE&#xff0c;负责的同事休假&#xff0c;然后定时任务运行的结果不符合预期&#xff0c;一下子不知道问题出现在哪里。 定位思路&#xff1a; 1、先确认网络、账号等基本的…

git使用以及理解

git练习网站 Learn Git Branching git操作大全Oh Shit, Git!?! git commit git branch name git merge bugFix 合并俩个分支 git rebase main git checkout headgit switch head 会导致HEAD分离 &#xff0c;就是指head->HEAD->c1 相对引用 ------------------- …

测试面试宝典(十四)—— 你觉得软件测试的核心竞争力是什么?

回答一&#xff1a; 软件测试的核心竞争力在于其能够保障软件产品的质量和可靠性。 首先&#xff0c;测试人员需要具备敏锐的观察力和细致入微的分析能力&#xff0c;能够在复杂的系统中发现潜在的缺陷和问题。例如&#xff0c;在测试一款电商平台时&#xff0c;不仅要关注订…

Apache AGE的MATCH子句

MATCH子句允许您在数据库中指定查询将搜索的模式。这是检索数据以在查询中使用的主要方法。 通常在MATCH子句之后会跟随一个WHERE子句&#xff0c;以添加用户定义的限制条件到匹配的模式中&#xff0c;以操纵返回的数据集。谓词是模式描述的一部分&#xff0c;不应被视为仅在匹…

【TDA4板端部署】基于 Pytorch 训练并部署 ONNX 模型在 TDA4

1 将torch模型转onnx模型 Ti转换工具只支持以下格式&#xff1a; Caffe - 0.17 (caffe-jacinto in gitHub) Tensorflow - 1.12 ONNX - 1.3.0 (opset 9 and 11) TFLite - Tensorflow 2.0-Alpha 基于 Tensorflow、Pytorch、Caffe 等训练框架&#xff0c;训练模型&#xff1a;选择…

多多OJ评测系统 前端项目环境初始化 安装Vue脚手架 引入Arco Design组件

目录 确定环境 命令行输入 装一下脚手架 监测一下是否安装成功 创建一个项目 选择一系列的配置后 我们打开webStorm 配置脚手架后我们先运行 我们这边能获取到网址 其实我们脚手架已经帮我们做到了 接下来要引入相关的组件 选择用npm进行安装 我们建议的是完整引入…

姓名配对测试源码

源码简介 姓名配对测试源码&#xff0c;输入两人姓名即可测试缘分&#xff0c;可查看朋友到底喜欢谁的趣味源码。 自己手动在数据库里修改数据&#xff0c;数据库里有就会优先查询数据库的信息&#xff0c; 没设置的话第一次查询缘分都是非常好的 95-99&#xff0c;第二次查…

Spring Web MVC(常用的注解@RequestMapping,@RequestParam,@RequestBody等)

一、Spring MVC spring的启动类 启动类是看这个 SpringBootApplication 注解&#xff0c;而不是 类的名字 这个注解在哪&#xff0c;哪个类就是启动类 1.MVC思想 举例 二、Spring MVC mvc 是一种思想&#xff0c;而spring mvc是对mvc思想的一种实现。全称是 spring web mvc…

pytorch学习(四)绘制loss和correct曲线

这一次学习的时候静态绘制loss和correct曲线&#xff0c;也就是在模型训练完成后&#xff0c;对统计的数据进行绘制。 以minist数据训练为例子 import torch from torch import nn from torch.utils.data import DataLoader from torchvision import datasets from torchvisi…

Prometheus智能化监控介绍

Prometheus智能化监控介绍 官方网站特点&#xff1a;样本 Prometheus组件Prometheus工作流程Prometheus和zabbix对比分析Prometheus的几种部署模式Prometheus的四种数据类型CounterGaugehistogram为什需要用histogram柱状图&#xff1f; summary Prometheus对kubernetes的监控介…

文献阅读:tidyomics 生态系统:增强组学数据分析

文献介绍 文献题目&#xff1a; The tidyomics ecosystem: enhancing omic data analyses 研究团队&#xff1a; Stefano Mangiola&#xff08;澳大利亚沃尔特和伊丽莎霍尔医学研究所&#xff09;、Michael I. Love&#xff08;美国北卡罗来纳大学教堂山分校&#xff09;、Ant…

C#开发:PowerDesigner建表和Navicat导入数据

一、打开Powerdesigner&#xff0c;新建一个模型&#xff0c;点击ok 二、用工具面板拖拽出一个数据表 &#xff08;如果没有工具面板&#xff0c;请在如下操作中开启&#xff09; 三、双击刚刚的拖拽出来的表&#xff0c;设计表的字段&#xff0c;可以添加注释说明 【备注】…

基于Vue CLI 3构建Vue3项目(Vue2也可参考)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…