高效码农

撰写、分享国内外先进的IT技术
June 21, 2024

宝塔安装PHP7.2和PHP8.1 PHP-FPM重启问题

问题描述宝塔安装了安装PHP7.2和PHP8.1,最近发现服务器内容一直慢慢升高;查看进程发现PHP-FPM 8.1 每隔10分钟重启,重启过程中报错,并且会重新启动2个PHP-FPM 8.1的进程,同时kill掉之前启动2个中的一个进程,所以进程会一直增加,子进程也在一直增加最终导致将内存占满。ERROR: Another FPM instance seems to already lis...
June 17, 2024

什么才是好的 REST API?

如今,任何具备基本编程技能的人都可以构建 API。FastAPI 等框架提供了直观的界面,并且文档齐全,让构建 API 变得非常简单。但是,如何才能交付和维护其他开发人员喜爱的、始终按预期运行且扩展性良好的强大 REST API?本文提供了 REST API 最佳实践的概述,涵盖:API 设计开放API验证速率限制异步处理监控我不会在每个部分中讲得太详细,但是我会为那些有兴趣深入了解的人提供...
June 14, 2024

为什么 QUIC 优于 TCP?

介绍在过去的三十年里,HTTP (超文本传输​​协议)一直是互联网的支柱。借助 HTTP,我们能够浏览网页、下载文件、播放电影等。多年来,该协议不断发展,并取得了重大改进。HTTP 协议是一种应用协议,在TCP(传输控制协议)上运行。TCP 协议存在一些限制,导致 Web 应用程序响应速度较慢。为了克服 TCP 的缺点,谷歌开发了一种名为 QUIC 的改变游戏规则的传输协议。几年前,QUIC...
May 31, 2024

如何使用命令行或 Python 在 Mac 上免费使用 OCR

操作步骤如下:在“应用程序”文件夹中打开“快捷方式”应用点击“ + ”按钮创建新的快捷方式在右侧边栏中搜索“提取文本”您应该在可能的操作列表中看到“从图像中提取文本”。将其从右侧边栏拖到左侧的主区域在左侧的“从...中提取文本”操作中,单击淡蓝色的“图像”选择“快捷输入”你会看到一个大大的“从任何地方接收任何输入”操作出现在“从快捷方式输入中提取文本”上方。一切都很好,保持原样在右侧边栏中,...
April 17, 2024

MySQL索引18连问

前言过完这个节,就要进入金银季,准备了 18 道 MySQL 索引题,一定用得上。1. 索引是什么索引是一种数据结构,用来帮助提升查询和检索数据速度。可以理解为一本书的目录,帮助定位数据位置。索引是一个文件,它要占用物理空间。2. MySQL索引有哪些类型数据结构维度B+tree 索引: B+树是最常用的索引类型,所有数据都会存储在叶子节点上,时间复杂度是 O(logn) ,擅长范围查询。H...
April 12, 2024

Caddy 设置为反向代理并快速简化对服务的访问。

Caddy 是一个用 Go 编写的现代开源 Web 服务器。它的特点是简单、强大以及自动获取和更新 SSL 证书的功能。与传统的 Web 服务器不同,Caddy 以其易用性而闻名,默认情况下强调自动化和安全性。但 Caddy 的功能不仅仅限于服务静态网站和应用程序;它作为反向代理大放异彩——位于内部应用程序前面的服务器,并将客户端(例如,Web 浏览器)请求转发到适当的服务器。选择 Cadd...
April 6, 2024

PHP系列:安全篇

问题与简答安全篇跨站脚本攻击(XSS)跨站脚本攻击(Cross Site Script,简称 XSS),利用网页开发时留下的漏洞,通过巧妙的方法注入恶意指令代码到网页,使用户加载并执行攻击者恶意制造的网页程序XSS 示例$input = $_GET["param"]; echo "<div>" . $input . "</d...
April 5, 2024

PHP系列:问题与简答

问题与简答PHP 篇echo、print、print_r、var_dump 区别echo和print是语言结构、print_r和var_dump是普通函数echo:输出一个或多个字符串print:输出字符串print_r:打印关于变量的易于理解的信息var_dump:打印关于变量的易于理解的信息(带类型)拓展阅读 《echo、print、print_r、var_dump区别》单引号和双引号的...
April 4, 2024

PHP系列:PHP 反射详解

PHP 反射详解面向对象编程中对象被赋予了自省的能力,而这个自省的过程就是反射。反射,直观理解就是根据到达地找到出发地和来源。比如,一个光秃秃的对象,我们可以仅仅通过这个对象就能知道它所属的类、拥有哪些方法。反射是指在PHP运行状态中,扩展分析PHP程序,导出或提出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取信息以及动态调用对象方法的功能称为反射API。如何使用反射API如何...
April 3, 2024

PHP系列:php数组

PHP 数组简介这些函数允许你通过不同的方式来使用和操作数组。数组是存储、管理和操作变量组的必不可少的工具。PHP 支持简单数组和多维数组,数组可由用户自己创建也可以由其它函数创建。有很多特殊的数据库处理函数可以从数据库查询中返回数组以及一些返回数组的函数。预定义常量下列常量作为 PHP 核心的一部分总是可用的。CASE_LOWER (integer)CASE_LOWER 用在 array_...
March 29, 2024

K3S+rancher安装报错汇总

一、权限问题报错信息:/bin/sh: error while loading shared libraries: libreadline.so.7:cannot open shared object file: Permission denied环境系统:openEulerdocker版本:19.03解决方案:1、进入docker容器:docker exec -it <contain...
March 26, 2024

最流行的网站架构----边缘平台架构:概念与产品

互联网开发的核心是什么?答案可能就是网站架构。你要选择一个合适的架构,用来组织代码,然后在服务器跑起来。今天,我想给大家介绍,眼下最流行的一种网站架构。它非常合理,效果极佳,而且借助云服务商提供的工具,架设非常容易。它就是本文的主题----边缘平台架构(edge platform)。大家可能经常听到"edge"(边缘)这个词,但是未必了解它的意思。我尽量用通俗的语言,解释什么是边缘,什么是边...
March 22, 2024

如何简化多个 if 的判断结构

多少算太多?有些人认为数字是_一_,您应该始终用至少一个三元来代替任何单个if语句。我不采取这种坚定的方法,但我想强调一些逃避常见if/else意大利面条代码的方法。我相信很多开发人员if/else很容易陷入陷阱,不是因为其他解决方案的复杂性,而是因为它遵循这样一种自然语言模式: if某事做这个,而else不是做这个。等等,什么是三元?三元数与 an 并不是革命性的区别,if/else因为...
March 20, 2024

RNN tensorflow 集锦问题汇总

一、建Embeddin层优化1、报错信息:Unrecognized keyword arguments passed to Embedding:{'batch_input_shape': [64, None]}2、模型配置可优化在创建Embedding层时,使用了batch_size作为参数。这在某些情况下可以加速初始化过程,但不是必须的,且可能会导致在不同batch大小上重复使用模型时出现...
March 18, 2024

使用PyCharm创建虚拟环境项目导入环境变量

在 PyCharm 中设置和导入环境变量可以通过以下步骤完成:打开 PyCharm 并选择你的项目。导航到 "Run" -> "Edit Configurations"。在 "Environment variables" 部分,你可以手动设置环境变量,或者使用 "+" 和 "−" 按钮来添加或删除变量。如果你想要导入现有的环境变量,可以点击 "Import" 按钮,然后选择 "Syst...