发现

社区文章

来自 MMao 贡献者的精选知识。

Python Pydantic 中的 alias 字段别名详解:优雅解决命名规范冲突

在现代软件开发中,我们经常需要处理不同系统之间的数据交换。Python 开发者通常遵循 PEP 8 规范使用 snake_case 命名,而前端 JavaScript 开发者习惯使用 camelCase,数据库可能又有自己的命名约定。如何在保持代码规范的同时实现系统间的无缝对接?Pydantic 的...

Prompt 工程 之 批量处理

Batch API 适用于无需即时反馈但需要处理大量请求的场景。以下是一些典型的任务和最佳实践提示,帮助您更好地使用 Batch API 关键信息提取 处理和分析大量文档,如:论文摘要生成、招投标信息提取等。 角色:你是一个专业的文本信息提取器。 需要提取的【文本】: """ {正文} """ 任务...

portainer 集群管理

Portainer 是一个轻量级且直观的开源容器管理工具,专为简化和管理 Docker 和 Kubernetes 环境而设计。它提供了一个用户友好的图形界面,使用户能够方便地管理容器、镜像、网络和卷。 通过docker安装portainer。 portainer/portainer-ce:alpin...

HTTP状态码

HTTP状态码分类 HTTP状态码列表 ------------ Switching Protocols 200 已接受。已经接受请求,但未处理完成 No Content 206 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择Found 304...

终端 ANSI 转义序列颜色与样式详解

在日常的终端操作中,我们常常会看到带颜色或特殊样式的输出,这些效果大多是通过 ANSI 转义序列 实现的。本文将详细介绍常用的颜色与样式参数,以及它们的使用方法。 什么是 ANSI 转义序列 ANSI 转义序列是一种在终端中控制文本显示样式的标准方法,通过特定的转义码(Escape Sequence...

logrotate切割nginx日志

环境: Ubuntu18.04 logrotate是一个日志管理程序,用来把旧的日志文件删除(备份),并创建新的日志文件,这个过程称为“转储”。可以根据日志的大小,或者根据其使用的天数来转储,这个过程一般由cron来执行。 logrotate还可以用于压缩日志文件,以及发送日志到指定的email。 ...

在 Windows 11 上搭建 SFTP 服务器并自定义默认路径

在本文中,我们将介绍如何在 Windows 11 上搭建一个 SFTP 服务器,并允许用户同时使用 SFTP 和 SSH 连接。此外,我们将展示如何自定义默认路径。 1 安装 OpenSSH 服务器 1.1 打开“设置”应用 你可以通过按 Win + I 快捷键快速打开“设置”。 1.2 导航到“系...

Python 开发模式安装

在Python开发中,"开发模式安装"(也被称作“可编辑模式安装”)是一种特殊的安装方式,它允许开发者在不重新安装包的情况下,对代码进行修改并立即看到这些更改的效果。这在开发和调试自定义Python包时非常有用。 如何进行开发模式安装 可以通过以下命令进行开发模式安装: pip install -e...

Java中的final关键字

@Service public class MyService { private final AnotherService anotherService; @Autowired public MyService(AnotherService anotherService) { this.anoth...

Redis不断重启

系统 Ubuntu 20.04.6 Redis 5.0.7 现象: Redis每隔1分钟或者2分钟会自动重启,日志(/var/log/redis/redis-server.log)如下 signal-handler (1710819652) Received SIGTERM scheduling s...

如何使用 qpdf 工具消除 PDF 文件的权限限制

如何使用 qpdf 工具消除 PDF 文件的权限限制 PDF 文件是一种常见的文档格式,广泛用于电子书、手册、合同等多种场景。为了保护文件的版权或避免内容被非法复制,许多 PDF 文件会设置权限限制,如禁止复制、打印或编辑。这些限制通常通过 PDF 的加密机制实现。qpdf 是一个开源工具,可以用来...

ffmpeg转换视频格式: mkv -> mp4

首选需要安装ffmpeg,然后将ffmpeg可执行文件的路径设置到环境变量PATH中 将以下脚本拷贝到convert.bat文件中,将此文件放置到有mkv视频格式的文件夹中,双击convert.bat文件运行,循环转换视频,从mkv转换为mp4格式。 注意: 在使用notepad++编辑conver...

Ubuntu版本号和发布名称对照表

发布日期 Noble Numbat 23.04 2022年4月21日 Hirsute Hippo 20.04 LTS 2019年4月18日 Bionic Beaver 17.04 2016年4月21日 Vivid Vervet 14.04 LTS 2013年4月25日 Precise Pangoli...

iptables

iptables iptables/ip6tables命令,用于在Linux内核中设置、维护和检查IPv4和IPv6数据包过滤规则的表,从而实现IPv4/IPv6数据包过滤和NAT的管理工具。它可以定义多个不同的表,每个表中包含多个预定义的链,也可能包含用户自定义的链。每个链都是一个规则列表,用来匹...

Flask项目使用ajax发送请求,解决 CSRF

在flask项目中,一般都配置了CSRF,表单提交时,带上csrf_token字段即可,如果是ajax方式提交,需要设置csrf_token const csrfToken = $('meta[name=csrf-token]').attr('content'); const postData = ...

Python装饰器

Python中的装饰器是一种非常有用的功能,它允许你在不修改原有函数代码的前提下,给函数增加新的功能。你可以把装饰器想象成一个包装纸,它可以把一份礼物(函数)包装起来,增加一些装饰(功能),但不改变礼物本身。装饰器在Web开发、日志记录、权限校验等多个领域都有广泛应用。 基本原理 装饰器本质上是一个...

在Ubuntu 20.04上添加swap交换空间

在Ubuntu 20.04上添加swap交换空间 参考连接 https://blog.csdn.net/sxf1061700625/article/details/125781709 swap是物理RAM内存已满时使用的磁盘空间。 当Linux系统用完RAM时,非活动页面将从RAM移动到交换空间。 ...

Python 模块 backoff

当谈论 Python 中的重试和退避策略时,还有另一个非常常用的库,那就是 backoff。backoff 是一个用于实现退避(exponential backoff)和重试逻辑的库,它可以帮助你在出现错误或异常时,以指数增长的方式进行重试,从而减轻服务器负担,提高代码的健壮性。 安装: 你可以使用...

Redis报错too many open files

Redis报错了 too many open files 这时候应该通过redis-cli SHUTDOWN停止不掉redis-server,因为connect refuse 可以直接kill掉进程 查看PID ps -e | grep redis 杀死进程 kill -9 PID 杀死进程后,通过...

格式化字符串字面值 (简称为 f-字符串)

格式化字符串字面值 (简称为 f-字符串)在字符串前加前缀 f 或 F,通过 {expression} 表达式,把 Python 表达式的值添加到字符串内。 格式说明符是可选的,写在表达式后面,可以更好地控制格式化值的方式。下例将 pi 舍入到小数点后三位: import math print(f'...