- 博客(95)
- 资源 (1)
- 收藏
- 关注
原创 使用豆包AI编程 大大赋能代码开发
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员在实际开发应用中,通过接口获取到xml的数据格式(通道与国标信息xml表),为了提取xml中通道id与国标id的映射关系,需要解析xml字符串。目前是基于tinyxml2.h/cpp开源代
2025-03-24 18:10:24
21
原创 python实现多路视频,多窗口播放功能
服务端开发后通常需要做功能测试、性能测试,通常postman、curl等作功能测试使用,长跑服务性能postman并不太适合,如用c++实现播放器功能太慢,效率太低效,本文介绍一种用python来实现多路视频播放的测试。本文实现了最简单最快的方式实现播放器功能,python实现视频播放多路实时流的视频。
2025-02-05 11:38:05
546
原创 容器化部署服务全流程
这篇文章,主要目的是通过容器化技术简化应用程序的部署、运行和管理,提高开发、测试和生产环境的一致性,以及资源的优化利用Docker是一种开源的容器化技术,主要用于简化应用程序的开发、部署和运行过程。它通过提供一个轻量级的虚拟化环境,使得开发者可以打包、分发和运行应用程序及其依赖环境。Docker将应用程序及其所有依赖项打包成一个“容器”,这个容器可以在任何支持Docker的系统上运行,而无需担心环境配置等差异的影响的问题。Docker的核心概念包括容器、镜像、Dockerfile和镜像仓库。
2024-12-29 20:15:36
749
原创 基于Zltoolkit的线程组实现 源码解析
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员通过上面的学习,应该理解了想要实现服务器百万并发,需要解决的问题。
2024-11-06 20:45:20
285
1
原创 实战中jrtplib发送rtp包,时间戳处理大坑
RTP 是目前解决流媒体实时传输问题的最好办法,如果需要在Linux平台上进行实时流媒体编程,可以考虑使用一些开放源代码的RTP库,如JRTP
2023-11-30 19:50:32
1332
原创 通过工具分析MongoDB性能问题
mongostat是mongdb自带的状态检测工具,在命令行下使用。它会间隔固定时间获取mongodb的当前运行状态,并输出。如果你发现数据库突然变慢或者有其他问题的话,你第一手的操作就考虑采用mongostat来查看mongo的状态。
2023-10-04 19:21:24
707
原创 基于C函数封装的C++读写锁(附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员通过上面的学习,应该理解了读写锁的使用以及如何避坑。
2023-08-11 09:59:49
374
原创 C++ 智能指针对象无法通过void*函数传递的解决方案
智能指针是C++11新特性,智能指针主要用来管理在堆上分配的内存,它将普通的指针封装为一个栈对象,当栈对象生存周期结束后,会在析构函数中释放申请的内存,防止内存泄露。C++11引入智能指针,方便管理堆内存。普通指针需要手动申请和释放内存,使用智能指针不需要关心对象内存申请和释放,可有效避免堆内存泄漏问题(忘记释放)。其采用了一种RAII技术,RAII是一种了利用对象生命周期来控制程序资源(如:内存,文件,套接字,互斥量等)的技术。
2023-07-21 10:57:56
961
原创 C++之shared_from_this用法以及类自引用this指针陷阱
C++之shared_from_this用法以及类自引用this指针陷阱
2023-07-09 15:33:42
2259
1
原创 《从零开始编写一个直播服务器》音视频封装FLV理论
previous tag sizen 表示的前一个tag的整体大小每个Tag数据大小在Tag Header头里面的Data size字段里面;1.FLV就三种TAG,比较简单的封装格式,每个TAG都是由Tag Header和TAG Data组成;2.FLV中对时间戳的处理?如果含有B帧时间戳怎么计算?特别是PTS和DTS时间戳;3.你能从FLV这种封装格式中,借鉴到什么?加入让你设计一种私有封装格式,又该如何设计;4.如果FLV里面扩展H.265视频编码格式,你觉得大概的思路是什么;
2023-06-29 22:00:02
283
原创 C++基于jrtp实现rtp发送与接收代码实现(附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员通过上面的例子,你应该对jrtp的使用有了较深刻的认识,希望对你。
2023-06-13 19:41:20
1027
原创 从0-1一起学习live555设计思想之一 基础运行环境 + 任务调度
本篇开始分析live555的基础组件,也就是基础运行环境所需要的组件类。liveMedia项目的源代码包含四个主要的库,各种測试代码以及IVE555 Media Server。四个主要的库各自是UsageEnvironment,TaskScheduler,groupsock,liveMedia,BasicUsageEnvironment。UsageEnvironment类是个抽象类,提供基础的运行环境,它依赖于TaskScheduler类来进行任务的调度。
2023-06-04 22:26:36
613
1
原创 手把手教你rtsp流媒体分析(引导篇,欢迎订阅专栏)
在安防行业中,onvif协议与gb协议是两种标准,gb是国内安防行业的标准,onvif是国外的安防行业的标准,其中gb28181中视频流是ps流、由设备、下级平台推送到上级平台,具有上公有云的特点,而onvif视频流采用的是rtsp,通常用于内网访问,当需要rtsp流可以上公有云的话,可以使用r-rtsp,r-rtsp交互流程正好与rtsp流程相反,由服务端主动发起请求。本文主要讲解了RTSP的主要流程以及RTP,RTCP的包分析,本文主要介绍的H264的包结构,希望能够让你对rtsp有个深刻的认识。
2023-06-01 16:26:53
4731
原创 gdb常用命令大全+调试c++代码并定位问题详解
GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。对于一名Linux下工作的c/c++程序员,gdb是必不可少的工具。gdb调试主要步骤1.先把文件编译为可执行文件(如对test.c进行编译:gcc -g -o test test.c)2.在终端输入gdb 后回车3.接着输入file test 后回车,之后进入调试过程4.调试过程,根据需要可对代码进行查看或操作gdb app。
2023-05-23 12:39:22
1109
原创 手把手教你验证upd与tcp“端口”开发策略
这篇文章,本意是让大家了解除了常用的telnet之外,在运维过程中,如果在服务器中未发现相关命令还可以借用像ssh、wget 等命令测试端口。以上讲述了多种方法验证tcp与udp端口的问题,希望对你有所帮助。
2023-05-21 13:02:23
3049
原创 nginx keepalived 高可用原理和实操
使用nginx-keepalived双机热备机制,vip主机可以进行漂移,这样当一台主机挂掉了,还有备用机可以使用,保证了服务的可靠性。通过本文的讲解应该对高可用方案有了较深刻的理解,希望能够对你有所帮助。
2023-05-17 19:09:25
2768
1
原创 centos7.5 从0-1安装mysql以及基本的增删改查
MySQL 是最流行的关系型数据库管理系统,在 WEB 应用方面 MySQL 是最好的 RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。
2023-05-04 16:59:11
585
原创 从0-1学习nginx知识点
1、nginx.基本描述是什么、做什么、用在哪里2、安装与配置文件,常用命令3、nginx反向代理,正向代理4、负载均衡5、动静分离6、高可用服务器7、执行原理通过本文的学习,对nginx本身应该没有任何疑问了把。
2023-04-28 14:23:20
222
原创 手把手教你安装telnet(离线方式+在线方式)
Telnet协议是TCP/IP协议族中的一员,是Internet远程登录服务的标准协议和主要方式。它为用户提供了在本地计算机上完成远程主机工作的能力。在终端使用者的电脑上使用telnet程序,用它连接到服务器检测是否安装telnet软件包(通常要两个)1、telnet-client (或 telnet),这个软件包提供的是 telnet 客户端程序;2、telnet-server 软件包,这个才是真正的 Telnet server 软件包!
2023-04-24 13:57:03
16968
3
原创 Mongo集群化部署+高可用架构
数据库的演进随着计算机的发展,越来越多的数据需要被处理,数据库是为处理数据而产生。从概念上来说,数据库是指以一定的方式存储到一起,能为多个用户共享,具有更可能小的冗余,与应用程序彼此独立的数据集合。从功能上来说,就是数据管理软件。到了2000年随着互联网的发展,数据量呈现爆发式增长。海量数据的诞生,传统的关系型数据库在应对大规模,超大流量的时候就显得力不从心。借此,NoSQL数据库跟NewSQLl数据库就此登场。
2023-04-21 13:39:21
1525
原创 mongodb数据库索引介绍与优化选择
MongoDB 索引索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录。
2023-04-19 20:54:40
1317
原创 从0-1优化C++类对象创建资源消耗 (附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员本文讲了一种最最最简单的对象之间的传递,可以减少引用与拷贝,另外不需要过度的理解含义,就可以避免问题的出现。
2023-04-13 17:52:33
455
原创 0到1手把手教mongodb优化性能手段
MongoDB同关系型数据库一样,在数据量小时看不出任何问题,但是当数据的操作变的频繁,如对10万级的数据表连续进行查询操作,MongDB会变的非常缓慢。针对这种情况,我们对MongoDB进行性能优化。索引的机制是:当你往某各个集合插入多个文档后,每个文档在经过底层的存储引擎持久化后,会有一个位置信息,通过这个位置信息,就能从存储引擎里读出该文档。
2023-04-10 20:43:33
1386
原创 从0-1去分析与定位代码中死锁,被神队友坑的两天
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员。
2023-04-02 21:06:41
313
2
原创 vscode配置C/C++常用插件,亲测好用
Visual Studio Code(VS Code)是微软2015年推出的一个轻量但功能强大的源代码编辑器,基于 Electron 开发,支持 Windows、Linux 和 macOS 操作系统。它内置了对JavaScript,TypeScript和Node.js的支持并且具有丰富的其它语言和扩展的支持,功能超级强大。
2023-03-27 16:11:29
7121
2
原创 C++基于C++11/14实现JPG2BGR或者BGR2JPG(附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员通过本文的学习,应该对jpegturb性能有了一定的理解,希望能够帮助你。
2023-03-23 20:22:04
494
原创 手把手教你安装virtualbox + ubuntu + gcc(cmake)+ yum源 + ssh+ 清理磁盘等
1、 安装virtualbox点我进入VirtualBox官网下载安装包点击下载好的VirtualBox安装包,一路点击“下一步”,留意安装位置,我这里是将C盘改为了D盘,直到最后点击完成按钮。安装细节略,按照过程安装2、安装ubuntu或者centos点我进入ubuntu iso镜像下载地址或者ubuntu iso镜像下载地址运行VirtualBox,点击新建设置虚拟机电脑名称和系统类型。
2023-03-23 19:54:37
2758
原创 C++基于C++11/14实现线程池(附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员线程是进程中的⼀个执⾏单元,负责当前进程中程序的执⾏,⼀个进程中⾄少有⼀个线程。⼀个进程中是可以有多个线程的,这个应⽤程序也可以称之为多线程程序。
2023-03-21 23:28:40
303
原创 C++实战 encodeURIComponent与decodeURIComponent实现(附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员通过本文的学习,对C++实现java常用的uri encode与decode方法。
2023-03-21 23:18:23
645
原创 C++实战md5、base64算法实现(附源码)
本文是C/C++常用功能代码封装专栏的导航贴。部分来源于实战项目中的部分功能提炼,希望能够达到你在自己的项目中拿来就用的效果,这样更好的服务于工作实践。专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员以上代码都是摘自git源码中的部分提取,安全可靠,欢迎大家使用指正。
2023-03-05 13:51:34
515
原创 C/C++实现百度高德WGS84坐标系转换(附源码)
专栏介绍:专栏讲本人近10年后端开发常用的案例,以高质量的代码提取出来,并对其进行了介绍。代码拿去可以直接使用的,可以解决C++常见的问题。专栏使用人群:C++软件开发人员通过本文坐标系间转换代码,你应该轻松的自己实现坐标系间的转换了。百度转wgs84参考转换链接百度获取坐标地址高德获取坐标地址在线转换地址在线转换地址b。
2023-03-01 22:08:59
1153
基于c++实现插件管理框架与插件demoA与demoB
2022-10-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人