《HelloGitHub》第 108 期
兴趣是最好的老师,HelloGitHub 让你对开源感兴趣!
简介
HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。
github.com/521xueweihan/HelloGitHub
这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C++、Swift...让你在短时间内感受到开源的魅力,对开源产生兴趣!
以下为本期内容|每个月 28 号更新
C 项目
1、Catime:简洁小巧的 Windows 计时器。这是一款轻巧易用的 Windows 计时器,集显示时间、倒计时和番茄时钟功能于一体。它采用 C 语言编写,体积小、占用少,支持透明界面。用户可以调整界面大小和位置,设置超时动作(锁屏/通知/关机),以及自定义颜色和字体,满足个性化需求。来自 @VerSion1312 的分享

地址:github.com/vladelaina/Catime
2、nq:Unix 命令行任务队列工具。这是一个轻量级命令行队列工具,用户可以将任务添加到队列中,并在后台按顺序执行。它支持在 Linux、FreeBSD 和 macOS 等系统上运行,适用于需要依次执行多个脚本或命令的场景。
# 将命令加入队列并在后台执行
nq COMMAND
# 等待所有队列中的任务完成
nq -w# 例如,将 make clean 命令加入队列
nq make clean
# 将 make depends 命令加入队列
nq make depends
# 将 make all 命令加入队列
nq make all
# 查看当前任务日志
nqtail 地址:github.com/leahneukirchen/nq
3、xash3d-fwgs:带你重温《半条命》的游戏引擎。这是一款开源的游戏引擎,主要用于运行和修改 GoldSrc 引擎的游戏。GoldSrc 是 Valve 公司用于开发《半条命》等经典游戏的引擎。Xash3D FWGS 通过提供一个兼容、跨平台的游戏引擎,让用户可以在现代系统、移动设备、掌机上运行这些经典游戏,并进行深度修改和扩展,例如添加触屏控制、语音聊天和渲染器选项等功能。来自 @天涯孤雁 的分享
地址:github.com/FWGS/xash3d-fwgs
C# 项目
4、OpenUtau:开源的歌声合成工具。这是一款用于创作和编辑歌声合成作品的工具,兼容 UTAU 的音色库和重采样器。它拥有简洁直观的界面,支持鼠标与键盘协同操作,并提供 MIDI 编辑、歌词调整、音色修改等功能,适用于 Windows、Linux 和 macOS 平台。
地址:github.com/stakira/OpenUtau
C++ 项目
5、Diagon:交互式 ASCII 图表生成器。这是一个交互式的 ASCII 风格图表生成器,可以将类似 Markdown 的表达式转换为 ASCII 艺术形式。它支持生成数学表达式、序列图、树形图、表格、流程图等,并可以将图表导出为 WebAssembly,在网页中展示和交互。
地址:github.com/ArthurSonzogni/Diagon
6、ggwave:通过声音传输数据的工具。这是一款创新的数据传输工具,通过声音在设备间传输少量数据。它采用频移键控(FSK)传输协议,并结合错码(ECC)提升数据传输的可靠性,传输速度在每秒 8-16 字节。
地址:github.com/ggerganov/ggwave
7、wukong-minimap:《黑神话:悟空》小地图插件。这是一款专为《黑神话:悟空》设计的实时地图插件。它完全免费且安装简单,支持实时位置追踪、导航、关键点位,以及地图放大、缩小和隐藏等功能。
地址:github.com/jaskang/wukong-minimap
CSS 项目
8、nord:好看的北极蓝配色方案。这是一个开源的北极蓝主题配色方案,包含 16 种柔和的色调,适用于代码编辑器、终端和网页设计等应用场景。无法亲临北极,也能用这抹宁静的蓝,给视觉一次沉浸式旅行。
地址:github.com/nordtheme/nord
Go 项目
9、gqlgen:Go 语言的 GraphQL 服务器生成库。该项目是用于快速构建 GraphQL 服务的 Go 语言库,可解析 GraphQL 模式文件(.graphql)并生成对应的 Go 代码。它强调类型安全,并支持自定义模型、类型映射、中间件和解析器等功能。
地址:github.com/99designs/gqlgen
10、hcache:快速找到占用大量缓存的罪魁祸首。这是一个快速查找系统中占用空间最大的缓存文件和进程的命令行工具,简单易用方便快捷,支持 JSON、表格和直方图的输出格式。
地址:github.com/silenceshell/hcache
11、wechatDataBackup:一键备份微信聊天记录的工具。该项目是用 Go 语言开发的工具,可一键导出 PC 端微信聊天记录的工具,帮助用户轻松备份、导出、查找重要对话,适用于 Windows 平台。来自 @蠢🐷 的分享
地址:github.com/git-jiadong/wechatDataBackup
Java 项目
12、ysoserial:Java 反序列化漏洞的攻击工具。这是一个专门生成利用 Java 反序列化漏洞载荷(payload)的工具,用于测试和验证 Java 应用程序中的反序列化漏洞。它通过将用户指定的命令封装到特定的 gadget chain 中,并将其序列化为字节流,从而在目标 Java 应用程序中执行指定命令。
地址:github.com/frohoff/ysoserial
JavaScript 项目
13、CloudSaver:开箱即用的网盘资源转存平台。该项目是基于 Vue 3 和 Express 构建的网盘资源搜索与转存平台,支持多资源搜索、豆瓣热门榜单、网盘资源一键转存、多用户等功能,完美适配移动端和 PC 端。
地址:github.com/jiangrui1994/CloudSaver
14、gitify:将 GitHub 通知带入你的系统菜单栏。这是一款开源免费的 GitHub 通知管理工具,可以将 GitHub 通知集成到用户的菜单栏,支持 Windows、Linux 和 macOS 平台。
地址:github.com/gitify-app/gitify
15、hedgedoc:极简的 Markdown 协作平台。这是一款基于 Markdown 的实时协作平台,界面清爽、功能实用,支持多人同时编辑同一份文档,实时同步内容,非常适合小型团队共享和管理文档。
地址:github.com/hedgedoc/hedgedoc
16、mitata:让基准测试变得轻松又高效。这是一款即插即用的基准测试(benchmark)工具,帮助开发者快速、精准地评估代码性能。它提供高精度的测量结果和直观的可视化报告,支持 JavaScript 和 C++ 语言。
import { run, bench, boxplot, summary } from'mitata';function fibonacci(n) {
if (n <= 1) return n;
return fibonacci(n - 1) + fibonacci(n - 2);
}bench('fibonacci(40)', () => fibonacci(40));boxplot(() => {summary(() => {bench('Array.from($size)', function* (state) {const size = state.get('size');yield () => Array.from({ length: size });}).range('size', 1, 1024);});
});await run();
地址:github.com/evanwashere/mitata
17、react-bits:让人惊艳的 React 动画库。该项是集动画与交互于一体的 React 组件库,包含文本动画和背景效果等多种类型。每个组件均提供了 JavaScript 和 TypeScript 版本,并全面支持 CSS 和 Tailwind CSS,满足不同的技术栈,帮助开发者快速构建出色的用户界面。
地址:github.com/DavidHDev/react-bits
Kotlin 项目
18、Alibi:将安卓手机变成行车记录仪。这是一款开源的手机行车记录仪应用,可将手机变成行车记录仪。它会在后台持续录制音视频,并可在需要时保存最近 30 分钟的内容。所有操作均在本地处理,无需联网保护用户隐私。来自 @VerSion1312 的分享
地址:github.com/Myzel394/Alibi
Python 项目
19、audiblez:一键将电子书转换为有声书。这是一款能够将 EPUB 格式的电子书转换为 M4B 格式有声书的桌面工具。它采用 Kokoro-82M 语音合成模型,生成效果流畅自然,支持 CUDA 加速和多种语言,包括中文、英文、日文等。
地址:github.com/santinic/audiblez
20、beaverhabits:无需设定目标的习惯追踪工具。这是一款基于 Python 开发的自托管习惯追踪 Web 应用,帮助用户轻松记录和管理日常习惯。它提供适配移动端的直观界面,专注于习惯的持续养成,而非单纯追求目标达成,让养成好习惯变得更自然。
地址:github.com/daya0576/beaverhabits
21、deepdiff:深度比较 Python 对象的工具。这是一个用于深度比较、搜索和操作 Python 对象数据的 Python 库。它提供了多种模块,支持处理字典、可迭代对象、字符串等 Python 对象的差异,以及内容搜索、哈希生成和增量更新等功能。
地址:github.com/seperman/deepdiff
22、gixy:让 NGINX 配置更安全。这是一个活跃的 NGINX 配置静态分析工具,专注于发现配置中的安全问题。它能够检测多种常见的 NGINX 配置漏洞,如服务器端请求伪造、主机伪造、路径遍历等,支持命令行或在 Docker 和 Kubernetes 中使用。
地址:github.com/dvershinin/gixy
23、toga:轻松打造原生桌面应用的 Python 框架。这是一个简单易用的 Python GUI 框架,专为构建跨平台原生桌面应用而设计。它结合了 Python 的简洁易懂和操作系统的原生体验,支持丰富的组件库和展示动态网页等功能。
import togadef button_handler(widget):print("hello")def build(app):box = toga.Box()button = toga.Button("Hello world", on_press=button_handler, style={"margin": 50, "flex": 1})box.add(button)return boxdef main():return toga.App("First App", "org.beeware.toga.examples.tutorial", startup=build)if __name__ == "__main__":main().main_loop()
地址:github.com/beeware/toga
Rust 项目
24、bili-shadowreplay:B 站直播切片助手。这是一款专为 bilibili 直播设计的切片工具,帮助用户在直播过程中实时生成和管理切片,支持实时切片、直播缓存、编辑切片、记录时间点、投稿以及多账户等功能。
地址:github.com/Xinrea/bili-shadowreplay
25、evcxr:没错 Rust 也有解释器。这是一个交互式的 Rust 编程工具,类似于 Jupyter Notebook 和 IPython。它提供一个交互式的 Rust 编程环境,用户可以实时执行 Rust 代码并查看结果。来自 @chenxu 的分享
地址:github.com/evcxr/evcxr
Swift 项目
26、purchases-ios:一站式应用内购买解决方案。该项目是用于简化应用内购买和订阅实现的 Swift 库,支持 iOS、watchOS、tvOS、macOS 和 visionOS 平台。
地址:github.com/RevenueCat/purchases-ios
人工智能
27、ai-agents-for-beginners:微软开源的 AI Agent 初学者教程。该项目是微软专为初学者打造的 AI 智能代理(AI Agents)教程,内容分为 10 个课程,包含详细的教程、视频和示例代码。
地址:github.com/microsoft/ai-agents-for-beginners
28、ivy:机器学习代码跨框架转换利器。该项目可以将机器学习模型、工具和库从一个框架转换到另一个框架。开发者通过简单的函数即可完成代码的转换,支持 TensorFlow、PyTorch、JAX 等主流框架。
import ivy
import torch
import tensorflow as tfdef torch_fn(x):x = torch.abs(x)return torch.sum(x)x1 = torch.tensor([1., 2.])
x1 = tf.convert_to_tensor([1., 2.])# Transpilation happens eagerly
tf_fn = ivy.transpile(test_fn, source="torch", target="tensorflow")# tf_fn is now tensorflow code and runs efficiently
ret = tf_fn(x1) 地址:github.com/ivy-llc/ivy
29、meeting-minutes:开源的 AI 会议助手。这是一款 AI 驱动的实时会议记录和摘要生成工具,可离线使用。它完全免费且开源,支持自托管、语义搜索、内容导出等功能,适用于 Windows 和 macOS 平台。
地址:github.com/Zackriya-Solutions/meeting-minutes
30、minimind-v:从零开始训练视觉多模态模型。该项目是手把手教你从零开始训练一个 26M 参数的视觉多模态模型,包括完整的训练流程和全套的工具集,成本 1.3 元、耗时仅 1 小时。
地址:github.com/jingyaogong/minimind-v
31、pyspur:AI 智能体可视化开发平台。这是一个基于 Python 的可视化 AI 智能体开发平台,功能强大且简单易用。它支持构建工作流、运行测试用例、记忆管理、文件上传、结构化输出、RAG、多模态和评估等功能,同时兼容 100 多家大模型服务供应商。
地址:github.com/PySpur-Dev/pyspur
其它
32、EffectMidi:打造属于你的 MIDI 键盘灯光秀。这是一个利用 Arduino 开发板控制 88 键 MIDI(音乐数字接口)键盘灯光的开源项目。它由桌面端控制程序和 Arduino 端程序组成,可读取 MIDI 键盘输入,并实时控制灯带效果。来自 @Chiru Mori 的分享
地址:github.com/ChiruMori/EffectMidi
33、jupyterlab:提升 JupyterLab 视觉体验的主题。该项目为 JupyterLab 提供了一个舒适、统一且富有色彩的界面,易于安装和切换,内置多种配色方案,支持 JupyterLab v3 和 v4 版本。
地址:github.com/catppuccin/jupyterlab
34、NetQuality:一键检测网络质量的开源脚本。这是一个方便的网络质量测试脚本,能够快速评估网络质量和性能,支持中英双语、三网 TCP 大包延迟、回程路由、网速测试、国际互联等功能。
地址:github.com/xykt/NetQuality
35、overseas-website-note:出海网站经验总结。该项目是作者在开发海外网站过程中积累的经验,涵盖海外公司注册、银行开户、支付系统对接及网站开发等方面。
地址:github.com/princehuang/overseas-website-note
36、saber:更懂你的手写笔记应用。这是一款开源的手写笔记应用,支持 Android、iOS、Windows、macOS、Linux 等平台。它提供夜间模式、多行公式高亮、密码保护等功能,适用于记录课堂笔记和整理工作思路等场景。
地址:github.com/saber-notes/saber
开源书籍
37、RustBook:Rust 数据结构与算法的开源书籍。这是一本讲解 Rust 数据结构和算法的开源书籍,支持简/繁体中文和英文三种语言版本。全书共 10 章,内容涵盖 Rust 基础、计算机科学概念、算法分析、基本数据结构、递归、搜索、排序、树、图以及实战等。
地址:github.com/QMHTMY/RustBook
38、self-consistent-coder:《自洽的程序员》。这是一本关于程序员如何管理自己的情绪和职业心态的书籍,帮助程序员从负面情绪中解脱出来,更加坦然地面对自己的内心,从而实现“自洽“。
地址:github.com/zhangchenchen/self-consistent-coder
39、The-Art-of-Problem-Solving-in-Software-Engineering_How-to-Make-MySQL-Better:《软件工程中的问题解决艺术:如何让 MySQL 更好》。这是一本通过实际案例分析和解决 MySQL 问题的书籍,结合深入讨论,帮助读者更好地理解逻辑推理、数据结构、算法等计算机基础知识。
地址:github.com/enhancedformysql/The-Art-of-Problem-Solving-in-Software-Engineering_How-to-Make-MySQL-Better
最后
感谢参与分享开源项目的小伙伴们,欢迎更多的开源爱好者来 HelloGitHub 自荐/推荐开源项目。
希望本期内容有你感兴趣的开源项目,兴趣是最好的老师,它能点燃你对开源的热情、勇敢地迈出第一步,随时欢迎你加入开源的大家庭!如果还没看过瘾,点击阅读 往期内容。
- END -
关注「HelloGitHub」第一时间收到更新
点击阅读原文可按照编程语言浏览项目
相关文章:
《HelloGitHub》第 108 期
兴趣是最好的老师,HelloGitHub 让你对开源感兴趣! 简介 HelloGitHub 分享 GitHub 上有趣、入门级的开源项目。 github.com/521xueweihan/HelloGitHub 这里有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、…...
C++可变参数
可变参数C风格的可变参数C风格可变参数的使用 C11可变参数模板递归展开参数包参数列表展开折叠表达式 STL中的emplace插入接口 可变参数 C风格的可变参数 可变参数是一种语言特性,可以在函数声明中使用省略号...来表示函数接受可变数量的参数。 例如典型的printf…...
光传输设备现状
随着运营商准备好其基础设施以应对新一代高带宽应用程序和 AI 部署,光传输网络 (OTN) 市场再次有望实现稳健增长。 隧道的尽头有光亮,OTN 市场在 2024 年最后一个季度表现强劲,设备供过于求的时代已经结束。 供应商表示设备订单量有所增加&…...
Python 笔记 (二)
Python Note 2 1. Python 慢的原因2. 三个元素3. 标准数据类型4. 字符串5. 比较大小: 富比较方法 rich comparison6. 数据容器 (支持*混装* )一、允许重复类 (list、tuple、str)二、不允许重复类 (set、dict)1、集合(set)2、字典(dict)3、特殊: 双端队列 deque 三、数据容器的共…...
nt!IopCompleteReques函数分析之IopUpdateOtherTransferCount和IopDequeueThreadIrp
VOID IopCompleteRequest( IN PKAPC Apc, IN PKNORMAL_ROUTINE *NormalRoutine, IN PVOID *NormalContext, IN PVOID *SystemArgument1, IN PVOID *SystemArgument2 ) 第一部分: if (irp->UserEvent) { (VOID) KeSetEvent( …...
d2025329
目录 一、修复表中名字 二、患某种疾病的患者 三、最长连续子序列 四、二叉树的层序遍历 一、修复表中名字 1667. 修复表中的名字 - 力扣(LeetCode) concat(A,B),将字符串A和B拼接left(str,len),从字符串左边开始截取len个字…...
北斗导航 | 中国北斗卫星导航系统的发展历程——“三步走”战略:背景,信号频点,调制方式,短报文,等
中国北斗卫星导航系统的发展历程按照“三步走”战略逐步推进,从区域服务到全球覆盖,形成了北斗一号、北斗二号、北斗三号三代系统的迭代升级,展现了中国航天科技的自主创新与突破。以下是各阶段的核心内容与发展特点综述:一、北斗一号:中国卫星导航的奠基(1994-2003年) …...
cordova android12+升级一些配置注意事项
1.以android13为例 Cordova Android 13.0.0 cordova platform remove android cordova platform add android13.0.0Cordova Android 13.0.0 这里建议将android-studio升级到最新 build时若是需要到gradled安装失败 建议多试几次 或者直接用网页下载 找到 Android Studio 的 G…...
批量处理word里面表格的空白行
1,随便打开一个word文档。 2,按下Alt F11 VBA编辑器,在左侧的「工程资源管理器」窗口中找到Normal 项目,右键选择插入->模块。 弹出一下弹窗 3,输入一下代码 代码: Sub RemoveEmptyTableRows()Dim tbl As TableDim row As R…...
K8S学习之基础五十七:部署代码扫描工具sonarqube
部署代码扫描工具sonarqube 拉取postgres、sonarqube镜像,在harbor上创建postgres、sonarqube项目,将镜像上传至harbordocker pull postgres docker pull sonarqube docker tat postgres:latest 172.16.80.140/postgres/postgres:latest docker tat sona…...
Nginx 解决具有不安全、不正确或缺少 SameSite 属性的 Cookie方案
针对Nginx中Cookie的SameSite属性配置问题,以下是综合解决方案及注意事项: 一、基础配置方法 全局设置Cookie属性(适用于Nginx直接生成Cookie) 在nginx.conf的location块中通过add_header指令添加: add_header Se…...
音频知识 参数分析
通道布局 参考 通过pcm音频数据计算分贝 理解FFT和信号加窗原理及意义 dts音效大师教程...
使用 rsync 进行服务器文件同步与优化
使用 Rsync 工具在两台 Linux 服务器之间同步文件 Rsync 是一种高效的文件同步工具,它可以在本地或远程服务器之间同步文件和目录。Rsync 通过仅传输文件的变化部分来减少数据传输量,因此特别适合用于定期备份或同步大量数据。本文将详细介绍如何将 A 服…...
MySQL 的 SQL 语句执行顺序
MySQL 的 SQL 语句执行顺序并不完全按照代码的书写顺序执行,而是遵循一套固定的逻辑流程 1. FROM 和 JOIN 作用:确定查询的数据来源,包括表和它们的连接方式(如 INNER JOIN, LEFT JOIN 等)。 细节: 先执行…...
小型水库大坝安全及水雨情监测技术方案
一、小型水库监测系统构成 小型水库雨水情测报和大坝安全监测系统由水库监测站点、通信网络和监测平台等组成,系统总体架构如图所示。 水库监测站点设施包括:雨量计、水位计、视频监视设备、渗压计、量水堰计、变形监测仪器、数据采集仪、遥测终端、水准…...
scala简介和基础语法
Scala简介 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序。Scala 源代码被编译成 Java 字节码,所以它可…...
‘无法定位程序输入点kernel32.dll’详细的修复方法,一键快速修复kernel32.dll
在 Windows 系统运行过程中,若程序提示“无法定位程序输入点 kernel32.dll”,往往意味着程序调用了 kernel32.dll 中不存在或已变更的函数接口。作为系统的核心动态链接库,kernel32.dll 承担着内存管理、进程控制、文件操作等底层功能&#x…...
电源系统的热设计与热管理--以反激式充电器为例
前言 反激电源常用于各种电子设备中,比如充电器、适配器等,它们通过变压器进行能量转换。高温环境可能对电子元件造成影响,特别是像MOSFET、二极管、变压器这样的关键部件,导致效率变低,甚至可能导致功能失效。还有安…...
笔记本电脑更换主板后出现2203:System configuration is invalid,以及2201、2202系统错误的解决
笔记本电脑更换主板后启动出现2203:System configuration is invalid,以及2201、2202系统错误的解决 自用的一台ThinkpadT490笔记本电脑 ,由于主板故障,不得不更换主板,通过某宝购置主板后进行了更换。 具体拆卸笔记本可搜索网络视频教程。 注意: 在更换主板时,注意先拍…...
项目-苍穹外卖(十七) Apache POI+导出数据
一、介绍 二、入门案例 package com.sky.test;import org.apache.poi.xssf.usermodel.XSSFRow; import org.apache.poi.xssf.usermodel.XSSFSheet; import org.apache.poi.xssf.usermodel.XSSFWorkbook;import java.io.File; import java.io.FileNotFoundException; import jav…...
蓝桥杯单片机刷题——E2PROM记录开机次数
设计要求 使用E2PROM完成数据记录功能,单片机复位次数记录到E2PROM的地址0中。每复位一次数值加1,按下按键S4,串口发送复位次数。串口发送格式如下: Number:1 备注: 单片机IRC振荡器频率设置为12MHz。 …...
聚合根的特性
聚合根的特性 聚合根是实体,拥有实体的业务属性和行为,同时也是聚合的管理者,负责协调聚合内的实体和值对象,按照固定的业务规则,完成业务逻辑。 聚合根是聚合对外唯一的接口人,聚合之间以聚合根ID关联的方…...
基于盛科CTC7132交换机核心模块
简介 基于盛科CTC7132 SOC方案构建,通过板对板高速连接器引出32路10G SerDes接口、1路PCIex1、2路管理SGMII接口、3路Uart接口(1路调试串口2路功能串口)、4路I2C接口(2路SOC部分2路PPU部分)、5路SMI接口(1路管理口4路业务口&…...
How to install OpenJ9 JDK 17 on Ubuntu 24.04
概述 OpenJ9 是一款由 IBM 开发并开源的 Java 虚拟机(JVM),现由 Eclipse 基金会管理(名为 Eclipse OpenJ9)。它旨在提供高性能、低内存消耗和快速启动时间,特别适用于云原生和容器化环境。 关键特性 …...
【即插即用涨点模块-卷积】SPDConv空间深度卷积,助力小目标与低分辨有效涨点【附源码+注释】
《------往期经典推荐------》 一、AI应用软件开发实战专栏【链接】 项目名称项目名称1.【人脸识别与管理系统开发】2.【车牌识别与自动收费管理系统开发】3.【手势识别系统开发】4.【人脸面部活体检测系统开发】5.【图片风格快速迁移软件开发】6.【人脸表表情识别系统】7.【…...
全流程剖析需求开发:打造极致贴合用户的产品
全流程剖析需求开发:打造极致贴合用户的产品 一、需求获取(一)与用户沟通(二)观察用户工作(三)收集现有文档 二、需求分析(一)提炼关键需求(二)建…...
《Python Web网站部署应知应会》No4:基于Flask的调用AI大模型的高性能博客网站的设计思路和实战(上)
基于Flask的调用AI大模型的高性能博客网站的设计思路和实战(上) 摘要 本文详细探讨了一个基于Flask框架的高性能博客系统的设计与实现,该系统集成了本地AI大模型生成内容的功能。我们重点关注如何在高并发、高负载状态下保持系统的高性能和…...
使用 Docker Compose 在单节点部署多容器
Docker Compose 是什么 Docker Compose 是一个用于运行多容器应用的工具, 通过一个docker-compose.yml文件, 配置应用的服务、网络和卷,然后使用简单的命令启动或停止所有服务 为什么需要 Docker Compose 当你有一个包含多个相互依赖的容器应用时,手动…...
STM32_HAL开发环境搭建【Keil(MDK-ARM)、STM32F1xx_DFP、 ST-Link、STM32CubeMX】
安装Keil(MDK-ARM)【集成开发环境IDE】 我们会在Keil(MDK-ARM)上去编写代码、编译代码、烧写代码、调试代码。 Keil(MDK-ARM)的安装方法: 教学视频的第02分03秒开始看。 安装过程中请修改一下下面两个路径,避免占用C盘空间。 Core就是Keil(MDK-ARM)的…...
在 React 中,组件之间传递变量的常见方法
目录 1. **通过 Props 传递数据**2. **通过回调函数传递数据**3. **通过 Context API 传递数据**4. **通过 Redux 管理全局状态**5. **通过事件总线(如 Node.js 的 EventEmitter)**6. **通过 Local Storage / Session Storage**7. **通过 URL 查询参数传…...
