发现

社区文章

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

Java中的final关键字

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

MySQL 填坑

大量sleep进程 用root账户登录mysql后,显示当前所有进程 mysql > show processlist; +----+-----------------+-----------------+-----------+---------+------+------------------...

logrotate切割nginx日志

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

在Ubuntu 20.04上添加swap交换空间

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

菜根谭

《菜根谭》是以处世思想为主的格言式小品文集,采用语录体,揉合了儒家的中庸思想,道家的无为思想和释家的出世思想的人生处世哲学的表白。 [TOC] 1. 弄权一时,凄凉万古 栖守道德者,寂寞一时;依阿权势者,凄凉万古。达人观物外之物,思身后之身,守受一时之寂寞,毋取万古之凄凉。 [解释] 一个坚守道德规...

Python 线程池

1. 线程池简介 在现代编程中,尤其是进行高性能和高并发编程时,线程池是一种非常重要的技术。线程池可以有效地管理和复用线程资源,提高程序的执行效率和响应速度。接下来,我们将详细介绍线程与进程的区别,什么是线程池,以及线程池的优势。 1.1 线程与进程的区别 在计算机科学中,线程和进程是两个基本的并发...

MySQL 触发器

前言 触发器(TRIGGER)是由事件来触发某个操作。这些事件包括insert语句、update语句和delete语句。当数据库系统执行这些事件时,就会激活触发器执行相应的操作。 一、创建触发器 触发器是由insert、update和delete等事件来触发某种特定操作。满足触发器的触发条件时,数据...

FastAPI 项目使用 PyArmor 外置许可证混淆与授权

Python 3.13.5 Pyarmor 9.1.8 (trial) 一、背景与目标 在向多家企业交付 FastAPI 服务时,我们既要保护源码避免泄露,又要灵活控制授权(机器绑定 + 到期)。PyArmor 8.5+ 的 外置许可证(Runtime Key) 机制可以让我们 一次混淆代码、多次下...

spring security中的permitAll和anonymous

在Spring Security中,permitAll和anonymous是两个用于配置安全策略的表达式,它们用于定义对特定资源的访问权限。虽然它们在某些情况下可能产生类似的行为,但它们的意图和用途是不同的。 permitAll 含义: permitAll用于指定某个资源是完全开放的,不需要任何安全...

Python 树结构

Python实现树结构的例子 class ActionNode: children: dict[str, "ActionNode"] 简要解释如下: - children: dict[str, "ActionNode"]: - children 是一个字典属性。 - 字典的键 (key) 是字符串 ...

MySQL 创建用户并指定权限

创建用户并指定权限 创建用户 CREATE USER 'username'@'host' IDENTIFIED BY 'password'; username:你将创建的用户名 host:指定该用户在哪个主机上可以登陆,如果是本地用户可用localhost,如果想让该用户可以从任意远程主机登陆,可以...

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

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

MySQL UDF sys_exec()

问题: mysql中没有sys_exec()用户自定义函数 系统 Ubuntu20.04 MySQL5.7.35 1. 下载代码 从这个仓库下载代码 https://github.com/mysqludf/lib_mysqludf_sys 进入到下载好的文件中 2. 修改Makefile 查看Mak...

HTTP状态码

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

玩转Python终端输出:让你的文本“靓”起来!

在日常编写Python代码的过程中,我们常常会在终端中打印一些内容。好吧,普通的print()看起来已经够用了,但如果你想让输出变得更“靓”,更加吸引眼球——比如让文本带上色彩!这就是我们今天要聊的内容:如何用Python在终端输出炫酷的彩色文字! 让我们直接上代码吧: print(f"\033[9...

中国各省份的简称

中国各省份简称 香港、澳门和台湾地区有不同的行政区划,因此它们的简称不在这个列表中。...

修改SSH端口

1. 修改ssh配置文件 vim /etc/ssh/sshd_config 找到或者加上一行 Port {num} 比如 Port 23456 2. 重启服务 service sshd restart 或者 systemctl restart sshd.service...

Python 模块 backoff

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

Ubuntu22.04 命令行操作蓝牙设备

命令行连接蓝牙设备 系统 Ubuntu22.04 1. 安装蓝牙管理工具 sudo apt-get update sudo apt-get install bluez 2.确认蓝牙服务状态 sudo systemctl status bluetooth 如果服务没有运行,使用以下命令启动它 sudo...

ReAct

ReAct 是一种结合了推理和动作的人工智能代理架构,旨在增强大型语言模型(如GPT-4)的能力,使其在解决复杂问题时能够进行更有效的推理和执行相应的动作。ReAct 的名称源自 "Reasoning and Acting"(推理与行动)的缩写。 ReAct 的主要特点和优势包括: 结合推理和行动:...