自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Python设计模式实战:用Pythonic的方式实现单例、工厂模式

工厂模式在需要解耦对象创建逻辑时特别有用,尤其是当创建过程复杂或需要根据不同条件创建不同对象时。抽象工厂特别适合需要保证产品兼容性的场景。单例模式适用于需要全局唯一访问点的资源管理器、配置管理器等场景。在Python中更推荐使用模块级变量而非经典的单例实现。两种模式都可以通过Python的语言特性简化实现,避免过度设计。选择模式时应考虑实际需求而非生搬硬套设计模式。利用Python模块天然的单例特性是最简单的方式。模块在首次导入时生成对象,后续导入直接返回已存在的实例。

2025-11-11 11:09:45 283

原创 Java常用中间件整理讲解——Redis,RabbitMQ

RabbitMQ的主要特点包括可靠性、灵活的路由、集群和高可用性。同时,Redis支持数据持久化,可以将内存中的数据保存到磁盘中,防止数据丢失。RabbitMQ更适合复杂的消息队列场景,尤其是在需要可靠性和灵活路由的情况下。RabbitMQ支持多种消息模式、消息确认机制和持久化,适合处理重要的业务消息。Redis的发布订阅功能虽然简单,但不支持消息持久化和复杂的路由逻辑。Redis是一种开源的内存数据结构存储系统,支持多种数据结构,如字符串、哈希、列表、集合等。它广泛应用于缓存、会话存储、消息队列等场景。

2025-11-11 11:05:11 292

原创 ​​流媒体技术全栈教程:从基础流概念到WebSocket实时流操作​

本文将全面介绍流媒体技术的基础概念、协议栈,并通过实际代码示例演示如何从零开始构建一个基于WebSocket的实时流媒体系统。流媒体(StreamingMedia)是一种数据传输技术,允许内容在传输过程中被消费,而不需要等待整个文件下载完成。console.log(`新客户端连接,当前客户端数:${clients.size}`);console.log(`客户端断开,剩余客户端数:${clients.size}`);console.log('收到数据:',event.data);

2025-10-31 22:51:02 274

原创 蓝牙低功耗(BLE)通信的中心设备/外围设备(连接角色)、主机/从机(时序角色)、客户端/服务器(数据交互角色)的理解

BLE协议栈采用分层的角色模型设计,不同角色承担特定功能,共同完成通信任务。本文深入分析BLE通信中的三种角色划分:连接角色(中心设备/外围设备)、时序角色(主机/从机)和数据交互角色(客户端/服务器),探讨各角色的功能特性、交互机制及在实际应用中的选择策略,为BLE系统设计提供理论参考。连接角色管理设备发现和配对,时序角色优化能源效率,数据交互角色实现业务逻辑。1.连接角色:中心设备(Central)与外围设备(Peripheral)-描述设备在连接建立过程中的行为。传感器类设备通常作为外围设备。

2025-10-31 22:49:17 555

原创 开源 Linux 服务器与中间件(十二)FRP内网穿透应用

FRP作为一款轻量级、高性能的内网穿透工具,通过其灵活的配置和强大的功能,为开发者提供了便捷的远程访问解决方案。FRP是一款使用Go语言开发的开源内网穿透工具,采用客户端-服务器架构,通过反向代理的方式实现内网服务的暴露。其核心思想是在公网服务器上部署FRP服务端(frps),在内网机器上部署FRP客户端(frpc),通过两者之间的隧道通信,将外部请求转发到内网服务。4.请求转发:当外部用户访问服务端的指定端口时,服务端通过已建立的通道将请求转发到内网客户端,再由客户端将请求传递给实际的内网服务。

2025-10-31 22:47:26 404

原创 Linux中初始化根文件系统populate_rootfs的实现

在Linux系统启动过程中,内核需要首先挂载一个初始的根文件系统(initramfs),这个临时文件系统包含了必要的工具和驱动,用于加载真正的根文件系统。`populate_rootfs`函数是这一过程的核心实现,它位于Linux内核源码的`init/initramfs.c`文件中。`populate_rootfs`的主要职责是处理内嵌的initramfs或外部的initramfs镜像,将其解压并建立初始的根文件系统结构。Linux内核中初始化根文件系统populate_rootfs的实现分析。

2025-10-31 22:45:30 536

原创 Linux目录结构

/bin`(二进制目录)包含系统启动和运行所需的基本用户命令,如`ls`、`cp`、`mv`等。现代Linux系统中,`/bin`和`/usr/bin`、`/sbin`和`/usr/sbin`往往是指向同一位置的符号链接,这是为了符合FHS标准并简化目录结构。1.功能分离:不同类型的文件被严格分离到不同目录,如可执行文件(`/bin`)、配置文件(`/etc`)和可变数据(`/var`)。`/proc`和`/sys`是虚拟文件系统,它们不占用实际磁盘空间,而是提供内核和进程信息的接口。

2025-10-31 22:43:45 377

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除