音视频直播应用场景探讨之RTMP推流还是GB28181接入?

技术背景

好多开发者跟我们沟通音视频解决方案的时候,不清楚什么时候用RTMP推送模块,什么时候用GB28181设备接入模块,也不清楚二者差异化。实际上,RTMP推流和GB28181接入模块,在很多方面存在差异,如应用领域、协议性质、功能特性以及传输机制等。

RTMP推流

RTMP推流模块优缺点

优点:

  1. 广泛应用与兼容性:RTMP是Adobe公司为Flash/AIR平台和服务器之间音、视频及数据传输开发的实时消息传送协议,目前是最主流的流媒体传输协议之一。它对CDN(内容分发网络)支持良好,实现难度较低,是大多数直播平台的选择。
  2. 实现难度低:RTMP协议相对成熟,有大量的开源库和工具支持,便于开发和部署。
  3. 音视频编码支持:RTMP协议中,视频通常是H264编码,音频是AAC或MP3编码,这些编码格式在业界被广泛采用,具有较好的兼容性和压缩效率。

缺点:

  1. 不支持浏览器:RTMP协议不支持直接在浏览器中播放,需要通过Flash插件或额外的播放器来实现,但Adobe已不再更新Flash,这限制了RTMP在现代浏览器中的应用。
  2. 开源技术方案延迟较高:由于RTMP是基于TCP的协议,虽然保证了数据的可靠性,但相对于UDP等无连接协议,如果选用开源技术方案,延迟可能较高,如果是需要毫秒级延迟,需要用到像大牛直播SDK这种,全自研框架的RTMP推流模块。

RTMP推流应用场景

RTMP(Real-Time Messaging Protocol,实时消息传输协议)是一种基于TCP的网络协议,专门用于实时数据传输,特别是音视频流的传输。

1. 常规直播

RTMP推流是直播平台的核心技术之一。主播发起端通过RTMP协议将音视频数据实时推送到服务器,观众则通过拉流(通常也是RTMP或HLS等其他协议)从服务器获取音视频数据并观看直播内容。RTMP推流以其低延迟、高稳定性的特点,为移动直播提供了坚实的技术支持。

2. 无纸化同屏会议

在无纸化同屏会议场景,RTMP推流同样发挥着重要作用。参会人员可以通过RTMP协议将各自的音视频数据推送到会议服务器,服务器再将数据分发给其他参会者,实现实时音视频通信。RTMP推流在无纸化同屏会议中的应用,提高了会议的实时性和互动性。

3. 在线教育

在线教育领域也广泛采用RTMP推流技术。教师可以将授课内容通过RTMP协议实时推送到服务器,学生则通过拉流观看直播课程。这种方式不仅实现了远程教学,还提高了教学的互动性和实时性。

4. 远程监控

RTMP推流在远程监控系统中也有重要应用。摄像头采集到的音视频数据可以通过RTMP协议实时推送到监控服务器,管理人员可以随时查看监控画面,确保安全。RTMP推流在远程监控中的应用,提高了监控的实时性和准确性。

5. 其他应用场景

除了以上几个主要应用场景外,RTMP推流还可以用于社交媒体直播、企业内部培训等多种场景。随着5G、云计算等新技术的普及,RTMP推流的应用场景还将不断拓展和深化。

6. 功能支持

大牛直播SDK跨平台RTMP直播推送模块,始于2015年,支持Windows、Linux(x64_64架构|aarch64)、Android、iOS平台,支持采集推送摄像头、屏幕、麦克风、扬声器、编码前、编码后数据对接,功能强大,性能优异,配合SmartPlayer播放器,轻松实现毫秒级的延迟体验,满足大多数行业的使用场景。

Windows平台RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [屏幕/摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • [屏幕]支持屏幕裁剪,根据帧率和推送分辨率,自动推荐码流;
  • [摄像头]支持摄像头选择、分辨率设置、帧率设置;
  • [摄像头]摄像头支持水平反转、垂直反转、0° 90° 180° 270°旋转;
  • [屏幕]支持DXGI采集设置、启/停用Aero;
  • [音频]采集麦克风;
  • [音频]采集扬声器;
  • [预览]支持推送端实时预览;
  • 支持实时静音、取消静音;
  • [对接服务器]支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 屏幕和摄像头合成/多层合成;
  • 支持窗口采集(一般不建议使用);
  • 支持实时动态水印;
  • 支持实时快照;
  • 支持降噪处理、自动增益控制、VAD端点检测;
  • 支持扬声器和麦克风混音;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持RTMP扩展H.265(需设备支持H.265特定机型硬编码)和Enhanced RTMP;
  • 支持特定机型硬编码;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持Windows7及以上版本。

—————————————————————————————————————————————-

Linux平台x64_64架构|aarch64架构RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • 支持X11屏幕采集;
  • 支持部分V4L2摄像头设备采集;
  • [屏幕/V4L2摄像头]支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • [V4L2摄像头]支持V4L2摄像头设备选择(设备文件名范围:[/dev/video0, /dev/video63])、分辨率设置、帧率设置;
  • [V4L2摄像头]支持水平反转、垂直反转、0° 90° 180° 270°旋转;
  • [音频]支持基于alsa-lib接口的音频采集;
  • [音频]支持基于libpulse接口采集本机PulseAudio服务音频;
  • [预览]支持推送端实时预览;
  • [对接服务器]支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 屏幕和摄像头合成/多层合成;
  • 支持窗口采集(一般不建议使用);
  • 支持实时快照;
  • 支持降噪处理、自动增益控制、VAD端点检测;
  • 支持扬声器和麦克风混音;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持x64_64架构、aarch64架构(需要glibc-2.21及以上版本的Linux系统, 需要libX11.so.6, 需要GLib–2.0, 需安装 libstdc++.so.6.0.21、GLIBCXX_3.4.21、 CXXABI_1.3.9);

—————————————————————————————————————————————-

Android平台RTMP直播推送SDK

  • 音频编码:AAC/SPEEX;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [摄像头]支持采集过程中,前后摄像头实时切换;
  • 支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • 支持RTMP推送 live|record模式设置;
  • 支持前置摄像头镜像设置;
  • 支持软编码、特定机型硬编码;
  • 支持横屏、竖屏推送;
  • 支持Android屏幕采集推送;
  • 支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 支持实时动态水印;
  • 支持实时快照;
  • 支持降噪处理、自动增益控制;
  • 支持外部编码前音视频数据对接;
  • 支持外部编码后音视频数据对接;
  • 支持RTMP扩展H.265(需设备支持H.265特定机型硬编码)和Enhanced RTMP;
  • 支持实时音量调节;
  • 支持扩展录像模块;
  • 支持Unity接口;
  • 支持H.264扩展SEI发送模块;
  • 支持Android 5.1及以上版本。

—————————————————————————————————————————————-

iOS平台RTMP直播推送SDK

  • 音频编码:AAC;
  • 视频编码:H.264、H.265;
  • 推流协议:RTMP;
  • [音视频]支持纯音频/纯视频/音视频推送;
  • [摄像头]支持采集过程中,前后摄像头实时切换;
  • 支持帧率、关键帧间隔(GOP)、码率(bit-rate)设置;
  • [RTMP协议]支持RTMP推送 live|record模式设置;
  • 支持前置摄像头镜像设置;
  • 支持软编码、特定机型硬编码;
  • 支持实时静音、取消静音;
  • 支持横屏、竖屏推送;
  • [对接服务器]支持自建标准RTMP服务器或CDN;
  • 支持断网自动重连、网络状态回调;
  • 实时快照;
  • 外部编码前音视频数据对接;
  • 外部编码后音视频数据对接;
  • 特定设备H.265硬编码;
  • RTMP扩展H.265(需设备支持H.265特定机型硬编码);
  • 扩展录像模块;
  • H.264扩展SEI发送模块;
  • 支持iOS 9.0及以上版本。

GB28181设备接入模块

GB28181全称为《安全防范视频监控联网系统信息传输、交换、控制技术要求》,是我国音视频领域的一项关键标准,由公安部科技信息化局提出,并由全国安全防范报警系统标准化技术委员会(SAC/TC100)归口,公安部一所等多家单位共同起草。该标准旨在规范安全防范视频监控联网系统中信息传输、交换、控制的互联结构、通信协议结构,以及传输、交换、控制的基本要求和安全性要求。以下是GB28181的优缺点分析:

优点

  1. 协议统一:GB28181作为国家标准,具有统一的规范和标准,方便不同品牌、不同厂家的视频监控设备进行互联互通,降低了系统集成的难度和成本。这为用户提供了更多的选择和灵活性,能够构建符合自身需求的视频监控系统。

  2. 支持外网视频流出:GB28181协议支持视频流的推送模式,可以实现视频流出外网,便于远程监控和统一管理。这对于需要实时监控和应急处理的场景尤为重要,能够确保信息的及时传递和处理。

  3. 广泛应用:GB28181在智慧城市、应急指挥、公共安全等领域有广泛应用,能够满足大规模视频监控系统的集中管理和统一调度需求。通过与其他系统的集成和联动(如报警系统、门禁系统等),可以实现更加智能化的安防管理。

  4. 成本效益:由于GB28181协议的普及,设备厂商可以大规模生产符合标准的设备,从而降低生产成本。这对于用户来说,意味着可以以更低的价格购买到高质量的设备,降低了整体系统的建设成本。

  5. 高效性:GB28181协议确保了不同设备之间可以实现快速、稳定的数据传输,提高了系统的效率和响应速度。

  6. 良好的扩展性和兼容性:GB28181协议支持多种视频编码格式(如H.264、H.265等)和主流的设备类型(如IPC、DVR、NVR等),确保了与市面上大多数设备的兼容性。同时,它还支持与其他系统的集成,具有良好的扩展性。

缺点

  1. 功能相对简单:GB28181协议虽然定义了基本的通信字段,但在处理一些复杂的通信需求时显得功能相对简陋。例如,缺乏详细的异常处理和灵活的查询机制,这可能导致在平台对接过程中需要额外的协商和配置。

  2. 消息推送速度慢:在平台对接过程中,由于可能经过多级流媒体服务才能拿到视频流,导致消息推送速度较慢,影响实时性。这对于需要高度实时性的应用场景可能是一个挑战。

  3. 与SIP系统不完全兼容:尽管GB28181在信令层面使用了SIP协议,但两者并不完全兼容。因此,在需要将GB28181视频监控系统与其他基于SIP的通信系统进行融合时,需要通过SIP网关等工具来实现协议之间的转换和互通。

GB28181设备接入模块应用场景

GB28181是中国国家标准委员会发布的关于视频监控安防领域的网络视频监控系统技术规范,使用场景非常广泛,几乎涵盖了所有需要视频监控和安防管理的领域。通过实现视频监控设备的互联互通和实时视频传输,GB28181协议为各行各业提供了强有力的安全保障,特别是Android端的GB28181设备接入模块,可实现不具备国标音视频能力的 Android终端,通过平台注册接入到现有的GB/T28181服务,可用于如执法记录仪、智能安全帽、智能监控、智慧零售、智慧教育、远程办公、明厨亮灶、智慧交通、智慧工地、雪亮工程、平安乡村、生产运输、车载终端等场景,下面是一些典型场景介绍:

1. 公共安全领域
  1. 城市安防:GB28181协议在平安城市、智慧城市等项目中得到广泛应用,通过实现视频监控设备的互联互通,提升城市的安全防范能力。
  2. 交通监控:在交通管理系统中,GB28181协议支持交通监控设备的接入和实时视频传输,帮助交通管理部门实时监控交通流量、违章行为等,提高交通管理效率。
2. 企事业单位
  1. 企业园区监控:企业可以通过GB28181协议构建统一的视频监控系统,实现对园区内各个角落的实时监控,保障企业财产和员工安全。
  2. 办公区域监控:在办公区域部署支持GB28181协议的视频监控设备,可以实时监控办公区域的安全情况,防止盗窃、破坏等事件的发生。
3. 特定行业应用
  1. 智慧教育:在学校、幼儿园等教育场所,GB28181协议可以应用于校园监控系统,保障校园安全,防止校园暴力和其他安全问题。
  2. 智慧零售:在商场、超市等零售场所,GB28181协议可以支持监控设备的接入和实时视频传输,帮助商家实时监控店内情况,防止盗窃等事件的发生。
  3. 智慧工地:在建筑施工现场,GB28181协议可以应用于工地监控系统,实现对施工过程的实时监控和安全管理。
  4. 雪亮工程:作为农村治安防控体系建设的重要组成部分,GB28181协议在雪亮工程中发挥着重要作用,通过实现视频监控设备的互联互通,提升农村地区的安全防范能力。
4. 其他应用场景
  1. 远程办公:在远程办公场景中,GB28181协议可以支持视频会议系统的构建,实现远程沟通和协作。
  2. 明厨亮灶:在餐饮行业中,GB28181协议可以应用于厨房监控系统,实现厨房环境的实时监控和食品安全管理。
  3. 生产运输:在工业生产、物流运输等领域,GB28181协议可以支持监控设备的接入和实时视频传输,帮助管理者实时监控生产过程和运输状态。
5. 功能支持

以大牛直播SDK的Android平台GB28181设备接入模块为例,Android终端除支持常规的音视频数据接入外,还可以支持移动设备位置(MobilePosition)订阅和通知、图像抓拍、语音广播和语音对讲、历史视音频下载和回放,支持对接数据类型如下:

  1. 编码前数据(目前支持的有YV12/NV21/NV12/I420/RGB24/RGBA32/RGB565等数据类型),其中,Android平台前后摄像头数据,或者屏幕数据,或者Unity拿到的数据,均属编码前数据;
  2. 编码后数据(如无人机等264/HEVC数据,或者本地解析的MP4音视频数据);
  3. 拉取RTSP或RTMP流并接入至GB28181平台(比如其他IPC的RTSP流,可通过Android平台GB28181接入到国标平台)。

  •  [视频格式]H.264/H.265(Android H.265硬编码);
  •  [音频格式]G.711 A律、AAC;
  •  [音量调节]Android平台采集端支持实时音量调节;
  •  [H.264硬编码]支持H.264特定机型硬编码;
  •  [H.265硬编码]支持H.265特定机型硬编码;
  •  [软硬编码参数配置]支持gop间隔、帧率、bit-rate设置;
  •  [软编码参数配置]支持软编码profile、软编码速度、可变码率设置;
  •  支持横屏、竖屏推流;
  •  Android平台支持后台service推送屏幕(推送屏幕需要5.0+版本);
  • 支持纯视频、音视频PS打包传输;
  • 支持RTP OVER UDP和RTP OVER TCP被动模式(TCP媒体流传输客户端);
  • 支持信令通道网络传输协议TCP/UDP设置;
  • 支持注册、注销,支持注册刷新及注册有效期设置;
  • 支持设备目录查询应答;
  • 支持心跳机制,支持心跳间隔、心跳检测次数设置;
  • 支持移动设备位置(MobilePosition)订阅和通知;
  •  适用国家标准:GB/T 28181—2016;
  • 支持语音广播;
  • 支持语音对讲;
  • 支持图像抓拍;
  • 支持历史视音频文件检索;
  • 支持历史视音频文件下载;
  • 支持历史视音频文件回放;
  • 支持云台控制和预置位查询;
  •  [实时水印]支持动态文字水印、png水印;
  •  [镜像]Android平台支持前置摄像头实时镜像功能;
  •  [实时静音]支持实时静音/取消静音;
  •  [实时快照]支持实时快照;
  •  [降噪]支持环境音、手机干扰等引起的噪音降噪处理、自动增益、VAD检测;
  •  [外部编码前视频数据对接]支持YUV数据对接;
  •  [外部编码前音频数据对接]支持PCM对接;
  •  [外部编码后视频数据对接]支持外部H.264数据对接;
  •  [外部编码后音频数据对接]外部AAC数据对接;
  •  [扩展录像功能]支持和录像SDK组合使用,录像相关功能。

总结

RTMP推流作为一种高效、稳定的实时数据传输协议,在直播、视频会议、在线教育、远程监控、在线游戏等多个领域都有广泛应用。GB28181设备接入模块的使用场景也非常广泛,几乎涵盖了所有需要视频监控和安防管理的领域。通过实现视频监控设备的互联互通和实时视频传输,GB28181协议为各行各业提供了强有力的安全保障。以上是二者优缺点分析和使用场景探讨,还有功能描述,感兴趣的开发者,可以单独跟我沟通探讨。

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

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

相关文章

个人学习笔记7-5:动手学深度学习pytorch版-李沐

#人工智能# #深度学习# #语义分割# #计算机视觉# #神经网络# 计算机视觉 13.10 转置卷积 例如,卷积层和汇聚层,通常会减少下采样输入图像的空间维度(高和宽)。然而如果输入和输出图像的空间维度相同,在以像素级分类…

【MPC】无人机模型预测控制复现Data-Driven MPC for Quadrotors项目(Part 1)

无人机模型预测控制复现Data-Driven MPC for Quadrotors项目 参考链接背景和问题方法与贡献实验结果安装ROS创建工作空间下载RotorS仿真器源码和依赖创建Python虚拟环境下载data_driven_mpc仓库代码下载并配置ACADO求解器下载并配置ACADO求解器的Python接口下载并配置rpg_quadr…

智能智造和工业软件研发平台SCSAI功能介绍

用爱编程30年,倾心打造工业和智能智造软件研发平台SCIOT,用创新的方案、大幅的让利和极致的营销,致力于为10000家的中小企业实现数字化转型,打造数字化企业和智能工厂,点击上边蓝色字体,关注“AI智造AI编程”或文末扫码…

union和union all的区别,别再傻傻分不清楚了!

union和union all的区别 一、 显示结果不同二、对重复结果的处理不同三、对排序的处理不同四、测试验证1.创建user表并插入测试数据2.通过union关联查询,发现结果自动去重3.通过union all关联查询,发现结果查询所有,并未去重 一、 显示结果不…

记录开发一个英语听力训练网站

背景 在当前全球经济衰退的背景下,IT相关的工作在国内的竞争也是越来越激烈,为了能够获得更多的可能性,英语的学习也许能为程序员打开一扇新的窗户,比如很多远程的工作尤其是国际化背景的工作团队,英语的协作沟通是必…

pdf怎么加页码?5种pdf添加页码指南分享,快来领取!

如何在一个包含大量页面的大型pdf文件中快速找到特定的页面或信息呢?最简便的方法就是为pdf添加页码。pdf添加页码能够清晰显示页面顺序,帮助读者轻松浏览大型pdf文档,同时也便于寻找特定章节和确定整体长度。然而,并非所有pdf文件…

【LeetCode】每日一题 2024_9_14 从字符串中移除星号(模拟)

前言 每天和你一起刷 LeetCode 每日一题~ LeetCode 启动! 今天的题目曾经的我做过了 . . . 又是复习的一天 题目:从字符串中移除星号 代码与解题思路 func removeStars(s string) string {// 本题的核心:生成的输入保证总是可以执行题面中…

【大数据】MapReduce的“内存增强版”——Spark

【大数据】MapReduce的“内存增强版”——Spark 文章脉络 Spark架构 Spark-core SparkConf 和 SparkContext RDD Spark集群 Spark-sql 在大数据时代,数据处理和分析成为企业竞争的重要手段。Hadoop作为大数据处理的基石,其核心组件MapReduce在众多…

完结马哥教育SRE课程--就业篇

文章目录 一、Linux基础入门1.Linux基本架构2.什么是shell3.执行命令4.Shell中的两类命令5.常见命令6.输出信息echo7.tab键补全8.获取帮助 二、文件管理和IO重定向1.文件系统目录结构2.文件系统目录功能3.linux下的文件类型4.文件操作命令5.文件状态stat6.确定文件内容7.文件通…

如何搭建一个自己的外卖会员卡系统?

大家好,我是鲸天科技千千,大家都知道我是做小程序开发的,平时会给大家分享一些互联网相关的创业项目,感兴趣的可以跟我关注一下。 搭建一个首先就是要搭建一个自己的返利小程序也就是外卖会员卡小程序,然后客户在我们…

锁表导致系统挂了,谨慎DDL操作

作者:IT邦德 中国DBA联盟(ACDU)成员,10余年DBA工作经验, Oracle、PostgreSQL ACE CSDN博客专家及B站知名UP主,全网粉丝10万 擅长主流Oracle、MySQL、PG、 高斯及Greenplum备份恢复, 安装迁移,性能优化、故障…

【Ubuntu】Ubuntu双网卡配置 实现内外网互不影响同时可用

【Ubuntu】Ubuntu双网卡配置 实现内外网互不影响同时可用 建议前提配置用到的命令参考文献: 建议 本文仅作个人记录,请勿完全照搬,建议直接看此视频,按作者的步骤进行配置 linux配置内外网(ubuntu举例)&am…

看Threejs好玩示例,学习创新与技术(二)

本文接上篇内容,继续挖掘应用ThreeJS的一些创新算法。 本文理解难度比较大,可以先看一些概念,在难的地方培养一些意识即可。 1、扭曲的自然 下面图本身是矩形的,为何它可以这么扭曲呢?它在随机处带有一定的规律&…

跨平台开发新视角:利用Android WebView实现Web内容的原生体验

在移动应用开发领域,跨平台解决方案一直是一个热门话题。开发者们不断寻求能够同时在iOS和Android平台上提供一致用户体验的方法。而Android的WebView组件,作为一个强大的工具,允许开发者在Android应用中嵌入Web内容,为用户提供接…

jmeter吞吐量控制器

一、吞吐量控制器作用:旨在混合场景中,控制样本数,通常在比例场景中使用 吞吐量控制器提供了两种控制模式: 百分比执行(Percent Executions): 吞吐量控制器会根据配置的百分比来决定其下的作用…

模拟实现vector:vector构造、析构函数、size、capacity、push_back函数、迭代器、[]运算符重载等的介绍

文章目录 前言一、vecotr构造、析构函数、size、capacity、push_back函数、迭代器、[]运算符重载二、insert函数三、const修饰的迭代器总结 前言 模拟实现vector:vector构造、析构函数、size、capacity、push_back函数、迭代器、[]运算符重载等的介绍 一、vecotr构造、析构函数…

拥塞控制算法为何失效,网络为何难以测量?

紧接着上文 如何测量一个(传输网络)系统的容量 给出的方法,看一下如何测量网络容量,如果真的能测量网络容量,传输算法就好设计了。 先给出答案,很遗憾,根本无法测量,请阅读 why we don’t know how to sim…

react-intl——react国际化使用方案

国际化介绍 i18n&#xff1a;internationalization 国家化简称&#xff0c;首字母首尾字母间隔的字母个数尾字母&#xff0c;类似的还有 k8s(Kubernetes) <br /> React-intl是 React 中最受欢迎的库。 使用步骤 安装 # use npm npm install react-intl -D # use yarn项目…

MySOL数据库进阶篇——存储引擎

一.MySQL体系结构图&#xff1a; MySQL的结构体系主要包含以下几个方面的内容&#xff1a; 1. 服务器层&#xff08;Server Layer&#xff09;&#xff1a;提供了MySQL的核心服务&#xff0c;包括连接管理、查询解析、优化等功能。 2. 存储引擎&#xff08;Storage Engine&am…

每日OJ_牛客_点击消除(栈)

目录 牛客_点击消除&#xff08;栈&#xff09; 解析代码 牛客_点击消除&#xff08;栈&#xff09; 点击消除_牛客题霸_牛客网 描述&#xff1a; 牛牛拿到了一个字符串。 他每次“点击”&#xff0c;可以把字符串中相邻两个相同字母消除&#xff0c;例如&#xff0c;字符…