【DevOps】在云原生时代的角色与重要性探索

news2025/4/22 7:39:39

🐇明明跟你说过:个人主页

🏅个人专栏:《未来已来:云原生之旅》🏅

🔖行路有良友,便是天堂🔖

目录

一、引言

1、什么是云原生

2、云原生的核心特性

3、什么是DevOps

4、DevOps的理念与原则

4.1、DevOps的理念

4.2、DevOps的原则

二、云原生环境概述

1、云原生的关键技术栈

1.1、容器化(Docker等) 

1.2、微服务架构

1.3、持续集成/持续部署(CI/CD)

2、云原生带来的变革

三、DevOps在云原生环境中的核心角色

1、文化融合者:促进开发与运维的紧密合作

2、流程优化者:实现CI/CD自动化流程

3、质量保障者:提高软件质量与稳定性


一、引言

1、什么是云原生

云原生是一种现代化的应用开发和部署方法,旨在充分利用云计算的优势。它帮助企业更快、更灵活地构建和运行应用程序。

云原生的基本概念
想象你在搭建一个乐高城堡。传统的方法是把所有的乐高块都粘在一起,一旦你想改动一个部分,就必须拆掉很大一部分,甚至整个城堡。这就是传统应用开发的方式,所有东西都紧紧地连在一起,一旦有改动或更新,整个系统都需要调整。

而云原生的方式则像是把乐高块分成了独立的小模块,每个模块都可以单独拿出来修改或替换,而不会影响整个城堡的其他部分。这样,你可以快速地调整和扩展你的城堡,也更容易修复出现的问题。

2、云原生的核心特性

1. 可伸缩性

  • 动态扩展:根据需求自动扩展或收缩资源,以适应不同负载。
  • 按需分配:使用资源池和弹性伸缩,按需分配计算资源。


2. 弹性

  • 自动恢复:具备自我修复能力,能够自动检测和恢复故障。
  • 高可用性:通过冗余和分布式架构,确保服务持续可用。


3. 自动化

  • CI/CD:持续集成和持续部署,使得代码变更能够快速、安全地发布到生产环境。
  • 基础设施即代码:使用脚本或配置文件来管理和配置基础设施。


4. 微服务架构

  • 独立部署:应用被分解为多个小型、独立的服务,每个服务可以独立开发、部署和扩展。
  • 松耦合:服务之间通过API进行通信,降低了系统的复杂度和依赖性。


5. 容器化

  • 环境一致性:使用容器技术(如Docker),确保开发、测试和生产环境的一致性。
  • 资源隔离:容器提供资源隔离,增强安全性和稳定性。


6. 无服务器架构

  • 按需执行:函数或服务在需要时执行,减少闲置资源浪费。
  • 管理简化:云提供商管理基础设施,开发者专注于业务逻辑。


7. 分布式存储和计算

  • 高效处理大数据:利用分布式存储和计算技术(如Hadoop、Spark),高效处理大规模数据。
  • 数据冗余和分片:通过数据冗余和分片,提高数据的可用性和访问速度。


8. 服务网格

  • 服务发现:自动发现和连接服务,简化服务间的通信。
  • 负载均衡:在服务之间自动进行负载均衡,提高系统性能。

3、什么是DevOps

DevOps是“开发(Development)”和“运维(Operations)”的结合。它是一种工作方式,通过更好的协作和自动化来提升软件开发和运维的效率和质量。

通俗解释
想象一下,开发人员和运维人员就像是在厨房里做菜的两拨人:

  • 开发人员:负责创新和创造新的菜肴。他们不断尝试新的食谱和做法。
  • 运维人员:负责确保菜肴顺利出炉并送到餐桌上。他们关注的是如何快速、安全地提供这些菜肴。


传统上,这两拨人可能各干各的,很少交流。开发人员做好了新菜,却没有告诉运维人员怎么摆盘和送菜,这样就容易出问题。

DevOps 就是要把这两拨人紧密结合在一起,让他们像一个团队一样工作:

  1. 共同目标:他们有共同的目标,不再是“我做好菜,你送菜”,而是“我们一起做好菜并顺利送到餐桌上”。
  2. 协作和沟通:他们会经常交流,分享各自的想法和需求。开发人员会告诉运维人员新的菜肴怎么做,运维人员也会告诉开发人员哪些做法可以让出菜更快更稳。
  3. 自动化:为了提高效率,他们会用各种工具来自动化一些重复的工作。比如,使用一个自动搅拌机来加快混合材料的速度,或者用一个定时器来确保每道菜都能在最佳时间上桌。

  

​编辑 

实际生活中的例子
假设你是一家在线商店的老板:

  • 开发人员会开发新功能,比如添加一个新的购物车系统。
  • 运维人员会确保这个新功能在高峰期也能正常工作,不会因为访问量大而崩溃。

 在DevOps的工作方式下: 

  • 开发人员会在开发新功能时,就考虑到运维人员的需求,比如性能优化和安全性。
  • 运维人员会参与到开发过程中,提供反馈和建议,比如提醒开发人员某些操作会增加服务器的负载。


DevOps的好处

  1. 更快的交付:新功能可以更快地上线,因为开发和运维之间没有了障碍。
  2. 更高的质量:通过自动化测试和监控,可以更早发现并修复问题。
  3. 更高的灵活性:可以更快地响应市场变化和用户需求。

总结来说,DevOps就是通过更好的协作和自动化,让开发和运维团队像一个团队一样工作,从而更快、更好地交付软件。 

   

4、DevOps的理念与原则

4.1、DevOps的理念

1. 协作与沟通:

  • 打破开发(Development)和运维(Operations)之间的壁垒。
  • 促进跨团队的协作,确保双方共同工作,实现共同目标。


2. 持续集成和持续交付(CI/CD):

  • 持续集成:开发人员频繁地将代码提交到版本控制系统,并通过自动化测试确保每次提交都是可用的。
  • 持续交付:代码在通过测试后自动部署到生产环境中,以实现频繁的小规模发布。


3. 自动化:

  • 自动化一切可能的过程,从代码测试、构建到部署,以减少人为错误和提高效率。
  • 使用自动化工具进行环境配置、监控和基础设施管理。

4.2、DevOps的原则

1. 客户中心的行动(Customer-Centric Action):

  • 一切工作都应围绕最终用户的需求展开。
  • 快速响应用户反馈和市场需求,提升用户体验。


2. 端到端责任(End-to-End Responsibility):

  • 团队对软件从开发到生产的整个生命周期负责,包括开发、测试、部署和维护。
  • 推动全栈技能,团队成员具备多方面的知识和能力。


3. 持续改进(Continuous Improvement):

  • 持续学习和改进,通过定期评审和反馈循环,不断优化流程和工具。
  • 运用精益思维,消除浪费,提升效率。

   

二、云原生环境概述

1、云原生的关键技术栈

1.1、容器化(Docker等) 

容器化技术是云原生架构的核心组成部分。它使得应用程序及其所有依赖项可以被封装在一个独立的单元中,从而实现跨环境的一致性和可移植性。

容器化的基本概念
容器:

  • 容器是一种轻量级的、独立的运行环境,它封装了应用程序及其所有依赖项(如库、配置文件等),确保在不同的环境中运行时具有一致的行为。
  • 与虚拟机相比,容器共享宿主操作系统的内核,从而更加轻量级,启动速度更快,占用资源更少。


镜像(Image):

  • 镜像是容器的模板,是一个只读的打包文件,包含了运行应用程序所需的一切。
  • 可以通过Dockerfile来定义镜像内容,通过构建生成镜像。


Docker:

  • Docker是一个开源的容器化平台,它简化了应用程序的创建、部署和运行过程。
  • Docker提供了一套完整的工具和API来管理容器,包括镜像构建、容器运行、网络配置等。

  
Docker的核心组件
Docker Engine:

  • Docker Engine是一个C/S(客户端/服务器)架构的应用,客户端向服务器发送请求,服务器负责构建、运行和管理Docker容器。
  • 主要包括Docker Daemon(守护进程)、Docker CLI(命令行工具)和REST API接口。


Dockerfile:

  • Dockerfile是一个文本文件,包含了一系列指令,用于定义镜像的构建过程。
  • 每一条指令在执行后会创建一个新的镜像层,从而构成镜像的多层架构。


Docker Hub:

  • Docker Hub是一个公共的注册中心,用于存储和分发Docker镜像。
  • 用户可以从Docker Hub拉取公共镜像,也可以将自己的镜像推送到Docker Hub。

   

1.2、微服务架构

微服务架构是云原生应用的核心组成部分,它通过将应用程序拆分为一系列小型的、独立的服务,使得系统更具灵活性和可扩展性。

微服务架构的基本概念
微服务:

  • 微服务是一个独立的服务,围绕业务能力进行构建,可以独立开发、部署和维护。
  • 每个微服务通常只完成一个特定的功能,如用户管理、订单处理、支付系统等。


松耦合:

  • 微服务之间是松散耦合的,通过明确的接口进行通信,通常使用RESTful API或消息队列。
  • 这种松耦合使得各个微服务可以独立地演进和扩展,而不会影响其他服务。


微服务架构的核心特性
独立部署:

  • 每个微服务可以独立部署,不依赖于其他服务的部署周期。
  • 这提高了开发效率和发布频率,减少了发布风险。


业务能力划分:

  • 微服务架构基于业务能力划分,每个微服务专注于一个特定的业务功能。
  • 这种划分方式使得团队能够专注于特定领域,提高了开发的专注度和效率。


微服务架构的实现技术
服务发现与注册:

  • 服务发现机制允许微服务动态地注册和查找其他服务,常用的服务注册和发现工具有Consul、Eureka和Zookeeper。
  • 服务注册中心存储所有可用的服务实例,并提供服务发现的功能。


负载均衡:

  • 负载均衡器在多个服务实例之间分配请求,以提高系统的响应速度和可靠性。
  • 常用的负载均衡工具有Nginx、HAProxy和Ribbon。

1.3、持续集成/持续部署(CI/CD)

持续集成(CI)持续部署(CD)是现代软件开发中的两种重要实践,它们帮助开发团队更快、更可靠地发布代码。

持续集成(CI)
持续集成的意思是,开发人员频繁地把他们的代码合并到一个共享的代码库中,然后对这些合并的代码进行自动化的构建和测试。

比喻:
想象一下,一个大型拼图游戏,很多人一起拼一副很大的拼图。如果每个人都拼自己的部分,等到最后才把所有部分拼在一起,你会发现有很多不匹配的地方,需要花费大量时间来调整。

持续集成就像每个人在拼好一小部分后,马上把这部分拼图放到整体的拼图上,然后检查是不是合适。如果有问题,立刻调整。这就确保了拼图始终是完整和一致的,任何问题都能及时发现和解决。

持续部署(CD)
持续部署则是指,代码一旦通过了所有测试,就会自动部署到生产环境,也就是用户能够实际使用的环境中。

比喻:
继续拼图的比喻,当我们拼好了几块拼图后,我们不仅要检查它们是否合适,还要马上展示给观众看(就像发布给用户使用)。如果每拼好一块都及时展示,我们可以迅速得到观众的反馈,知道哪里需要改进。

持续部署就是在代码通过测试后,自动地把最新的功能发布给用户。这就意味着开发团队可以更快地发布新功能和修复 bug,而不用等到某个特定的发布周期。

CI/CD 的好处

  1. 更快的反馈:开发人员可以快速知道他们的代码是否有问题,并立即进行修复。
  2. 更高的代码质量:通过频繁的自动测试,确保每次合并的代码都是可用的,减少了 bug 的数量。
  3. 更快的交付:通过自动化部署,功能和修复可以更快地交付给用户,缩短了从开发到发布的时间。

 

2、云原生带来的变革

1. 更快的开发和部署
传统方式:
想象一下,你在做一顿大餐,每次准备食材、烹饪和清理都需要花费很长时间。同样,传统的软件开发和部署流程很慢,从开发到部署可能需要数周甚至数月。

云原生方式:
云原生就像是使用一台高效的料理机器人,可以快速地准备和烹饪食材。开发人员可以快速编写、测试和部署代码,几分钟或几小时内就能把新功能发布给用户。

2. 弹性和扩展性
传统方式:
传统的应用程序像是一台固定大小的机器,一旦负载过高,它就会崩溃。如果突然有很多用户访问,服务器可能会承受不住。

云原生方式:
云原生应用程序就像一个弹性游泳池,用户多的时候可以自动扩展,用户少的时候可以缩小。这是因为云原生应用程序使用容器和微服务,可以根据需求动态调整资源。

3. 更高的可靠性
传统方式:
传统的应用程序部署在固定的服务器上,如果服务器出问题,整个应用程序都会受影响。

云原生方式:
云原生应用程序像是一个多引擎飞机,即使一个引擎故障,其他引擎仍能正常工作。通过微服务架构,应用程序被分成多个小服务,即使一个服务出问题,其他服务仍能继续运行。

4. 更好的资源利用
传统方式:
传统方式下,服务器资源经常会被浪费,比如在低峰期,服务器仍然在运行但利用率很低。

云原生方式:
云原生就像是一个智能能源管理系统,可以根据需求自动调节电力使用。它使用容器和编排工具(如 Kubernetes),可以更高效地利用计算资源,按需分配和回收资源,减少浪费。

5. 自动化和持续交付
传统方式:
传统的软件开发和部署过程需要大量的手动操作,容易出错且效率低下。

云原生方式:
云原生采用 CI/CD 管道,就像是一条自动化生产线,所有步骤从代码编写到部署都是自动化的。这意味着更少的人工干预,更高的速度和一致性。

 

三、DevOps在云原生环境中的核心角色

1、文化融合者:促进开发与运维的紧密合作

1. 打破壁垒,促进合作
传统方式:

  • 想象一个大厨房,厨师(开发人员)和服务员(运维人员)分工明确但互不沟通。厨师只负责做菜,服务员只负责端菜。因为缺乏沟通,经常会出现菜品迟到或出错的问题。

DevOps 方式:

  • DevOps 就像是一个厨师兼服务员的角色,打破了厨师和服务员之间的壁垒。厨师和服务员一起合作,既能确保菜品质量,又能及时送到客人手中。开发人员和运维人员在一起工作,共同负责从代码编写到部署的整个流程,确保高效和质量。

2. 共同目标,增强责任感
传统方式:

  • 在传统的开发和运维模式中,开发团队的目标是快速交付新功能,而运维团队的目标是保持系统的稳定性。两个团队的目标有时会冲突,导致互相指责。

DevOps 方式:

  • DevOps 让开发和运维团队拥有共同的目标:快速且稳定地交付高质量的软件。这就像是一场接力赛,所有队员的目标都是让接力棒顺利传递到终点。通过共同的目标,增强了团队的责任感和合作精神。

3. 自动化,提高效率
传统方式:

  • 传统方式中,许多任务需要手动操作,比如代码部署、环境配置等,既耗时又容易出错。

DevOps 方式:

  • DevOps 强调自动化,使用自动化工具和脚本来完成重复性的任务,就像是使用自动洗碗机代替手洗碗碟。自动化不仅提高了效率,还减少了人为错误,使得系统更加可靠。

 

2、流程优化者:实现CI/CD自动化流程

  • 集成团队:DevOps通过集成开发、测试和运维团队,打破了传统软件开发中的壁垒,促进了团队之间的协作和沟通。
  • 自动化流程:DevOps通过实现CI/CD自动化流程,减少了人工干预和错误,提高了软件交付的速度和质量。
  • 持续改进:DevOps强调持续改进和反馈循环,通过不断收集用户反馈和监控数据,对软件进行迭代和优化。

 

3、质量保障者:提高软件质量与稳定性

1. 持续监控和反馈
传统方式:

  • 上线后的系统运行状态依赖手动监控,问题发现晚,解决慢。

DevOps 方式:

  • DevOps 使用自动化监控工具实时监控系统的运行状态,及时发现和处理问题,并提供反馈。这就像是在车间安装了实时监控摄像头,任何异常都会立即报警并采取措施。Prometheus、Grafana 和 ELK Stack(Elasticsearch、Logstash、Kibana)是常用的监控和日志分析工具。

2. 蓝绿部署和金丝雀发布
传统方式:

  • 大版本发布时风险高,难以及时发现和解决潜在问题。

DevOps 方式:

  • 蓝绿部署通过同时运行两个版本的应用程序(一个旧版本,一个新版本),切换流量到新版本来验证其稳定性;金丝雀发布通过逐步增加新版本的流量来测试和验证其性能。这就像是餐馆新推出一道菜,先给少部分顾客试吃,再逐步推广给所有顾客。

💕💕💕每一次的分享都是一次成长的旅程,感谢您的陪伴和关注。希望这些关于云原生的文章能陪伴您走过技术的一段旅程,共同见证成长和进步!😺😺😺

🧨🧨🧨让我们一起在技术的海洋中探索前行,共同书写美好的未来!!! 

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

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

相关文章

c++获取用户的输入并格式化

一行单个数据 string str; cin>>str;一行固定多个且空格隔开 int n, m; cin >> n >> m;在输入时&#xff0c;会自动做格式装换。 一行不固定多个且空格隔开 #include <sstream> #include <string>string str; getline(cin, str); stringstr…

FFmpeg开发笔记(四十五)使用SRT Streamer开启APP直播推流

SRT Streamer是一个安卓手机端的开源SRT协议直播推流框架&#xff0c;可用于RTMP直播和SRT直播。SRT Streamer支持的视频编码包括H264、H265等等&#xff0c;支持的音频编码包括AAC、OPUS等等&#xff0c;可谓功能强大的APP直播框架。 相比之下&#xff0c;另一款APP直播框架RT…

【系统架构设计师】九、软件工程(软件开发生命周期|McCabe度量法|系统转换|系统维护|净室软件工程|基于构件的软件工程)

目录 九、软件开发生命周期和工具 十、McCabe度量法 十一、系统转换 11.1 遗留系统 11.2 系统转换 11.3 系统维护 十二、净室软件工程 十三、基于构件的软件工程 13.1 构件特征 13.2 构件模型要素 13.3 CBSE过程 13.4 构件组装 相关推荐 历年真题练习 九、软件开…

Django项目创建的基本准备工作【4】

【 一 】软件开发模式 官话下面 人话 瀑布开发就是将什东西都定义好了在进行开发对吧 敏捷就是进行模块化一样 分批进行 规定一个时间段完成什么样的功能。 总结来说&#xff0c;瀑布开发强调在项目开始之前进行详细的计划和准备&#xff0c;并按照预定的顺序逐步进行&#x…

Elasticseach学习

概念 是一个开源的分布式搜索引擎&#xff0c;可以应用于搜索、日志监控等 倒排索引 正向索引&#xff1a;基于文档id创建索引。查询词条时必须先找到文档&#xff0c;而后判断是否包含词条 倒排索引&#xff1a;对文档内容分词&#xff0c;对词条创建索引&#xff0c;并记录…

前端面试题44(JavaScript几种排序的变种或高级应用)

1. 快速排序的变种 三轴快排 (Three-Way QuickSort)&#xff1a;处理大量重复元素时更为高效&#xff0c;通过维护三个区域来避免重复元素的重复比较和交换。平衡快排 (Balanced QuickSort)&#xff1a;通过随机选取或使用中位数作为枢轴&#xff0c;以减少最坏情况下的性能退…

重命名文件的方法有哪些?重命名文件的工具有哪些?

在日常的计算机使用过程中&#xff0c;重命名文件是一项常见但至关重要的任务。无论是为了更好地组织文件、修复命名错误&#xff0c;还是简化文件管理流程&#xff0c;掌握正确的重命名方法和工具都能显著提升效率。 本文将探讨多种重命名文件的方法&#xff0c;同时介绍几款高…

传言称 iPhone 16 Pro 将支持 40W 快速充电和 20W MagSafe

目前&#xff0c;iPhone 15 和 iPhone 15 Pro 机型使用合适的 USB-C 电源适配器可实现高达 27W 的峰值充电速度&#xff0c;而 Apple 和授权第三方的官方 MagSafe 充电器可以高达 15W 的功率为 iPhone 15 机型进行无线充电。所有四款 iPhone 15 机型均可使用 20W 或更高功率的电…

ArduPilot开源飞控之AP_Mount_Siyi

ArduPilot开源飞控之AP_Mount_Siyi 1. 源由2. 框架设计2.1 类和继承2.2 公共方法2.3 保护方法2.4 私有成员和方法2.5 解析状态2.6 重要成员变量 3. 重要方法3.1 AP_Mount_Siyi::init3.2 AP_Mount_Siyi::update3.3 AP_Mount_Siyi::read_incoming_packets3.4 AP_Mount_Siyi::proc…

linux登入提示信息

目录 1.Linux 登录提示信息在操作系统中扮演着重要的角色 安全性提醒 欢迎信息 系统状态通知 政策和使用条款 技术支持信息 更新和变更通知 2.配置文件介绍 3.编辑配置文件 4.效果展示 修改前 修改后 目录 1.Linux 登录提示信息在操作系统中扮演着重要的角色 安…

vue 数据类型

文章目录 ref 创建&#xff1a;基本类型的响应式数据reactive 创建&#xff1a;对象类型的响应式数据ref 创建&#xff1a;对象类型的响应式数据ref 对比 reactive将一个响应式对象中的每一个属性&#xff0c;转换为ref对象(toRefs 与 toRef)computed (根据计算进行修改) ref 创…

Go语言---并发编程以及资源竞争(goroutine、runtime)

并发和并行 并行(parallel):指在同一时刻&#xff0c;有多条指令在多个处理器上同时执行。 并发(concurrency):指在同一时刻只能有一条指令执行,但多个进程指令被快速的轮换执行&#xff0c;使得在宏观上具有多个进程同时执行的效果&#xff0c;但在微观上并不是同时执行的&a…

华为HCIP Datacom H12-821 卷34

1.单选题 防火墙默认已经创建了一些安全区域,以下哪一个安全区域不是防火墙上默认存在的? A、Trust B、DMZ C、Internet D、Local 正确答案&#xff1a; C 解析&#xff1a; 防火墙默认情况下为我们提供了三个安全区域&#xff0c;分别是 Trust、DMZ和Untrust 2.判断题 …

8. Python3 pandas数据分析处理库

11.1 pandas的数据结构 pandas的数据结构如下图所示&#xff1a; pandas的几种数据结构有内在联系&#xff0c;可以吧DataFrame看作Series的容器&#xff0c;把Panel看作DataFrame的容器。可以像操作字典那样在这些数据结构中插入或者移除数据对象。在介绍这些数据结构之前&am…

力扣-dfs

何为深度优先搜索算法&#xff1f; 深度优先搜索算法&#xff0c;即DFS。就是找一个点&#xff0c;往下搜索&#xff0c;搜索到尽头再折回&#xff0c;走下一个路口。 695.岛屿的最大面积 695. 岛屿的最大面积 题目 给你一个大小为 m x n 的二进制矩阵 grid 。 岛屿 是由一些相…

【Git基本操作】添加文件 | 修改文件 | 及其各场景下.git目录树的变化

目录 1. 添加文件&add操作和commit操作 2. .git树状目录的变化 3. git其他操作 4. 修改文件 4.1 git status 4.2 git diff 1. 添加文件&add操作和commit操作 add操作&#xff1a;将工作区中所有文件的修改内容 添加进版本库的暂存区中。commit操作&#xff1a;…

TortoiseSVN-VisualSVNServer-软件代码文本资源版本控制管理-版本比较及差异文件

文章目录 1.VisualSVNServer安装2.TortoiseSVN安装2.1.检出2.2.提交资源2.3.更新资源2.4.返回版本2.5.比较软件可更改2.6.在此创建版本库3.TortoiseSVN版本差异文件1.VisualSVNServer安装 从官网下载,或者csdn下载链接: https://download.csdn.net/download/m0_67316550/8952…

Python酷库之旅-第三方库Pandas(015)

目录 一、用法精讲 37、pandas.read_sql函数 37-1、语法 37-2、参数 37-3、功能 37-4、返回值 37-5、说明 37-6、用法 37-6-1、数据准备 37-6-2、代码示例 37-6-3、结果输出 38、pandas.DataFrame.to_sql函数 38-1、语法 38-2、参数 38-3、功能 38-4、返回值 …

Python酷库之旅-第三方库Pandas(016)

目录 一、用法精讲 39、pandas.DataFrame.to_stata函数 39-1、语法 39-2、参数 39-3、功能 39-4、返回值 39-5、说明 39-6、用法 39-6-1、数据准备 39-6-2、代码示例 39-6-3、结果输出 40、pandas.read_stata函数 40-1、语法 40-2、参数 40-3、功能 40-4、返回…

Gmail邮件提醒通知如何设置?有哪些方法?

Gmail邮件提醒通知功能怎么样&#xff1f;通知邮件怎么有效发送&#xff1f; Gmail作为全球广泛使用的电子邮件服务&#xff0c;提供了多种邮件提醒通知功能&#xff0c;帮助用户不错过重要信息。AokSend将详细介绍如何设置Gmail邮件提醒通知&#xff0c;确保您不会错过任何重…