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

MCP简介:重构人机交互底层逻辑

在人工智能技术飞速发展的今天,大语言模型(LLM)的应用场景正不断拓展,但模型与外部系统之间的连接方式却成为制约其潜力发挥的关键瓶颈。为了解决这一难题,由AI领域顶尖公司Anthropic(Claude模型背后的开发团队)于2024年11月重磅推出的Model Context Protocol(MCP,模型上下文协议),正在为AI应用的开发打开新的可能。作为一种全新的开源通信协议,MCP以标准化的方式定义了AI模型与外部数据、工具之间的交互规范,为开发者构建更智能、更具交互能力的AI应用提供了通用接口。这一创新性协议的出现,标志着人工智能与现实世界交互方式即将进入一个新的阶段,也为开发者创造更多可能性。

什么是 MCP?我们为什么需要它?

MCP(模型上下文协议)是一种标准化的通信协议,专为 AI 工具(如聊天机器人、代码助手、AI Agent 等)与外部系统的集成而设计。它为 AI 引入了“使用工具”的能力框架,使其不仅能理解自然语言,还能主动调用系统资源、访问数据或执行操作。

MCP Server 的出现,正在重塑 AI 的能力边界,使其从单纯的对话机器演化为能够完成实际任务的智能助手。在 MCP 出现之前,开发者若希望让 AI 工具访问 Gmail、Google Drive 或天气 API 等外部系统,通常需要为每个集成单独编写定制逻辑,硬编码对每一个 API 的连接方式。这不仅增加了开发成本,也阻碍了 AI 工具的可扩展性与通用性。 MCP 为模型与系统之间的通信建立统一标准,降低接入门槛、提升开发效率,正如 HTTP 之于 Web 应用,支撑起智能系统互联互通。

总的来说,MCP 把过去“一个模型对一个系统”的烟囱式集成,变成了“多模型对多能力”的标准化连接网络。这是推动 AI 工具平台化和生态化的关键一步。

可以将MCP视为AI领域的"万能适配器",就像蓝牙技术能够将手机无线连接到耳机、键盘、智能家居等各类设备那样,MCP构建了一个通用协议层,让不同架构的AI模型可以无缝接入数据库、传感器、API接口等多元化资源,实现即插即用的智能化协作。

MCP 架构

MCP 的属于客户端-服务器架构模式,其中 MCP 客户端(如:Claude Desktop、IDE 或其他 AI 工具)可以连接到多个 MCP 服务器,MCP 服务器可以安全访问你的计算机本地文件、数据库、远程服务(外部系统)等。

MCP 就是对 AI 能力的扩展,我们可以通过标准化的接口将 AI 应用连接到各种数据源和工具,从而扩展 AI 的功能,比如:

  • MCP 可以让 AI 应用读取我们的数据库里面的数据。
  • MCP 可以让 AI 应用自动调用本地浏览器进行操作。

有了 MCP,AI 就不止于它现有的能力,还可以开发任意属于自己的 MCP,让 AI 应用更有价值。

MCP采用客户端-服务器架构,多个服务可以连接到任何兼容的客户端。客户端可以是Claude Desktop、IDE或其他AI工具,服务器则充当适配器,暴露数据源。

MCP通过Client、Host、Server将大模型与外部交互抽象成了“客户端-服务器”架构。任何支持 MCP 的 AI 应用(MCP Host)均可直接配置并使用应用市场的MCP Server(官方、三方),无需预编码适配,类似于 USB 设备插入即用。当LLM需要完成特定任务时,可以像“即插即用”般调用这些模块,实时获得精准的上下文支持,从而实现能力的弹性扩展。
 

MCP 其实是Prompt Engineering 发展的产物。大模型是 AI 应用的大脑,Prompt 则负责给大模型指引和参考资料。使用 Prompt Engineering 加速大模型应用的落地是如今的主流做法。具体而言,结构化的 Prompt 可以给大模型提供:

• 额外的参考资料,如使用 RAG、联网搜索来增强大模型的回复。

• 调用工具的能力,从而实现 Agent。如提供文件操作工具、爬虫工具、浏览器操作工具(Manus使用的Brower Use)。

MCP通信机制

本地通信时采用标准输入输出,远程通信则通过SSE进行

这两种通信方式中的消息,都采用了JSON格式进行消息传输,使MCP通信过程能够标准化,并带来了可扩展性。

调用流程图:

  1. 用户发送消息:用户通过客户端应用程序发送一条消息。
  2. 客户端传递消息:客户端将用户的消息传递给 LLM。
  3. LLM 请求工具或数据:LLM 可能需要额外的工具或数据来处理请求,因此向客户端发出请求。
  4. 客户端向 MCP 服务器请求:客户端根据 LLM 的需求,通过 MCP 协议向 MCP 服务器发送请求。
  5. MCP 服务器访问数据源:MCP 服务器根据请求访问相应的数据源。
  6. 数据源返回数据:数据源将所需的数据返回给 MCP 服务器。
  7. MCP 服务器返回工具或数据:MCP 服务器将获取到的工具或数据返回给客户端。
  8. 客户端提供工具或数据给 LLM:客户端将工具或数据传递给 LLM。
  9. LLM 返回处理结果:LLM 使用提供的工具或数据生成处理结果,并返回给客户端。
  10. 客户端显示最终结果:客户端将 LLM 的处理结果展示给用户。

MCP 的调用机制需要客户端、MCP服务端、LLM 三方配合。

比如一个查询天气的 Spring Boot 应用,按照官方标准实现具体的服务接口,在本地启动。

将服务在客户端进行配置,就像在注册中心注册一样,通常是启动命令,例如 npx 或者java,意思就是客户端打开后,在本地同时启动MCP服务。例如下面这个配置文件内容,配置了两个服务,一个用 Java 实现的,一个是 Node。

MCP与Function Call

Function Call本质上是某些大模型(如 GPT-4)提供的专有能力,允许 AI 通过结构化请求调用外部工具(例如查询天气、执行计算)。宿主应用收到请求后执行操作并返回结果。其核心是模型厂商内部的功能扩展接口,无统一标准,实现依赖特定厂商。

回顾 Function call或者RAG,都需要手工地执行工具检索、手工地将信息加入到 prompt 中,prompt 本身也需要精心地手工设计。尤其是不同大模型的Function call遵循不同的调用结构和参数格式,彼此之间基本无法互通。


 


 

MCP的爆发源于它击中了Prompt Engineering的核心矛盾——动态意图理解与静态工具调用之间的割裂。传统开发模式下,Function call需要开发者预先编写工具调用逻辑、设计Prompt模板、手动管理上下文,这一过程不仅效率低下,还导致AI应用难以规模化。

MCP 的核心优势在于统一了各家大模型原本差异化的 Function Calling 标准,形成通用协议。它不仅支持 Claude,还能兼容市面上几乎所有主流大模型,堪称 AI 领域的“USB-C 接口”。基于标准化通信规范(如 JSON-RPC 2.0),MCP 解决了模型与外部工具、数据源间的兼容性问题,开发者只需按协议开发一次接口,即可被多模型调用。

也是由于两者都能实现与外部数据的联动,MCP在刚问世时,开发者常纠结“它是Function Call的简化版,还是AI交互的HTTP标准?”但随着生态发展,MCP相比Function Call的开放性优势逐渐被认知的更加清晰:

1、Function Call的“私有协议困局”,类似手机厂商的私有快充协议,主流AI厂商各自定义封闭的调用协议(JSON Schema、Protobuf等),导致开发者为不同平台重复开发适配逻辑。切换AI服务商时,工具调用体系需“推倒重来”,跨平台成本高企,拖慢AI能力的规模化落地。

2、MCP通过统一通信规范和资源定义标准,MCP让开发者“一次开发,全平台通用”——同一工具可无缝适配GPT、Claude等不同模型。这如同AI世界的“书同文、车同轨”,终结“重复造轮子”的窘境。

3、Function Call仍是高频轻量任务的“王者”:它像模型的“贴身助手”,也是 MCP 协议链接各方的基础,运行时直接调用(如快速计算、简单查询),响应极快。

4、MCP则擅长“复杂任务外包”:模型像“指挥官”下达需求(如抓取网页),MCP Server作为“快递员”按需响应,通过HTTP/SSE协议“送货上门”,全程无需开发者手动干预。


MCP的出现让Function Call们不得不“卷”起来——推动工具调用更标准化、更便捷。

Function Call是AI的“即时小助手”,MCP是“按需响应的快递员”——两者更好的模式是协同发展。

Function Call代表“代码控”思维:开发者需精细控制工具细节;而MCP转向“意图派”模式:开发者只需定义能力边界,具体执行由大模型动态决策。两者并存,让开发者既能享受高频任务的高效,又能解锁复杂场景的灵活性。

MCP具备哪些优势:

1.一致性:以后不管是访问本地资源(数据库、文件、服务),还是访问远程资源(如Slack、GitHub API),都能用同一个协议

2.全面性:而且支持的数据形式非常多样,包括文件内容、数据库记录、API响应、实时系统数据、屏幕截图和图像、日志文件等,基本上覆盖了所有类型。

3.安全性:MCP服务器还内置了安全机制,允许服务器自己控制资源,不用把API密钥交给大模型。

MCP 的核心价值在于:让用户为不可控的 Agent 添加工具。例如在使用 Claude Desktop、Cursor 等应用时,普通用户无法修改底层 Agent 的代码,但通过 MCP 协议就能为其扩展新工具。

未来展望

MCP“万能插头”优势让开发AI应用进一步解耦,大大降低了技术门槛,让“人人都是AI开发者”变得触手可及。

AI厂商

技术重心从工具适配转向协议兼容。MCP协议如同AI领域的“通用插座”,使得模型厂商只需确保与协议标准的兼容性,就能自动接入所有MCP生态工具。例如OpenAI通过支持MCP协议,其模型无需单独开发接口即可调用GitHub、Slack等数千种工具服务。这种转变让大模型厂商能够专注于核心算法优化,而非重复开发工具适配层。


工具开发者

MCP实现了“一次开发、全生态通用”的技术普惠。开发者将功能封装为MCP Server后,就能被所有兼容协议的AI应用调用。如PostgreSQL官方开发的数据库Server已被500多个AI应用集成,而无需针对每个模型单独适配。这让所有应用都找到了快速AI化的路径,就像十几年前“所有行业都值得用互联网重做一遍”一样;现在,所有产品都值得做一次MCP适配改造。

应用开发者

MCP打破了技术能力的边界,并加速交互范式从GUI(图形界面)向LUI(语言界面)的跃迁。通过协议标准化,开发者无需理解底层技术细节即可组合各类资源:教育机构用自然语言指令调用多语种资料库生成定制教案,零售企业通过语音指令整合ERP系统和AI模型管理库存。MCP的协议兼容性使得自然语言交互可直接映射到具体功能实现,例如腾讯地图MCP Server支持用户用“找附近人均200元的川菜馆”等口语化指令完成复杂搜索,替代传统GUI中的多级菜单操作。这种转型在制造业尤为显著——某工厂工程师通过语音指令调度MCP连接的设备集群,响应速度比传统工控界面提升5倍。

LUI开发效率的革命性提升

■ 传统GUI困境:需为不同平台(Web/iOS/Android)开发独立界面组件,维护成本占开发资源的60%;

■ MCP+LUI优势:开发者只需用自然语言描述功能需求(如生成周报图表),MCP自动匹配数据库查询、可视化工具等Server,并通过协议标准化输出结果。

MCP对交互层的解耦正在重构人机交互的底层逻辑。就像iPhone用触摸屏取代键盘,MCP协议通过统一的功能调用标准,使自然语言成为连接用户意图与系统能力的“终极接口”,标志着AI发展进入生态竞争新阶段。它构建了智能时代的“数字神经系统”,其价值不仅在于统一的功能调用标准,更在于开创了开放协作的新范式,让模型、工具、数据在统一协议下自由流动

相关文章:

MCP简介:重构人机交互底层逻辑

在人工智能技术飞速发展的今天,大语言模型(LLM)的应用场景正不断拓展,但模型与外部系统之间的连接方式却成为制约其潜力发挥的关键瓶颈。为了解决这一难题,由AI领域顶尖公司Anthropic(Claude模型背后的开发…...

LangChain缓存嵌入技术完全指南:CacheBackedEmbedding原理与实践(附代码示例)

一、嵌入缓存技术背景与应用场景 1.1 为什么需要嵌入缓存? 算力消耗问题:现代嵌入模型(如text-embedding-3-small)单次推理需要约0.5-1秒/文本 资源浪费现状:实际业务中约30%-60%的文本存在重复计算 成本压力&#…...

国产DPU芯片+防火墙,能否引领网络安全新跨越?

近日,国内首款搭载国产DPU芯片的800Gbps下一代防火墙——中科网威NSFW - 12000正式发布,引发行业广泛关注。 国产DPU芯片与防火墙的结合,正在推动网络安全领域实现技术突破与体系升级。以下从技术特性、应用场景和产业价值三个维度分析其引领…...

Spark-SQL与Hive的连接及数据处理全解析

Spark-SQL与Hive的连接及数据处理全解析 在大数据处理领域,Spark-SQL和Hive都是重要的工具。今天就来聊聊Spark-SQL如何连接Hive以及相关的数据处理操作。 Spark-SQL连接Hive有多种方式。内嵌Hive虽然使用简单,直接就能用,但在实际生产中…...

ArcGIS Desktop使用入门(四)——9版本与10版本区别

系列文章目录 ArcGIS Desktop使用入门(一)软件初认识 ArcGIS Desktop使用入门(二)常用工具条——标准工具 ArcGIS Desktop使用入门(二)常用工具条——编辑器 ArcGIS Desktop使用入门(二&#x…...

使用 chromedriver 实现网络爬虫【手抄】

1、引用 selenium 包 <dependency><groupId>org.seleniumhq.selenium</groupId><artifactId>selenium-java</artifactId><version>4.29.0</version> </dependency> <dependency><groupId>org.seleniumhq.seleniu…...

ERROR: Unknown host CPU architecture: arm64

1、先检查NDK版本是否支持arm64&#xff0c;NDK版本21.3以上 2、检查gradle中&#xff0c;有关NDK版本是否设置arm64-v8a 例如&#xff1a; ndkVersion "21.4.7075529"ndk {abiFilters "armeabi-v7a","arm64-v8a"} local.properties中&#x…...

从 SQL2API 到 Text2API:开启数据应用开发的新征程

在技术革新浪潮的席卷下&#xff0c;数据应用开发领域正经历着深刻变革。曾经&#xff0c;构建数据 API 需要开发者具备扎实的数据库知识和编程技能&#xff0c;手动编写复杂的 SQL 查询与 API 代码&#xff0c;这一过程不仅耗时费力&#xff0c;还将众多非技术人员阻挡在数据应…...

OpenCv高阶(四)——角点检测

一、角点检测 在计算机视觉中&#xff0c;角点检测是识别图像中局部区域&#xff08;角点&#xff09;的关键技术&#xff0c;这些区域通常是两条或多条边缘的交点&#xff0c;具有丰富的结构信息&#xff0c;常用于图像匹配、跟踪、三维重建等任务。 Harris角点检测算法是一…...

centos8 部署 openstack

在 CentOS 8 上部署 OpenStack 是一个复杂的过程&#xff0c;涉及多个组件的安装和配置。OpenStack 是一个开源的云计算平台&#xff0c;它提供了基础设施即服务&#xff08;IaaS&#xff09;的功能。下面我将指导你通过基本的步骤来部署 OpenStack。 前提条件 系统要求&#…...

智能云图库-8-AI编辑

一、基础图片编辑​ 需求分析​ 在日常的图片管理中&#xff0c;用户经常需要对图片进行简单处理&#xff0c;比如裁剪多余部分、旋转图片、放大缩小尺寸等。 因此&#xff0c;我们首先要引入基础图片编辑功能&#xff0c;帮助用户快速完成以下操作&#xff1a; 裁剪&#…...

libwebsocket建立服务器需要编写LWS_CALLBACK_ADD_HEADERS事件处理

最近在使用libwebsocket&#xff0c;感觉它搭建Http与websocket服务器比较简单&#xff0c;不像poco库那么庞大&#xff0c;但当我使用它建立websocket服务器后&#xff0c;发现websocket客户端连接一直没有连接成功&#xff0c;不知道什么原因&#xff0c;经过一天的调试&…...

L1-002 打印沙漏

L1-002 打印沙漏 - 团体程序设计天梯赛-练习集 (pintia.cn) 本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”&#xff0c;要求按下列格式打印 ************ *****所谓“沙漏形状”&#xff0c;是指每行输出奇数个符号&#xff1b;各行符号中心对齐&#…...

JSP技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统

Jsp技术入门指南【一】利用IDEA从零开始搭建你的第一个JSP系统 前言一、什么是JSP1.1 JSP是干什么的&#xff1f;1.2 JSP与Servlet的关系是什么&#xff1f; 二、在Idea中创建第一个JSP系统三、JSP和HTML的差别3.1 格式区别3.2 注释区别 前言 在前面的内容中&#xff0c;我们已…...

NLP高频面试题(四十四)——RLHF过程中的马尔科夫决策过程及对话场景MDP设计

什么是马尔科夫决策过程(MDP)? 马尔科夫决策过程(MDP)是描述序贯决策问题的数学框架,由五元组( (S, A, P, R, \gamma) )组成,其中: (S):状态集合,描述环境的所有可能状态。(A):动作集合,描述智能体可以采取的所有可能动作。(P):状态转移概率函数,表示从一个状态…...

青少年编程与数学 02-016 Python数据结构与算法 24课题、密码学算法

青少年编程与数学 02-016 Python数据结构与算法 24课题、密码学算法 课题摘要:一、对称加密算法AES&#xff08;高级加密标准&#xff09;DES&#xff08;数据加密标准&#xff09;3DES&#xff08;三重数据加密标准&#xff09; 二、非对称加密算法RSAECC&#xff08;椭圆曲线…...

艺术字体AI生成阿里云WordArt锦书、通义万相、SiliconFlow、Pillow+OpenCV本地生成艺术字体

基于您的需求&#xff0c;结合最新API技术和搜索结果&#xff0c;以下是Python调用主流艺术字API的代码案例及对应充值链接方案&#xff1a; 一、大厂API服务&#xff08;付费方案&#xff09; 1. 阿里云WordArt锦书API # 文字纹理生成&#xff08;需安装dashscope&#xff…...

GIS开发笔记(7)结合osg及osgEarth实现不同高度下的三个圆形区域形成的三维覆盖轮廓区域绘制

一、实现效果如下&#xff1a; 二、实现原理 输入四个坐标点&#xff0c;第一个点为中心点&#xff0c;第二三四个点分别以中心点与地面垂线所在线上的各自高度水平面的交点为圆心旋转360进行圆形区域绘制&#xff0c;然后将三个不同高度上的圆形区域进行结合形成三维覆盖区域…...

解决 Kubernetes 调度器启动报错:缺少 Bind 插件

解决 Kubernetes 调度器启动报错&#xff1a;缺少 Bind 插件 问题描述 在启动自定义 Kubernetes 调度器时&#xff0c;出现了以下错误&#xff1a; I0416 17:08:41.420188 68788 configfile.go:57] "KubeSchedulerConfiguration v1beta2 is deprecated in v1.25, wil…...

Spring Batch 专题系列(六):并行处理与性能优化

1. 引言 在上一篇文章中,我们学习了 Spring Batch 的错误处理机制(Skip、Retry、Restart 和 Listener),掌握了如何提升作业的健壮性。随着数据量的增加,批处理任务的性能成为关键挑战。Spring Batch 提供了强大的并行处理功能,包括多线程 Step、分区(Partitioning)和并…...

WPF 从Main()方法启动

1.去掉App.xaml StartupUri“MainWindow.xaml” 只会让App.g.cs 不生成这行代码&#xff0c;但是还是会生成的App.g.cs文件中生成Main方法 this.StartupUri new System.Uri("MainWindow.xaml", System.UriKind.Relative);默认的App.xaml的生成操作是 应用程序定义…...

记录小程序第一次调用Api,基于腾讯云Serverless函数,实现小程序的成功接入api,以及数据调用

目录 创建腾讯云个人账户新建severless应用建立函数URL小程序中调用api示例 创建腾讯云个人账户 百度搜索即可&#xff0c;并注册 新建severless应用 作者以github下载的某Api为例&#xff0c;这里不展示具体Api&#xff0c;只关注操作即可&#xff0c;相信都是互通的 在腾…...

「数据可视化 D3系列」入门第四章:DOM操作与元素管理

DOM操作与元素管理 核心技能&#xff1a;元素选择与操作一、元素选择&#xff1a;精准定位DOM节点基础选择方法对比进阶选择技巧 二、元素插入&#xff1a;动态构建DOM结构append() vs insert()实际应用示例 三、元素删除&#xff1a;优雅移除DOM节点删除操作最佳实践 四、内容…...

突发重磅消息!!!CVE项目将被取消?

突发重磅消息&#xff01;&#xff01;&#xff01;CVE项目将被取消&#xff1f;突发&#xff01;来自可靠消息来源。MITRE 对 CVE 项目的支持将于明天到期。附件信件已发送给 CVE 董事会成员。https://mp.weixin.qq.com/s/N3qkiHaDfzDuBMK3JbBCjw...

基于uniapp的鸿蒙APP大数据量性能优化

文章目录 一、问题诊断与性能瓶颈分析1.1 大数据场景下的典型性能问题1.2 性能监测工具使用1.2.1 HBuilderX内置分析器1.2.2 鸿蒙DevEco工具链1.2.3 自制性能埋点 二、数据加载优化方案2.1 分页加载实现&#xff08;带错误重试机制&#xff09;2.2 数据流优化策略2.2.1 数据压缩…...

【算法】归并排序

算法系列七&#xff1a;归并排序 一、归并排序的递归探寻 1.思路 2.搭建 2.1设计过掉不符情况&#xff08;在最底层时&#xff09; 2.2查验能实现基础排序&#xff08;在最底层往上点时&#xff09; 2.3跳转结果继续往上回搭 3.实质 4.实现 二、递归的调用栈 1.递归的…...

【JavaScript】二十三、M端事件 + 轮播图Swiper插件

文章目录 1、M端事件2、swiper插件2.1 插件2.2 轮播图插件Swiper的使用 3、案例&#xff1a;学生信息表 1、M端事件 移动端有一个独有的事件&#xff1a;触屏事件 touch(也称触摸事件)&#xff0c;Android 和 IOS 都有&#xff0c;touch 对象代表一个触摸点。触摸点可能是一根…...

【Spring】DI(依赖注入)详解:属性注入@Autowired(超详细)、构造方法注入、Setter注入

1.DI&#xff08;依赖注入&#xff09;介绍 1.1DI是什么&#xff1f; DI&#xff08;Dependency Injection&#xff0c;依赖注入&#xff09; 是 Spring 框架中实现 IoC&#xff08;控制反转&#xff09;的一种核心机制。如果说 IoC 是一种设计思想&#xff0c;告诉我们“把控…...

Spring Boot 中配置 Redis 连接池的详细

目录 一、添加依赖二、配置 Redis 连接池&#xff08;一&#xff09;通过 Java 配置类&#xff08;二&#xff09;通过 application.properties 文件 三、测试 Redis 操作四、总结 一、添加依赖 在 pom.xml 文件中添加以下依赖&#xff1a; <dependencies><dependen…...

系统架构设计师:系统架构概述案例分析与简答题、详细解析与评分要点

10道系统架构概述知识体系案例分析与简答题&#xff0c;涵盖架构设计原则、质量属性、演化过程、评估方法等核心考点&#xff0c;并附详细解析与评分要点&#xff1a; 一、案例分析题&#xff08;5题&#xff09; 1. 电商系统高并发场景下的架构设计 背景&#xff1a;某电商平…...

关于系统架构思考,如何设计实现系统的高可用?

绪论、系统高可用的必要性 系统高可用为了保持业务连续性保障&#xff0c;以及停机成本量化&#xff0c;比如在以前的双十一当天如果出现宕机&#xff0c;那将会损失多少钱&#xff1f;比如最近几年Amazon 2021年30分钟宕机损失$5.6M。当然也有成功的案例&#xff0c;比如异地…...

阿里云短信服务与ASP.NET对接实例

准备工作 注册阿里云账号并开通阿里大于(现称"阿里云短信服务")服务 获取AccessKey ID和AccessKey Secret 申请短信签名和短信模板并审核通过 ASP.NET Web项目集成步骤 1. 安装阿里云SDK 通过NuGet包管理器安装阿里云短信服务SDK&#xff1a; Install-Package…...

【含文档+PPT+源码】基于微信小程序健康管理之健身房管理系统的设计与实现

课程目标&#xff1a; 教你从零开始部署运行项目&#xff0c;学习环境搭建、项目导入及部署&#xff0c;含项目源码、文档、数据库、软件等资料 课程简介&#xff1a; 本课程演示的是一款基于微信小程序健康管理之健身房管理系统的设计与实现&#xff0c;主要针对计算机相关…...

微信小程序转为App实践篇 FinClip

参考下面链接先 开始实践 微信小程序转为App并上架应用市场_微信小程序生成app-CSDN博客 首先在FinClip 官网上下载应用 小程序开发工具下载_小程序sdk下载资源-FinClip资源下载|泰坪小程序开放平台 下载到本地安装 打开导入自己的小程序项目&#xff1b;导入时会解析自己的…...

Qt/C++学习系列之QTreeWidget的简单使用记录

Qt/C学习系列之QTreeWidget的简单使用记录 前言1布局1.1布局要求1.2布局代码 2代码设计2.1整体勾选2.2勾选项确认 总结 前言 自己练手的项目中&#xff0c;需要对多个不同层级的选项进行勾选操作&#xff0c;而想到简洁点的操作方式就是使用QTreeWidget进行布局与应用。这里简…...

标易行项目redis内存中放哪些数据

结合你的项目经验,以下是 标易行投标服务平台 中 Redis 内存存储的核心数据类型及具体应用场景分析: 1. 用户订阅配置与实时推送 场景需求:用户订阅招标商机后,系统需实时推送符合订阅条件(如行业、区域、关键词)的标讯。Redis 存储数据: 订阅规则缓存:以 Hash 存储用户…...

redis 放置序列化的对象,如果修改对象,需要修改版本号吗?

在 Redis 中存储序列化对象时,如果修改了对象的类结构(例如增删字段、修改字段类型或顺序),是否需要修改版本号取决于序列化协议的兼容性策略和业务场景的容错需求。以下是详细分析: 1. 为什么需要考虑版本号? 序列化兼容性问题: 当对象的类结构发生变化时,旧版本的序列…...

MySQL——流程控制

一、IF条件语句 语法 IF condition THENstatements; ELSEIF condition THENstatements; ELSEstatements; END IF; 判断成绩等级 # 判断成绩等级 # 输入学生的编号,取出学生的第一门课&#xff0c;然后判断当前的课程的等级 drop procedure if exists p2; delimiter $$ crea…...

蓝桥杯 1.路径之谜

1.路径之谜 原题目链接 问题描述 小明冒充 X 星球 的骑士&#xff0c;进入了一个奇怪的城堡。城堡里边什么都没有&#xff0c;只有方形石头铺成的地面。假设城堡的地面是 n n 的方格&#xff0c;如下图所示&#xff1a; 骑士要从西北角走到东南角。可以横向或纵向移动&…...

学习笔记十二——Rust 高阶函数彻底入门(超详细过程解析 + 每步数值追踪)

&#x1f4a1; 彻底搞懂 Rust 高阶函数&#xff01;新手最容易卡住的语法 调用流程全讲透&#xff08;含逐步拆解&#xff09; Rust 函数式编程中有一个常见却经常让人懵的概念&#xff1a;高阶函数&#xff08;Higher-Order Function&#xff09; 一看到 fn(i32) -> i32、…...

Spring Cache(笔记)

简介&#xff1a; 常用注解&#xff1a;...

MySQL入门:数据表的创建

​今天我们来介绍一下除HTML外的另一种语言&#xff1a;MySQL语言&#xff1b; MySQL&#xff1a;即一种用于管理和处理关系数据库的标准语言。要用于执行查询、更新、管理数据库中的数据以及定义和操作数据库结构。 接下来我会逐一介绍它的作用以及其中数据表&#xff0c;数据…...

Vue3服务端渲染(SSR)深度调优:架构裂变与性能突围

一、全链路渲染管控系统 1.1 智能DNS路由策略 1.2 区域化渲染成本矩阵 区域计算成本($/h)网络成本($/GB)命中率QoS保障等级北美东部0.240.0892%SLA-99.9亚太东南0.280.1285%SLA-99.5欧洲西部0.310.1588%SLA-99.7南美圣保罗0.350.1878%SLA-99.0 二、多维度缓存治理策略 2.1 量…...

Python基础语法2

目录 1、顺序语句 2、条件语句 2.1、语法格式 2.2、缩进和代码块 3、空语句 4、循环语句 4.1、while循环 4.2、for循环 4.3、continue 4.4、break 5、综合案例 1、顺序语句 默认情况下&#xff0c;Python 的代码执行顺序是按照从上到下的顺序&#xff0c;依次执行的…...

部署LLaMA Factory,及快速使用

什么是LLaMA Factory LLaMA Factory 是一个围绕 Meta 的 LLaMA&#xff08;Large Language Model Meta AI&#xff09;模型设计的工具或代码结构&#xff0c;主要用于简化模型的创建、管理和部署。以下是其关键点解析&#xff1a; 1. ​​核心概念​​ ​​LLaMA 模型​​&a…...

11.第二阶段x64游戏实战-框架代码细节优化

免责声明&#xff1a;内容仅供学习参考&#xff0c;请合法利用知识&#xff0c;禁止进行违法犯罪活动&#xff01; 本次游戏没法给 内容参考于&#xff1a;微尘网络安全 上一个内容&#xff1a;10.第二阶段x64游戏实战-添加计时器 首先是这个GameData类&#xff0c;我们要让…...

Spring Boot 中使用 Netty

2025/4/15 向 一、什么是Netty Netty 是 Java 中一个非常高性能的网络通信框架&#xff0c;用来开发服务器和客户端程序&#xff0c;主要用于处理 TCP/UDP 的网络连接&#xff0c;比如&#xff1a; 聊天服务 实时推送 高并发网络通信&#xff08;比如游戏、IoT、金融系统&a…...

【Leetcode-Hot100】最大子数组和

题目 解答 class Solution(object):def maxSubArray(self, nums):""":type nums: List[int]:rtype: int"""len_nums len(nums)result -1e5left_fit, right_fit 0, len_nums-1if len_nums 1:return nums[0]sum_left, sum_right 0, 0while r…...

Android 项目 Camera 问题:Fail to connect to camera service

问题与处理策略 问题描述 在 Android 项目中&#xff0c;使用相机时&#xff0c;报如下错误 java.lang.RuntimeException: Fail to connect to camera service# 翻译无法连接到相机服务问题原因 通常情况是应用没有获取到相机权限&#xff0c;导致连接相机服务失败 Android…...

Java二叉树深度解析:结构、算法与应用实践指南

一、二叉树核心概念体系 1. 二叉树基础定义 graph TBA((根节点)) --> B((左子节点))A --> C((右子节点))B --> D((叶子节点))B --> E((叶子节点))C --> F[null]C --> G((叶子节点)) 2. 二叉树类型对比 类型结构特性典型应用场景普通二叉树任意节点最多两…...