当前位置: 首页 > article >正文

提升开发运维效率:原力棱镜游戏公司的 Amazon Q Developer CLI 实践

引言

在当今快速发展的云计算环境中,游戏开发者面临着新的挑战和机遇。为了提升开发效率,需要更智能的工具来辅助工作流程。Amazon Q Developer CLI 作为亚马逊云科技推出的生成式 AI 助手,为开发者提供了一种新的方式来与云服务交互。

Amazon Q Developer CLI 是一个命令行工具,它让开发者可以在终端环境中使用生成式 AI 功能。通过自然语言交互和代码生成等特性,Amazon Q Developer CLI 可以帮助更高效地完成特定开发任务,减少重复性工作。开发者只需一句自然语言指令,便可完成原本需要数十个复杂命令才能实现的操作,从而真正实现”所想即所得”。

需要特别强调的是,尽管 Amazon Q Developer CLI 能够自动化许多复杂任务,但在生产环境中,开发者应始终对其生成的命令和代码进行审核后再执行。这种人为审核确保了安全性和准确性,尤其是在处理敏感资源或执行关键操作时,防止潜在的错误产生不可预见的后果。

原力棱镜游戏公司在研发和运维流程中全面引入了 Amazon Q Developer CLI,将其应用于复杂代码分析、策划数据表分析、基础设施搭建、线上排障、多云管理等多个环节,显著提升了开发效率和团队协作。在众多应用场景中,本文精选了两个具有代表性的案例进行详细介绍:Amazon EKS (Elastic Kubernetes Service) 研发联调类环境管理和助力游戏微信小程序转型。这些案例展示了 Amazon Q Developer CLI 如何帮助开发团队克服技术壁垒,加速业务创新。

Amazon Q Developer CLI 概述

Amazon Q Developer 是亚马逊云科技推出的生成式人工智能驱动的对话式助手,旨在帮助开发者理解、构建、扩展和操作亚马逊云科技应用程序。Amazon Q Developer CLI 是这一工具的命令行界面版本,专为喜欢在终端环境中工作的开发者设计。

Amazon Q Developer CLI 提供了多种功能,包括交互式聊天体验、自然语言到代码转换、代码生成与转换,以及工具权限管理等。它支持多种操作系统环境,安装过程简单直观,并与亚马逊云科技生态系统中的其他开发工具集成。

案例一:CLI 助力研发联调类环境快速交付

在游戏开发中,Kubernetes 常被用于容器编排,支持游戏服务的部署和扩展。传统上,创建和管理 EKS 集群是运维团队的专属工作,需要掌握大量 Kubernetes 相关命令和专业知识。原力棱镜游戏公司希望打破这一壁垒,让开发人员能够在需要时自主创建和管理资源,实现”随用随开”的灵活开发环境。

面临的背景和需求

作为一家游戏开发公司,原力棱镜团队经常需要为不同的项目和测试环境快速创建基础设施。以往这类需求需要提交工单给运维团队,通常会遇到以下问题:

  • 资源管理困难:临时环境的创建和销毁缺乏灵活性

  • 知识壁垒:大多数开发人员不熟悉 Kubernetes 的复杂概念和操作命令

团队曾考虑过采用自动化脚本或工具来解决这一问题,但传统自动化方案存在几个明显缺点:

  • 维护成本高:自动化脚本需要运维团队持续维护和更新

  • 缺乏灵活性:预设的自动化流程难以满足多变的项目需求

  • 学习曲线陡峭:开发人员仍需学习特定的配置语法和参数

原力棱镜希望找到一种方法,让不懂 Kubernetes 的开发人员也能够自主创建和管理所需的开发环境,而不必依赖专职运维团队或复杂的自动化流程。

Amazon Q Developer CLI 的应用

原力棱镜引入 Amazon Q Developer CLI,使开发人员可以通过自然语言交互直接创建和管理 EKS 集群。以下是一个典型的使用场景。

在这个示例中,开发人员使用了完全不含任何 Kubernetes 专业术语的简单描述,Amazon Q Developer CLI 能够理解意图并将其分解为具体的技术步骤。需要注意的是,在生产环境中,我们建议开发人员不要使用 /acceptall 指令让 CLI 自动执行所有任务,而是应该仔细审查每一条生成的命令,确保其符合预期后再手动执行。这样可以避免潜在的错误配置或安全风险。同时,我们也建议开发人员逐步学习相关的 Kubernetes 概念,如角色、节点组等,以便更好地理解和管理生产环境。虽然 CLI 可以帮助快速搭建测试环境,但在生产环境中,深入理解底层技术架构仍然是必要的。

传统 EKS 集群创建流程

在使用 Amazon Q Developer CLI 之前,创建 EKS 集群通常需要运维工程师按照亚马逊云科技官方最佳实践手动执行以下步骤:

1、准备 IAM 角色和权限

  • 创建 EKS 集群 IAM 角色

  • 附加必要的策略

  • 创建节点组 IAM 角色

  • 为节点组角色附加工作节点策略

2、网络配置

  • 规划 VPC 和子网

  • 配置安全组

  • 设置路由表

  • 创建和配置集群

3、使用 eksctl 或 AWS CLI 创建 EKS 集群

  • 等待集群创建完成

  • 配置 kubectl 认证

  • 添加节点组

4、创建节点组配置

  • 部署节点组

  • 验证节点就绪状态

这个过程不仅需要专业知识,还容易出错。而 Amazon Q Developer CLI 严格遵循 AWS 最佳实践,自动化地完成上述所有步骤,既保证了配置的正确性,又大大简化了操作流程。

使用自然语言描述需求

一位游戏开发人员(非 Kubernetes 专家)需要创建一个测试环境来部署新开发的游戏服务。在代码仓库切出了一个新的特性分支后,他需要立即测试这段代码的功能。他只需启动 Amazon Q Developer CLI 并输入一句简单的自然语言描述:

请帮我在东京地区创建eks集群,命名为lost2-battle,启动一个pod,pod配置4C8G,镜像在东京ECR仓库,volcanoforce/lost2_battle,版本:v1.0.3。services使用Internet-facing类型lb,对外开放80端口。nodegroup使用c5a.2xlarge机型。请在完成所有的创建后,在本地新建更新pod脚本。

图 1:开发人员使用自然语言请求创建 EKS 集群

自主完成集群创建与配置

Amazon Q Developer CLI 理解了这一需求,自动生成所需的命令和配置,并自动执行:

1、创建 EKS 集群角色

图 2:CLI 自动生成创建 EKS 角色的命令

在这一步中,CLI 自动识别出创建 EKS 集群的前置条件是需要一个具有正确权限的 IAM 角色。

2、创建 EKS 集群

图 3:CLI 生成 EKS 集群创建命令并执行

在生成 EKS 集群创建命令时,CLI 根据开发人员使用自然语言描述的 EKS 版本和亚马逊云科技区域选择合适的参数,无需开发人员查阅文档即可完成任务,并且这一过程是全自动的。

3、创建节点组

图 4:CLI 创建和配置节点组角色权限

节点组角色的创建通常需要理解复杂的 Amazon IAM 政策和权限系统。CLI 自动生成了所需的策略附加命令,并且自动执行。

图 5:CLI 创建节点组并监控进度

在创建节点组时,CLI 自动设置了开发人员要求的实例类型和节点数量,CLI 还主动等待操作完成,提供实时反馈。

4、创建 Pod 和 Service

图 6:CLI 自动生成并应用 Kubernetes 资源配置

CLI 自动编写并应用了 Kubernetes YAML 文件,省去了开发人员学习 Kubernetes 资源定义的时间。

5、生成更新容器镜像版本的 shell 脚本

图 7:CLI 生成容器镜像版本更新脚本

CLI 自动生成了一个shell脚本,用于更新容器镜像版本。这个脚本可以帮助开发人员在后续需要更新应用程序时,快速完成容器镜像的更新操作,无需手动编写复杂的 kubectl 命令。这种自动化脚本的生成大大简化了应用程序的维护工作。

6、检查集群状态

图 8:CLI 检查部署状态

CLI 自动定时轮训检查部署状态,直到部署完成。

7、生成任务总结和维护说明

图 9:操作总结和资源访问指南

最后,CLI 提供了完整的操作总结,包括所创建资源的概览、如何访问服务的说明,以及生成的 update_pod.sh 脚本使用说明。这个脚本可以让开发人员通过简单的命令行操作完成容器镜像的更新,无需手动编写复杂的 kubectl 命令。

自主完成集群删除

通过 Amazon Q Developer CLI 使用自然语言实现 EKS 集群的删除,整个过程也是自动的(开发人员事先输入了 /acceptall 指令,授权 CLI 自动执行全部任务),交互过程如下:

1、用自然语言与 Amazon Q Developer CLI 交互

注意:本示例中由于东京区域只有一个 EKS 集群,所以简单的描述就足够了。但在实际应用中,如果区域内有多个 EKS 集群,应该明确指定要删除的集群名称,例如”请帮我删除东京区域的 eks-demo 集群”,以避免误操作。

我在东京区域有个eks集群,请帮我删了

图 10:使用自然语言请求删除 EKS 集群

开发人员只需使用简单的自然语言请求删除集群,无需知道 EKS 资源之间的依赖关系和正确的删除顺序,这些复杂性由 CLI 自动处理。

2、删除 EKS 节点组,并等待删除完成

图 11:CLI 智能执行节点组删除操作

CLI 理解 EKS 资源之间的依赖关系,知道必须先删除节点组才能删除集群。它自动执行这一步骤,避免了因资源依赖关系导致的删除错误,这是缺乏经验的开发人员常犯的错误。

3、确认 EKS 节点组删除后,删除 EKS 集群

图 12:CLI 执行集群删除并提供进度反馈

CLI 智能地等待节点组完全删除后再删除集群,这种依赖关系的管理通常需要运维经验。同时,它还提供实时反馈,让开发人员了解操作进度。

4、等待 EKS 集群删除完成并进行任务总结

图 13:资源清理确认和操作总结

最后,CLI 确认所有资源已正确清理,防止资源泄漏导致的不必要费用产生。这种彻底清理的做法体现了良好的云资源管理实践。

这种方式使得开发人员无需了解底层的 Kubernetes 命令和概念,也能完成以前只有运维人员才能完成的任务。与固定的自动化脚本不同,CLI 能灵活应对各种场景需求,无需预先编写和维护大量脚本。开发人员只需用自然语言表达需求,就能获得定制化的环境。CLI 不仅能完成环境搭建,还能自动生成便于后续维护的工具脚本,比如用于更新容器镜像版本的 shell 脚本,这进一步降低了开发人员的操作门槛。这种”所想即所得”的体验,真正实现了”随需应变”。

通过赋能开发人员直接管理环境,原力棱镜实现了以下收益:

  • 加速开发流程:从提交工单到自助创建,环境准备时间从数天缩短到数小时。

  • 优化资源使用:开发人员可以在不需要时立即释放资源,节约成本。

  • 专注核心开发:开发人员可以更专注于游戏功能开发,而不是等待基础设施。

这一案例展示了 Amazon Q Developer CLI 如何赋能非专业运维人员完成复杂的云基础设施任务。企业仍应建立适当的权限和安全策略,确保开发人员创建的资源符合组织的安全标准和最佳实践。值得注意的是,上述测试环境案例中使用了 /acceptall 指令来自动执行命令,这适用于开发测试场景。但在生产环境中,强烈建议开发者逐条审核 CLI 生成的命令和配置后再执行,以确保万无一失。

案例二:CLI 助力游戏微信小程序转型

原力棱镜的某款热门游戏需要接入微信小程序生态以扩展用户群体,但面临微信小程序 30MB 包体限制的挑战。团队需要将数百 MB 的游戏资源放到 CDN 上通过异步形式加载,因此需要将大量 C# 代码由同步调用改为异步调用。这种转换通常是一项耗时且容易出错的任务。

面临的挑战

原力棱镜团队的 C# 游戏应用程序包含大量同步方法,移植到微信小程序平台需要解决以下问题:

  • 大量代码需要转换:应用程序中有几百个同步方法需要转换为异步实现。

  • 保持功能一致性:确保转换后的代码行为与原始代码相同。

  • 处理复杂依赖关系:许多方法之间存在复杂的调用关系和依赖。

  • 时间压力:为了赶上市场窗口期,需要在短时间内完成微信小程序版本的开发。

Amazon Q Developer CLI 如何辅助代码转换

团队使用 Amazon Q Developer CLI 来辅助这一转换过程:

1、自然语言请求代码转换

开发人员通过简单的自然语言请求,向 Amazon Q Developer CLI 描述了需求:

找到GuideNavigationContext.cs 然后里面有UIManager.CreateView的调用,我现在需要异步编程,所以我写了一个新的UIManager.CreateViewAsyncUniTask,我现在需要你帮我把GuideNavigationContext.cs里面的同步改异步,UniTask你可以从工程里找到,你试试吧

图 14:使用自然语言请求 C#代码转换

2、代码分析与转换建议

Amazon Q Developer CLI 分析了原始 C# 代码,并进行了转换。以下是代码转换前后的对比:

图 15:C#同步方法转异步方法示例

Amazon Q Developer CLI 先找到所有调用位置,参见下图:

图 16:CLI 找到所有调用方代码

接下来,Amazon Q Developer CLI 完成了对所有调用代码的调整,下图为其中一个示例:

图 17:调用方代码异步化改造

这一案例展示了 Amazon Q Developer CLI 如何辅助完成代码转换任务。尽管 Amazon Q Developer CLI 可以提供转换建议,但开发人员仍需要审核和测试转换后的代码,确保其正确性和性能。在某些复杂场景下,可能需要手动调整生成的代码。

总结与最佳实践

Amazon Q Developer CLI 将生成式 AI 的能力集成到命令行环境中,通过上述两个案例,可以看到它为原力棱镜游戏公司带来了多方面的业务价值:

  • 消除技术壁垒:让开发人员无需深入了解 Kubernetes 底层技术就能完成复杂任务,降低了技术门槛。

  • 加速业务创新:从研发环境快速交付到微信小程序转型,CLI 工具帮助团队快速响应业务需求和市场机会。

  • 降低成本:通过赋能开发人员自助服务,减少了环境等待时间和资源浪费,提高了整体研发效率。

  • 业务敏捷性提升:使团队能够快速适应业务变化(如拓展到微信小程序平台),进入新的用户市场。

  • 一句话完成复杂操作:以前需要编写数十行命令或复杂脚本的操作,现在只需一句自然语言指令即可完成,大幅降低了操作门槛。

  • 分支即环境:任何代码分支都可以立即拥有对应的测试环境,开发人员能够随时进行功能验证和联调测试。

与传统解决方案相比,Amazon Q Developer CLI 提供了独特的优势:

  • 相比人工操作:无需等待专家执行,避免了人员依赖,大幅减少了等待时间。

  • 相比自动化脚本:无需预先定义所有场景,能够灵活应对变化的需求,且无需维护大量脚本。

  • 相比低代码平台:更加灵活,可处理复杂场景,同时保持了接近原生命令的完整功能。

在使用 Amazon Q Developer CLI 时,推荐遵循以下最佳实践:

  • 明确表达意图:向 CLI 提供清晰、具体的需求描述,让 AI 更好地理解目标。

  • 迭代式交互:复杂任务可以分步实施,在每一步验证结果后再继续。

  • 审核生成的代码和命令:特别是在生产环境中,始终检查 Amazon Q Developer CLI 生成的内容。切勿在生产环境中使用 /acceptall 指令自动执行所有命令,而应当逐条审核确认,特别是对于可能影响生产服务或产生不可逆转更改的操作。

  • 建立治理机制:企业应建立适当的权限和安全策略,确保通过 CLI 创建的资源符合组织标准,并对生产环境中的 CLI 使用制定明确的审核流程和权限控制。

  • 持续学习:让团队在使用过程中积累经验,逐步掌握如何更有效地使用自然语言与 CLI 交互。

  • 生产环境安全第一:在生产环境中使用 Amazon Q Developer CLI 时,应遵循”先审核,后执行”的原则。可以先在非生产环境中验证命令的正确性,然后再将其应用到生产环境。

随着生成式 AI 技术的不断发展,Amazon Q Developer CLI 将继续进化,为开发者提供更强大的能力。通过合理利用这一工具,企业可以加速数字化转型,让团队聚焦于创造业务价值而非处理繁琐的技术细节。同时,保持对自动化操作的审慎态度,确保技术创新与运营安全的平衡。

资源链接

要开始使用 Amazon Q Developer CLI,请访问以下资源:

  • Amazon Q Developer 官方文档 – 全面了解 Amazon Q Developer 的功能和使用方法

  • Amazon Q Developer CLI 安装指南 – 详细的安装步骤和系统要求

  • Amazon Q Developer 定价 – 了解各种使用场景下的费用计算

通过利用这些资源,您可以更快地掌握 Amazon Q Developer CLI 并将其集成到您的开发工作流程中。随着 Amazon Q 能力的不断扩展,建议定期访问这些资源以了解最新更新和最佳实践。

*前述特定亚马逊云科技生成式人工智能相关的服务仅在亚马逊云科技海外区域可用,亚马逊云科技中国仅为帮助您了解行业前沿技术和发展海外业务选择推介该服务。

本篇作者

本期最新实验为《Agentic AI 帮你做应用 —— 从0到1打造自己的智能番茄钟》

✨ 自然语言玩转命令行,10分钟帮你构建应用,1小时搞定新功能拓展、测试优化、文档注释和部署

💪 免费体验企业级 AI 开发工具,质量+安全全掌控

⏩️[点击进入实验] 即刻开启 AI 开发之旅

构建无限, 探索启程!

相关文章:

提升开发运维效率:原力棱镜游戏公司的 Amazon Q Developer CLI 实践

引言 在当今快速发展的云计算环境中,游戏开发者面临着新的挑战和机遇。为了提升开发效率,需要更智能的工具来辅助工作流程。Amazon Q Developer CLI 作为亚马逊云科技推出的生成式 AI 助手,为开发者提供了一种新的方式来与云服务交互。 Ama…...

20250523-BUG-E1696:无法打开元数据文件“platform.winmd(已解决)

BUG:E1696:无法打开元数据文件“platform.winmd(已解决) 最近在用VisualStudio2022打开一个VisualStudio2017的C老项目后报了这个错,几经周折终于解决了,以下是我用的解决方法: 将Debug从Win32改…...

职业规划:动态迭代的系统化路径

1. 底层逻辑:构建职业规划的3大支柱 1.1 价值观锚定 1.1.1 生涯幻游法 通过想象理想生活的场景,包括工作环境、时间分配、人际关系、经济状态等,明确自己内心真正渴望的生活和工作状态,为职业规划提供方向指引。 1.1.2 价值观筛选 使用「价值观筛选卡」从30个常见职业价值…...

redisson-spring-boot-starter 版本选择

以下是更详细的 Spring Boot 与 redisson-spring-boot-starter 版本对应关系,按照 Spring Boot 主版本和子版本细分: 1. Spring Boot 3.x 系列 3.2.x 推荐 Redisson 版本:3.23.1(最新稳定版,兼容 Redis 7.x&#xf…...

Docker run -v 的 rw 和 ro 模式_docker ro

一、前言 在使用 Docker 启动容器时,通常需要将宿主机的文件或目录挂载到容器中,以便于管理配置、持久化数据和调试日志。本篇博客将重点介绍 -v/--volume 参数的使用方式、挂载权限(rw 与 ro)的区别,以及如何通过 do…...

CentOS相关操作hub(更新中)

CentOS介绍: CentOS(Community Enterprise Operating System)是基于 Red Hat Enterprise Linux(RHEL)源代码编译的开源企业级操作系统,提供与 RHEL 二进制兼容的功能 完全兼容 RHEL,可直接使用…...

@Column 注解属性详解

提示:文章旨在说明 Column 注解属性如何在日常开发中使用,数据库类型为 MySql,其他类型数据库可能存在偏差,需要注意。 文章目录 一、name 方法二、unique 方法三、nullable 方法四、insertable 方法五、updatable 方法六、column…...

基于 ESP32 与 AWS 全托管服务的 IoT 架构:MQTT + WebSocket 实现设备-云-APP 高效互联

目录 一、总体架构图 二、设备端(ESP32)低功耗设计(适配 AWS IoT) 1.MQTT 设置(ESP32 连接 AWS IoT Core) 2.低功耗策略总结(ESP32) 三、云端架构(基于 AWS Serverless + IoT Core) 1.AWS IoT Core 接入 2.云端 → APP:WebSocket 推送方案 流程: 3.数据存…...

unity在urp管线中插入事件

由于在urp下,打包后传统的相机事件有些无法正确执行,这时候我们需要在urp管线中的特定时机进行处理一些事件,需要创建继承ScriptableRenderPass和ScriptableRendererFeature的脚本,示例如下: PluginEventPass&#xf…...

前后端的双精度浮点数精度不一致问题解决方案,自定义Spring的消息转换器处理JSON转换

在 Java 中,Long 是一个 64 位的长整型,通常用于表示很大的整数。在后端,Long 类型的数据没有问题,因为 Java 本身使用的是 64 位的整数,可以表示的范围非常大。 但是,在前端 JavaScript 中,Lo…...

docker安装es连接kibana并安装分词器

使用Docker部署Elasticsearch、Kibana并安装分词器有以下主要优点: 1. 快速部署与一致性 一键式部署:通过Docker Compose可以快速搭建完整的ELK栈环境 环境一致性:确保开发、测试和生产环境完全一致,避免"在我机器上能运行…...

线性回归中涉及的数学基础

线性回归中涉及的数学基础 本文详细地说明了线性回归中涉及到的主要的数学基础。 如果数学基础很扎实可以直接空降博文: 线性回归(一)-CSDN博客 一、概率、似然与概率密度函数 1. 概率(Probability) 定义:概率是描述…...

如何计算VLLM本地部署Qwen3-4B的GPU最小配置应该是多少?多人并发访问本地大模型的GPU配置应该怎么分配?

本文一定要阅读我上篇文章!!! 超详细VLLM框架部署qwen3-4B加混合推理探索!!!-CSDN博客 本文是基于上篇文章遗留下的问题进行说明的。 一、本文解决的问题 问题1:我明明只部署了qwen3-4B的模型…...

PostgreSQL日常维护

目录 一:基本使用 1.登录数据库 2.数据库操作 2.1列出库 2.2创建库 2.3删除库 2.4切换库 2.5查看库大小 3.数据表操作 3.1 列出表 3.2创建表 3.3复制表 3.4删除表 4.模式操作命令 4.1创建模式 4.2默认模式 4.3删除模式 4.4查看所有模式 4.5 在指定…...

Attu下载 Mac版与Win版

通过Git地址下载 Mac 版选择对于的架构进行安装 其中遇到了安装不成功,文件损坏等问题 一般是两种情况导致 1.安装版本不对 2.系统权限限制 https://www.cnblogs.com/similar/p/11280162.html打开terminal执行以下命令 sudo spctl --master-disable安装包Git下载地…...

V2X协议|如何做到“车联万物”?【无线通信小百科】

1、什么是V2X V2X(Vehicle-to-Everything)即“车联万物”,是一项使车辆能够与周围环境实现实时通信的前沿技术。它允许车辆与其他交通参与者和基础设施进行信息交互。通过V2X,车辆不仅具备“远程感知”能力,还能在更大…...

【zookeeper】--部署3.6.3

文章目录 下载解压创建data和logs配置文件1)创建目录并且编辑 zoo.cfg2)接下来将 node01 的 ZooKeeper 所有文件拷贝至 node02 和 node03。推荐从 node02 和 node03 拷贝4)最后 vim /etc/profile 配置环境变量,环境搭建结束。配完环境变量后 source /etc…...

[测试_3] 生命周期 | Bug级别 | 测试流程 | 思考

目录 一、软件测试的生命周期(重点) 1、软件测试 & 软件开发生命周期 (1)需求分析 (2)测试计划 (3)测试设计与开发 (4)测试执行 (5&am…...

物联网(IoT)智能项目全景指南:技术构架、实现细节与应用实践

目录 一、物联网项目的核心组成和发展方向 1. 核心组成 2. 发展趋势 二、系统设计的详细流程 1. 需求分析与方案规划 2. 硬件方案深度设计 3. 软件架构设计 4. 方案示意图(架构图) 三、关键技术深度剖析 1. 传感器及其接口技术 2. 嵌入式MCU选…...

【Go】1、Go语言基础

前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言的特点 Go语言由Google团队设计,以简洁、高效、并发友好为核心目标。 具有以下优点: 语法简单、学习曲线平缓:语法关键字很少,且…...

RabbitMQ ⑤-顺序性保障 || 消息积压 || 幂等性

幂等性保障 幂等性(Idempotency) 是计算机科学和网络通信中的一个重要概念,指的是某个操作无论被执行多少次,所产生的效果与执行一次的效果相同。 应用程序的幂等性: 在应用程序中,幂等性就是指对一个系统…...

java基础知识回顾1(可用于Java基础速通)考前,面试前均可用!

目录 一、初识java 二、基础语法 1.字面量 2.变量 3.关键字 4.标识符 声明:本文章根据黑马程序员b站教学视频做的笔记,可对应课程听,课程链接如下: 02、Java入门:初识Java_哔哩哔哩_bilibili 一、初识java Java是美国 sun 公…...

云原生CICD-Tekton入门到精通

文章目录 一、Tekton介绍二、Tekton组件介绍三、执行流程四、安装Tekton管道五、安装Tekton Dashboard六、安装Tekton Cli七、运行单Task八、运行流水线九、在流水线中使用secret十、taskSpec、taskRef、pipelineRef、pipelineSpec使用pipelineRef与taskRef结合使用(推荐)pipel…...

CMake跨平台编译生成:从理论到实战

一、引言 在当今软件开发中,跨平台开发已成为常态。无论是需要在Windows、Linux、macOS等多操作系统上运行,还是在不同的硬件架构(如x86、ARM等)间部署,跨平台编译生成都是一个无法回避的关键问题。CMake,…...

MCP 协议传输机制大变身:抛弃 SSE,投入 Streamable HTTP 的怀抱

在技术的江湖里,变革的浪潮总是一波接着一波。最近,模型上下文协议(MCP)的传输机制就搞出了大动静,决定和传统的服务器发送事件(SSE)说拜拜,转身拥抱 Streamable HTTP,这…...

opencv 图像的平移和旋转

warpAffine函数讲解,图片可自行下载,也可用自己的图片 原图im 平移im_shifted 旋转im_rotated # 图像仿射变换 # 步骤: 读取图像 -> 创建仿射变换矩阵 -> 仿射变换计算 # 平移变换矩阵:一种写法,直接写死 # 旋转变…...

IDEA2025版本使用Big Data Tools连接Linux上Hadoop的HDFS

目录 Windows的准备 1. 将与Linux上版本相同的hadoop压缩包解压到本地 ​编辑2.设置$HADOOP HOME环境变量指向:E:\hadoop-3.3.4 3.下载hadoop.dll和winutils.exe文件 4.将hadoop.dll和winutils.exe放入$HADOOP HOME/bin中 IDEA中操作 1.下载Big Data Tools插件 2.添加并连…...

hysAnalyser特色的TS流编辑、剪辑和转存MP4功能说明

摘要 hysAnalyser 是一款特色的 MPEG-TS 数据分析工具,融合了常规TS文件的剪辑,转存功能,可用于平常的视频开发和测试。 本文详细阐述了对MPEG-TS 流的节目ID,名称,PID,时间戳,流类型&#xff…...

Day125 | 灵神 | 二叉树 | 二叉树中的第K大层和

Day125 | 灵神 | 二叉树 | 二叉树中的第K大层和 2583.二叉树中的第K大层和 2583. 二叉树中的第 K 大层和 - 力扣(LeetCode) 思路: 把每层的结果都放到一个vector数组里面,然后排序这个vector数组,返回第K大的元素即…...

Google机器学习实践指南(学习速率篇)

🔥Google机器学习核心概念精讲(学习速率) Google机器学习实战(7)-5分钟掌握学习速率。 学习速率:模型训练的关键超参数 学习速率是指在训练模型时用于梯度下降的一个标量。在每次迭代期间,梯度下降法都会将学习速率…...