- 博客(3697)
- 资源 (11)
- 收藏
- 关注
原创 面向对象设计核心原则之一:SOLID原则之依赖倒置原则(依赖反转原则)(Dependence Inversion Principle, DIP)介绍(高层模块不应依赖低层模块,二者都应依赖抽象)
依赖倒置原则(Dependence Inversion Principle, DIP)是面向对象设计中的核心原则之一,属于SOLID原则的重要组成部分。它由罗伯特·C·马丁(Robert C. Martin)高层模块不应依赖低层模块,二者都应依赖抽象;抽象不应依赖细节,细节应依赖抽象。核心思想Payment。
2025-09-10 17:18:25
442
原创 DRY principle(Don‘t Repeat Yourself)介绍(避免重复代码)(YAGNI原则、SOLID原则、单一职责原则(SRP)、KISS原则)
DRY()是软件开发中的核心原则之一,旨在通过避免重复代码来提高代码的可维护性、可读性和复用性。系统中的每一块知识(逻辑或功能)应有唯一、明确且权威的表示。核心概念。
2025-09-10 16:24:21
390
原创 Docker Compose healthcheck介绍(监控容器中服务的实际健康状态)数据库健康检查pg_isready
将健康检查逻辑封装到脚本中,例如。
2025-09-08 20:22:56
631
原创 docker-compose.yaml文件介绍
文件通过 YAML 格式定义服务、网络、数据卷等配置。定义容器化服务,每个服务是一个容器实例。,可以快速定义和管理复杂的应用程序栈。
2025-09-08 19:08:22
463
原创 Docker多共享网络配置策略(Docker多网络、Docker networks、Docker Compose网络、Docker网络、Docker共享网络)
取决于系统复杂度、安全需求和运维策略。对于简单的单体应用,单个网络可能足够;但对于微服务或生产环境,多网络是更合理的选择。在 Docker Compose 中配置多个共享网络(
2025-09-08 18:03:53
727
原创 Flask调试模式(Flask Debug Mode)介绍(交互访问Interactive access、交互式调试器Interactive Debugger)
Flask 的调试器默认会生成一个随机的 PIN 码(显示在控制台),用于保护调试页面。确保在开发时通过本地网络访问,避免 PIN 泄露。,允许开发者通过浏览器直接与服务器进行交互,查看错误详情、调试代码,甚至执行临时的 Python 代码片段。当启用调试模式后,每次修改代码并保存时,Flask 会自动重启服务器,无需手动重启。如果调试模式被暴露给公网,攻击者可能利用此功能执行恶意代码(例如删除文件、窃取数据等)。是指在开发过程中,当应用程序发生错误时,Flask 会提供一个。这会自动启用调试模式。
2025-09-08 17:33:06
640
原创 docker-compose build命令及参数
文件中的配置构建服务镜像的命令。是 Docker Compose 中用于根据。配置项用于定义镜像的构建方式。
2025-09-07 22:30:20
710
原创 docker build命令及参数介绍
通过合理使用这些参数,可以高效地构建、调试和优化 Docker 镜像。构建镜像的核心命令。是 Docker 中用于根据。
2025-09-07 21:53:58
1008
原创 Dockerfile解析器指令(Parser Directive)指定语法版本,如:# syntax=docker/dockerfile:1
用于指定 Dockerfile 使用的语法版本。它的作用是告诉 Docker 构建工具(如 BuildKit)如何解析和处理当前 Dockerfile 的语法。是 Dockerfile 中的。
2025-09-07 21:33:28
859
原创 WAL file(Write-Ahead Logging,预写式日志)介绍(PostgreSQL实现数据持久性和崩溃恢复的核心机制)重放记录(replay)、点到时间恢复(PITR)WAL文件、LSN
WAL 文件是 PostgreSQL 实现数据可靠性、崩溃恢复和高可用性的核心组件。它们通过记录所有数据库变更操作,确保即使在异常情况下也能恢复数据。理解 WAL 文件的生成、管理和优化,对于数据库性能调优和故障排查至关重要。
2025-09-07 15:55:54
780
原创 安全标头(security headers)是什么?(HTTP响应头的一部分,用于增强Web应用的安全性)CSP、nosniff、X-Frame-Options、HSTS、Referrer
是HTTP响应头的一部分,用于增强Web应用的安全性,防止常见的攻击(如XSS、点击劫持、MIME类型嗅探等)。它们通过定义浏览器如何处理页面内容、限制资源加载行为或强制使用安全协议(如HTTPS)来保护用户和服务器。通过合理配置安全标头,可以显著提升Web应用的安全性,同时确保与Nginx的反向代理、路由规则和SSE功能兼容。
2025-09-06 21:53:56
804
原创 Shell RC文件介绍(Run Commands 文件)(用于配置Shell环境的启动脚本文件,通常以.rc为扩展名,如.bashrc、.zshrc等)~/.profile、/etc/profile
通过合理配置RC文件,用户可以显著提升Shell的效率和个性化程度。如果需要进一步优化配置,可以参考社区提供的模板(如。
2025-09-06 21:15:16
834
原创 什么时候用no,什么时候用non,什么时候用not?
英语中 no、not 和 non 都表示否定但用法不同: no 作形容词/副词直接否定名词(No money)、加强语气(He is no fool)或表示禁止(No smoking); not 是副词,需与助动词连用否定动词/形容词(I do not like)或构成部分否定(Not everyone); non 是前缀构成复合词(Non-smoker)。 常见错误包括混淆 no/not 否定名词、错误使用 non 前缀等。掌握三者区别可避免语法错误。
2025-09-06 21:06:09
634
原创 前端hot reload(热重载)介绍(允许开发者不刷新整个页面,实时更新修改的代码,如模块、组件或样式,从而快速看到效果)(模块粒度更新、Live Reload强制刷新页面)
基本概念Hot Reload(热重载)是前端开发中的一项技术,允许开发者在不刷新整个页面的情况下,实时更新修改的代码(如模块、组件或样式),从而快速看到效果。它与(强制刷新整个页面)不同,Hot Reload 通过模块粒度更新来保持应用状态(如表单数据、组件状态等),显著提升开发效率。
2025-09-06 17:30:59
752
原创 80(HTTP默认端口)和8080端口(备用HTTP端口)区别
如果需要更灵活的端口管理,可以根据需求修改服务的监听端口(例如通过配置文件调整)。
2025-09-06 16:36:33
568
原创 ubuntu24.04报错:make: command not found(没有make命令、没有make工具)apt install build-essential
make。
2025-09-03 22:25:24
618
原创 pip freeze如何生成带有约束符号大于符号小于符号的requirements.txt(版本约束格式)pip-compile工具、requirements.in
文件全是用大于小于符号限定范围的,结果我装好后,执行了一下pip freeze,结果文件都变成等号了,怎么办?如果你的目标是记录当前环境中已安装的包版本(例如用于部署或调试),则无需修改。如果你需要更灵活的版本约束(例如允许某些包的版本浮动),可以手动修改。中的版本约束安装,确保文件中的版本约束是明确的(例如。文件中的版本约束格式不同。如果你希望安装依赖时严格按照。文件生成带有版本约束的。替换为合适的符号(如。
2025-09-03 22:09:02
911
原创 pip-tools介绍(一个用于管理Python项目依赖关系的工具集)(pip-compile、pip-sync、requirements.in、requirements.txt)
是 Python 项目依赖管理的利器,通过自动化解析和锁定依赖版本,解决了手动管理依赖的复杂性和风险。它不仅提升了开发效率,还增强了项目的可维护性和稳定性,是构建高质量 Python 项目的推荐工具。是一个用于管理 Python 项目依赖关系的工具集,旨在解决依赖包版本冲突、环境一致性等问题。它通过自动生成和锁定依赖版本,确保项目在不同环境中(开发、测试、生产)的依赖一致性和稳定性。确保开发、测试和生产环境使用相同的依赖版本,避免因版本差异导致的问题。在多个服务中统一依赖版本,减少环境差异导致的故障。
2025-09-03 22:06:49
676
原创 requirements.in文件生成与使用(依赖定义文件,用于指定项目顶级依赖库,不指定具体版本)(pip-tools、requirements.txt、pip-compile)大于小于、版本约束文
灵活控制版本避免手动维护是 Python 项目依赖管理的核心文件,它通过分离依赖定义与版本锁定,实现了依赖管理的自动化和可重复性。通过遵循以下原则,可以高效使用。
2025-09-03 21:57:00
681
原创 pip-compile工具介绍(用于生成和管理Python项目的依赖版本锁定文件requirements.txt))(requirements.in、pip-sync)
pip-compile是pip-tools的核心工具,用于生成精确锁定版本的Python依赖文件(如requirements.txt)。它能解析项目的requirements.in、setup.py或pyproject.toml文件,自动计算所有依赖及其子依赖的兼容版本,确保环境一致性。主要功能包括版本锁定、依赖升级(--upgrade参数)和与CI/CD集成,支持通过pip-sync同步环境。适用于开发、测试和生产环境,有效解决依赖冲突问题,提升项目稳定性。典型工作流程包括创建依赖文件、编译生成锁定版本、
2025-09-03 21:39:11
889
原创 Python怎么根据缺失模块名找到正确包名?(pip search <模块名>)PyPI(Python Package Index)命名规则、Python包命名规范
Python 的包名和模块名之间的差异是由。在较新版本中被弃用,推荐使用。或手动搜索 PyPI。
2025-09-03 19:19:08
957
原创 python pip命令介绍(pip指令)pipdeptree、pip.ini
是 Python 包管理的核心工具,掌握其命令和参数能显著提升开发效率。对于团队协作,建议通过。管理依赖,并结合虚拟环境避免版本冲突。
2025-09-03 18:34:38
1050
原创 pip completion工具作用(生成命令行自动补全脚本)(与pip-bash-completion区别)
的工具,它能够让你在使用 Bash、Zsh 或 Fish 等 Shell 时,通过按。通过简单的配置,即可实现命令行自动补全,减少重复输入和错误。是提升 Python 开发效率的小工具,尤其适合频繁使用。自动补全能避免拼写错误,确保命令和参数的准确性。),还支持高级参数(如镜像源、虚拟环境路径等)。命令及其参数,从而提升操作效率。补全功能不仅适用于基础命令(如。
2025-09-03 18:33:32
934
原创 虚拟机NAT模式通过宿主机(Windows)上网不稳定解决办法(无法上网)(将宿主机设置固定ip并配置dns)
虚拟机通过NAT模式连接宿主机(windows上网),虚拟机已正确配置网关(192.168.21.2)、dns(114.114.114.114、8.8.8.8),宿主机连接自习室wifi上网(动态ip),发现虚拟机上网不稳定,有时甚至无法上网。因为我的笔记本是连的自习室的wifi,ip是动态获取的,怀疑那边dns没配好,导致解析域名有问题,然后我把wifi改成固定ip,加上了114.114.114.114和8.8.8.8两个dns,然后发现虚拟机上网变得稳定了。,而是依赖于宿主机的网络栈。
2025-09-03 15:46:34
659
原创 Linux 安装docker-compose安装方法(安装docker compose安装)
本文介绍了在Linux系统上安装Docker Compose的两种主流方法。推荐方法一通过curl下载二进制文件安装,包括下载最新版本、国内加速下载、赋予执行权限等步骤。方法二适用于无法访问GitHub的环境,需手动下载安装。文章还提供了注意事项(版本选择、镜像加速、权限问题)和常见问题解决方案(命令识别、版本兼容性、下载速度)。最后建议优先使用方法一,安装完成后通过docker-compose --version验证是否成功。
2025-09-02 19:51:17
733
原创 ubuntu24.04网络无法访问(网络问题)NAT网关写错了
我勒个去,这网关怎么是192.168.121.2!执行了netplan apply后,看起来也没啥问题呀?
2025-09-02 17:02:57
729
原创 Netplan警告:`gateway4` has been deprecated, use default routes instead.(Netplan模板)
通过以上步骤,你可以消除弃用警告并确保网络配置兼容未来的 Netplan 版本。你遇到的警告信息表明在 Ubuntu 24.04 的。打开你的 Netplan 配置文件(例如。
2025-09-02 16:08:49
901
原创 安装docker报错:E: Unable to locate package docker-model-plugin(ubuntu版本过旧)
(如 22.04 Jammy 或 24.04 Noble)。通过以上步骤,您应能成功安装 Docker 并规避。已经过期(EOL),而阿里云镜像源中未提供。根据您的安装日志和上下文信息,问题根源在于。由于 Ubuntu 20.04 已停止支持,如果无法立即升级系统,可。
2025-09-02 15:43:15
966
原创 下载ubuntu镜像下载
https://ubuntu.com/download/alternative-downloadsᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ ᅟᅠ
2025-09-02 15:11:05
881
原创 安装nodejs安装node.js安装教程(Windows & Linux)
如果你需要管理多个 Node.js 版本(如测试不同版本兼容性),推荐使用。为了避免占用 C 盘空间,可以修改全局模块和缓存的存储路径。适用于需要管理多个 Node.js 版本的场景。,可自定义路径以避免权限问题或节省空间。的安装和配置步骤,适用于。如果遇到其他问题,可以参考。
2025-09-01 19:33:13
765
原创 (ssh客户端)远程连接工具windterm使用教程(ssh工具、远程工具)
确实好用,之前用mobaXterm,把windows编码改成utf-8后,mobaxterm设备文件夹中文都变乱码了,也不知道怎么改回来用windterm没有这个问题,而且它似乎mobaxterm有的功能它都有,而且还附加了很多方便的功能,比如快速命令(位于左下角,配置在右下角),可以快速执行命令或脚本。
2025-09-01 16:57:57
614
原创 [Warning] [context7] mcpServers.context7: Windows requires ‘cmd /c‘ wrapper to execute npx
这个警告是 Windows 系统特有的,需要通过。
2025-08-31 21:39:26
833
原创 PostgreSQL pgAdmin查询工具执行SQL语句解释和解释优化EXPLAIN ANALYZE作用(分析SQL查询的执行计划和性能表现)添加索引Index Scan避免全表扫描Seq Scan
功能主要用于分析 SQL 查询的执行计划和性能表现,帮助开发者或数据库管理员优化查询效率。这表明实际返回了 1000 行,且过滤掉了 9000 行数据,说明全表扫描效率较低,可能需要添加索引。通过分析执行计划,可以判断数据库是否选择了最优路径。,并记录实际的运行时间、扫描行数、内存使用等信息。根据执行计划中的资源消耗(如排序/哈希操作),调整。命令,可以显示数据库优化器对 SQL 查询的。如果预估值与实际值差异较大,运行。如果执行计划显示全表扫描,可为。不仅显示预估的执行计划,还会。),并且没有使用索引。
2025-08-30 21:20:10
906
原创 PostgreSQL索引类型一览(B-Tree、BTree、Hash索引、GiST索引:通用搜索树、SP-GiST索引:空间分区GiST、GIN索引:广义倒排索引、BRIN索引:块范围索引)
PostgreSQL 的索引类型非常丰富,开发者可以根据具体场景选择合适的索引类型以优化查询性能。
2025-08-30 20:45:44
947
原创 psql命令(PostgreSQL命令行工具)(pgAdmin内置、DBeaver、Azure Data Studio)数据库命令行工具
是 PostgreSQL 数据库的官方命令行客户端工具,广泛用于数据库管理、开发和调试。
2025-08-30 20:33:05
1556
1
原创 PostgreSQL Heap访问方法(Heap Access Method)(基于堆表(Heap Table)的存储结构,是PG默认表存储和访问方式)MVCC机制、顺序扫描、HOT更新
Heap 访问方法是 PostgreSQL 实现堆表存储和访问的核心机制,通过分页管理、MVCC 和高效 API 实现数据的存储与检索。它是顺序扫描、HOT 更新等特性的基础,也是 PostgreSQL 高性能和灵活性的关键支撑。
2025-08-30 20:06:04
688
Dify+DeepSeek - Excel数据一键可视化(创建步骤案例)-DSL工程文件(可直接导入)
2025-03-05
Dify+DeepSeek - Excel数据一键可视化(创建步骤案例)-Markdown示例文件
2025-03-05
auto.js安装包:app-v6-armeabi-v7a-release-unsigned-signed.apk
2024-02-11
auto.js安装包:app-v6-universal-release-unsigned-signed .apk
2024-02-10
raid卡配置教程(基于Ubuntu 20.04 操作系统安装指导书 (鲲鹏 920 处理器)安装)
2023-12-12
Ubuntu 20.04 操作系统 安装指导书 (鲲鹏920处理器)
2023-12-12
ffmpeg h264编码格式测试视频
2023-12-10
vsftpd-3.0.5
2022-08-22
Intel-RealSense-D400-Series-Datasheet
2019-07-29
CMD_right_click_key_menu_with_administration.reg
2019-08-29
为什么C++对整型常量的指针用const_cast并修改值后,出现了两个不一样的值?
2023-08-23
TA创建的收藏夹 TA关注的收藏夹
TA关注的人