后端-BACK END
文章平均质量分 88
宁小法先森︿( ̄︶ ̄)︿
"拖延乃光阴之窃贼。抓住他吧" ——《大卫·科波菲尔》· 狄更斯
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
OneSignal v2 PHP手搓请求消息推送-供参考
文章摘要:针对Lumen5.8框架与OneSignal V2 PHP API版本兼容问题,项目团队通过手工实现推送服务替代升级方案。新建的OneSignalV2Service类封装了消息推送功能,包含基础配置、推送方法和测试接口。该方案成功规避了框架升级风险,通过自定义HTTP请求实现了指定用户的消息推送功能,测试验证APP可正常接收推送(返回消息ID)。该方法在保证系统稳定性的同时满足了特定用户的推送需求。原创 2025-09-24 23:42:59 · 600 阅读 · 0 评论 -
PHP 线上环境 Composer 依赖包更新部署指南-简易版
摘要:本文介绍了在生产环境安全添加Composer依赖的完整流程。步骤包括:开发环境使用composer require添加依赖并测试;提交更新后的composer.json和lock文件;线上环境拉取代码后执行composer install --no-dev --optimize-autoloader;必要时重启PHP-FPM服务;同时提供了回滚方案和自动化部署建议。强调需在低流量时段操作,并确保环境一致性,对使用容器技术的项目也做了特别说明。(149字)原创 2025-09-23 20:11:08 · 695 阅读 · 0 评论 -
PHP 线上环境 Composer 依赖包更新部署指南
本文摘要:Laravel项目部署流程指南,包含从备份到验证的完整步骤。首先进行环境检查和代码/数据库备份,然后通过Git拉取最新代码并启用维护模式。关键步骤包括:更新Composer依赖(含内存不足解决方案)、数据库迁移、缓存优化。部署后需验证网站状态和功能,并提供了自动化验证脚本。文档还包含完整的部署脚本、回滚方案以及监控要点,特别强调权限管理和.env文件保护。最后总结线上更新的四大原则:备份优先、维护模式、分步操作和回滚准备,确保安全更新生产环境依赖包。原创 2025-09-23 20:03:25 · 707 阅读 · 0 评论 -
OneSignal PHP SDK v2 官方资源
OneSignal PHP SDK 官方资源摘要: GitHub仓库:https://github.com/OneSignal/onesignal-php-sdk 支持PHP 7.1+,推荐通过Composer安装(composer require onesignal/onesignal-php-sdk),当前稳定版v2.2.0。 文档包含SDK使用指南(PHP SDK文档)、API参考和REST API说明。 验证官方性需确认GitHub由OneSignal组织维护,Packagist注册者为OneSig原创 2025-09-22 23:18:32 · 617 阅读 · 0 评论 -
网络协议与连接深度解析:TCP基础、应用层协议与连接本质
本文系统分析了协议与TCP连接的层级关系和核心区别。主要内容包括:1)协议栈层级,展示了MySQL、HTTP等应用层协议与TCP/UDP传输层协议的依赖关系;2)典型协议详解,对比了MySQL、PostgreSQL和HTTP协议的特点及通信流程;3)本质区别,指出协议是静态的通信规范,而连接是动态的通信通道实例;4)连接生命周期,以TCP为例说明建立、传输和终止过程;5)实际应用,包括系统连接查看、协议分析工具和编程实现。关键认知在于理解协议定义规则而连接实现规则,这种区分对网络编程和问题排查具有重要指导意原创 2025-09-20 14:00:00 · 1032 阅读 · 0 评论 -
关于加密协议的若干问题解答
1. 是否所有的协议都可以走加密协议?2. 加密传输 如mysql协议 如何查看是否开启了加密协议安全传输?3. php连接AWS RDS 查询数据表 是否均基于加密协议 如何确认?4. 这个加密协议是什么协议 都是基于这个协议吗?原创 2025-09-18 16:30:00 · 1192 阅读 · 0 评论 -
SSH协议 - 补充
SSH协议是一种安全远程登录和加密通信的核心网络协议,通过加密技术确保在不安全网络中的数据传输安全。它支持密码和密钥认证,提供文件传输、端口转发等功能,广泛应用于服务器管理、自动化部署和代码操作等场景。OpenSSH和PuTTY是常见实现工具,使用时需注意密钥管理、端口安全和协议版本等安全措施,是保障网络安全的重要技术。原创 2025-09-18 10:15:00 · 640 阅读 · 0 评论 -
MySQL协议、PostgreSQL协议 和 HTTP协议的区别
网络协议与连接本质解析:协议是静态通信规则(如HTTP/MySQL),连接是动态通信通道(如TCP socket)。关键差异在于:协议定义消息格式和交互规则(应用层/传输层),而连接维护通信状态和上下文(IP+端口+缓冲区)。典型协议栈显示MySQL/HTTP2基于TCP,HTTP3改用UDP+QUIC。开发中需注意协议特性(连接复用、加密方式)与连接管理(查看netstat/ss命令,优化连接池)。理解二者区别有助于协议选型、网络调试和系统优化。原创 2025-09-18 11:00:00 · 2022 阅读 · 0 评论 -
网络连接的形象比喻:城市交通系统
网络连接可类比为城市间的交通系统:IP地址是城市位置,端口是具体建筑,协议决定运输方式(TCP如可靠卡车运输,UDP如快速空投)。数据包是运输货物,路由器是收费站和路标,防火墙是安检站。建立连接需三次握手确认,类似城市间开通运输路线。这个比喻帮助理解数据传输、路由选择、协议差异等网络核心概念,解释浏览网页等日常操作背后的通信机制。原创 2025-09-17 14:00:00 · 817 阅读 · 0 评论 -
PHP 自动加载器深度探究:原理、实现与最佳实践
PHP自动加载器是动态加载类文件的核心特性,取代了手动包含文件的繁琐操作。从早期的__autoload()到现代的spl_autoload_register()和PSR-4标准,自动加载机制不断演进。现代开发中,Composer通过PSR-4、类映射和文件包含三种方式实现自动加载,并支持性能优化。最佳实践包括:遵循PSR-4标准、使用Composer管理依赖、生产环境启用类映射缓存、配合OPcache提升性能。PHP7.4引入的预加载机制进一步减少了运行时开销。自动加载器解决了类依赖管理问题,是构建高效PH原创 2025-09-17 11:00:00 · 813 阅读 · 0 评论 -
池化技术详解:线程池、连接池、内存池的区别与应用
池化技术是一种高效资源管理策略,通过预先创建和维护可复用资源实例(如线程、连接、内存),实现资源复用、性能优化和统一管理。主要类型包括线程池(优化并发任务)、连接池(管理数据库/网络连接)和内存池(高效内存分配),各具特点和适用场景。关键技术包含动态调整池大小、健康检查和碎片整理。最佳实践需合理配置池大小、实施资源回收策略并建立监控机制。该技术广泛应用于微服务、大数据和云原生系统,能显著提升性能、稳定性和资源利用率,是高并发系统的基础支撑。原创 2025-09-17 09:30:00 · 1277 阅读 · 0 评论 -
PHP 连接池详解:概念、实现与最佳实践
连接池是一种预先创建并管理数据库连接的技术,可提升性能、优化资源并增强系统稳定性。PHP-FPM环境因请求隔离无法原生实现连接池,但可通过持久连接或外部中间件(如ProxySQL)替代;而Swoole/Workerman等常驻内存框架支持真正连接池,Laravel Octane也提供集成支持。最佳实践包括合理配置连接数、实现健康检查、异常处理和监控。连接池可减少50-90%连接开销,提升吞吐量2-5倍,但简单脚本或低频访问场景可能无需使用。常驻内存方案配合连接池能显著优化PHP应用性能。原创 2025-09-16 20:02:30 · 1290 阅读 · 0 评论 -
Web 服务器基本工作流程
本文详细介绍了Web服务器的基本工作流程,采用客户端-服务器-后端的经典三层架构。重点解析了七个核心步骤:1)建立TCP连接接收请求;2)解析HTTP请求;3)匹配处理请求(静态资源直接响应/动态请求转发后端);4)构造并返回HTTP响应;5)记录访问日志;6)管理连接(保持或关闭);7)客户端处理响应。整个过程展示了Web服务器如何作为调度中心接收、路由、处理请求并返回结果,特别说明了Nginx在301重定向等场景中的工作方式。原创 2025-09-15 09:00:00 · 1223 阅读 · 0 评论 -
Nginx - 正向vs反向代理
掌握这两种代理模式,你就能灵活应对各种网络架构需求!正向代理(需额外模块如。原创 2025-09-15 00:00:35 · 1058 阅读 · 0 评论 -
Nginx 请求到达nginx,但是到不了业务服?报错408
Nginx返回HTTP 408错误通常源于客户端请求超时或Nginx与上游服务器通信问题。主要排查方向包括:检查Nginx错误日志定位超时类型(客户端/上游),调整相关超时参数(client_header_timeout、proxy_read_timeout等),验证业务服务器状态及网络连接。特殊场景下,请求参数过大可能导致处理超时,可通过精简字段或压缩参数解决。典型解决方案需根据具体错误类型(408/502/504)针对性调整配置或优化服务器性能。原创 2025-09-13 16:00:00 · 2096 阅读 · 0 评论 -
Nginx access.log 与 error.log的区别
Nginx的两大核心日志文件:access.log记录所有客户端请求,用于流量分析和安全审计;error.log记录服务器运行事件和错误,用于故障排查。access.log采用自定义格式记录请求信息,error.log按级别报告问题。两者默认存储在/var/log/nginx/,通过日志轮转管理。建议结合使用tail命令实时监控,关联分析502等错误。合理配置日志级别和格式对性能优化至关重要,是维护Nginx服务的关键工具。原创 2025-09-13 09:00:00 · 1608 阅读 · 0 评论 -
操作系统 - 线程安全 - 学习
线程安全是指多线程环境下堆内存数据的保护问题,主要由于公共内存区域可被任意线程访问导致数据被意外修改的风险。解决方案包括:1)使用栈内存存储线程私有数据;2)通过ThreadLocal为每个线程创建数据副本;3)使用final定义只读变量;4)采用互斥锁机制控制并发访问;5)在低并发场景使用CAS乐观锁。具体实现需根据业务场景选择,如pika系统就采用了互斥锁、读写锁和行锁来保证数据一致性。理解线程安全需要从内存访问机制和多线程交互的本质出发。原创 2022-04-20 18:25:24 · 300 阅读 · 0 评论 -
lnmp - 线上环境故障排查流程 - 学习/实践
主要用于线上环境故障排查,记录整个流程,从而可以按部推进,定位问题,从而解决问题。同时也是为解决问题提供一个流程标准。原创 2023-03-16 17:15:39 · 964 阅读 · 0 评论 -
PHP - 连接池相关问题 - 学习/实践
主要用于学习PHP连接池的问题,为什么PHP不支持连接池,以及有什么其他方法可以做到,或者替代方案~原创 2022-04-11 14:58:56 · 1389 阅读 · 0 评论 -
APP开发/移动开发 - 个人思考总结以及良好实践收集
主要用于记录个人关于APP移动开发的思考总结以及良好实践收集。原创 2022-07-12 11:46:24 · 467 阅读 · 0 评论 -
2021-09-10 - PHP - 功能代码片段/代码弹药库 - 收集
主要用于快速实现功能,提高工作效率。原创 2022-03-02 17:48:56 · 775 阅读 · 0 评论 -
2021-08-12 - Phalcon - 学习/实践
1.应用场景主要用于使用Phalcon框架,开发高性能的web项目和高级工具 2.学习/操作 1.文档阅读 http://iphalcon.cn///Phalcon中文文档 https://www.marser.cn/article/134.html// 教程 2.整理输出 1.Phalcon 是什么 Phalcon 是开源、全功能栈、使用 C 扩展编写、针对高性能优化的 PHP 5 框架。 开发者不需要学习...原创 2021-09-25 22:07:21 · 519 阅读 · 0 评论 -
PHP - 设计模式系列
主要用于学习掌握编程中的设计模式,开发高质量, 易扩展,维护的程序。学习掌握编程最佳实践。有时候也是为了应对面试,但不应该是作为有追求的编程者的主要目的。原创 2021-08-11 00:04:40 · 425 阅读 · 0 评论 -
2021-08-01-高性能 Redis 实战 - 实战入门篇 - 基于 Redis 有序集合实现 Laravel 热门浏览文章排行榜功能
1.应用场景主要用于学习Redis 有序集合【SortedSet】类型,实现排行榜功能 2.学习/操作 1.文档阅读 https://laravelacademy.org/post/22169//基于 Redis 有序集合实现 Laravel 热门浏览文章排行榜功能 2.整理输出 代码实现: GitHub:https://github.com/ningxiaofa/high-performance-redis-tutorial/rele..原创 2021-08-01 12:41:45 · 562 阅读 · 0 评论 -
高性能 Redis 实战 - 实战入门篇 - 安装部署及基本数据结构介绍
1.应用场景主要介绍如何安装Redis以及Redis的常用数据结构. 2.学习/操作 1.文档阅读 https://laravelacademy.org/post/22164//安装部署及基本数据结构介绍 2. 整理输出/实践 环境 Mac Laravel Sail:https://blog.csdn.net/william_n/article/details/117425323 2.1 部署安装 ...原创 2021-08-01 11:39:45 · 503 阅读 · 0 评论 -
2021-07-18 - Yaf - 学习/实践
Yaf原创 2021-07-18 22:53:12 · 436 阅读 · 2 评论 -
Docker - Redis - 安装/实践
主要用于使用Docker安装Redis,以及使用可视化客户端连接Redis服务原创 2022-05-26 18:00:44 · 261 阅读 · 0 评论 -
Docker - Windows上搭建LNMP环境 - 学习/实践
主要用于学习使用docker搭建开发环境. 学习容器化技术.以及快速搭建开发环境, 同时保持团队之间开发/测试环境相同~~~~原创 2021-05-06 22:56:37 · 2026 阅读 · 4 评论 -
Docker - 编辑容器中的文件 - 学习/实践
主要用于如何在docker容器中如何编辑文件, 如开发环境直接修改配置文件,做一些测试开发。原创 2021-04-30 12:59:40 · 3052 阅读 · 0 评论 -
2021-04-24 - PHP - 性能相关 - 学习/实践
1.应用场景主要用于学习PHP性能相关知识,进行高性能编程,实现高性能程序。 2.学习/操作 1.文档阅读 https://mp.weixin.qq.com/s/yK_5hnhoQ6kvX4fxN5gdAQ//一次PHP并发性能性能提升104%调优实战 https://mp.weixin.qq.com/s/ApJJv9zdXN-2gDp7xWILDw//HHVM 是如何提升 PHP 性能的? https://mp.weixin.qq.com/s/q3AmaD...原创 2021-04-24 23:15:05 · 333 阅读 · 0 评论 -
nodeJS 框架 - 学习/实践
1.应用场景主要用于构建高效且可伸缩的服务端应用程序 2.学习/操作 1.介绍 TBD 2.框架 koa.js小而美,灵活,express的替身。 egg.js,阿里是后台,很强,很好,很各种解决方案已经给你做好了轮子。 nest.js node中的spring,估计只有它可以称为框架。https://docs.nestjs.cn/ node.js各大web框架,已经有很多分析的文章了,结合自己的业务场景,搜搜都能找到。 ..原创 2020-06-17 18:42:28 · 3153 阅读 · 0 评论 -
设计一个安全的对外接口如何下手?
1.应用场景主要用于接口安全. 2.学习/操作 TBD 3.问题/补充 1.WiFi是什么, 有绝对安全的WiFi吗? TBD 2.如何取得路由器的管理员密码? TBD 3.如何避免在网络中暴露的位置信息 TBD 4.参考https://blog.csdn.net/xfxf9...原创 2020-04-23 22:38:03 · 3709 阅读 · 0 评论 -
IDP - Identity Provider
1.应用场景了解/学习IDP, 在项目应用. 2.学习/操作 TBD 3.问题/补充 TBD 4.参考 https://www.jianshu.com/p/8ee07d28ced7 //IDP(Identity Provider) https://www.iteye.com/blog/blogzhoubo-2381624 /...原创 2020-05-22 12:07:02 · 4407 阅读 · 2 评论 -
【性能优化】性能优化 = 改改代码?- 学习/实践
应用于程序性能优化, 了解程序,服务的性能优化涉及到的方方面面,从而理解性能优化的本质。原创 2020-02-21 09:54:39 · 6403 阅读 · 0 评论 -
Git生成并添加SSH key[并添加到Github]
应用于本地能从github上推拉代码,不用每次都输入账号密码,同时保证安全。原创 2019-11-27 18:40:26 · 6956 阅读 · 0 评论 -
ThinkPHP 5/6.x - 学习/实践
主要用于快速高效开发安全高性能web应用,开发新项目/产品, 维护老项目.原创 2019-11-27 17:25:37 · 4648 阅读 · 0 评论 -
开发环境- 配置虚拟主机域名/hosts文件 - 学习/实践
用于快速搭建本地开发环境并通过虚拟域名访问.原创 2019-11-27 12:03:41 · 6443 阅读 · 0 评论 -
PHP - 多继承实现 - 学习/实践
1.应用场景 结合设计模式合理设计实现代码 2.学习/操作 1.引言 记得有一道面试题问php是否支持多继承? //不支持的原因跟其他语言的原因相同: 如java 都是多继承带来的菱形继承问题(又叫钻石问题) 详细解释: 假设类 B 和类 C 继承自类 A,且都重写了类 A 中的同一个方法,而类 D ...原创 2019-11-15 16:06:15 · 5609 阅读 · 0 评论 -
后端技术大全
1.应用场景无论面试还是工作当中总能听到一些专有术语,而不知其意,这里帮助我们简要了解其含义,或者说作为一个引子,查询手册作用。 2.学习/操作 工欲善其事,必先利其器;士欲宣其义,必先读其书。 一. 系统开发 高内聚/低耦合 高内聚指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。模块的内聚反映模块内部联系的紧密程度。...原创 2019-11-09 19:57:44 · 5905 阅读 · 0 评论 -
Laragon 在Windows中快速搭建Laravel本地开发环境
1.应用场景 主要用于快速搭建开发环境,帮助快速开发或者验证一些代码执行等。 优点: 功能更加强大, 更加简便好用 2.学习/操作 简介 对于那些使用 Windows 操作系统的同学来说,Homestead 和 LaraDock 虽说支持 Windows 系统,但是对初学者来说,安装配置起来还是有一定复杂度的,难免有些磕磕跘跘,遇到这样那样的奇怪问题...原创 2019-11-09 11:44:15 · 5503 阅读 · 0 评论
分享