1 踩坑教训协议 2019-07-05 X-Forwarded-For IP伪造问题处理 这个文章放在云笔记里面半年多了, 出现问题场景是我们从 迁移至 阿里云 之后; 优化 api服务 发现有大量用户通过 X-Forwarded-For 仿造客户端IP 从而跨过我们后端对IP做的频率限制. 原理很简单 一般公司服务器都是 在服务最前端放 slb/lvs 这种负... 阅读全文
2 其他 2019-07-01 左右值无限分类 预排序遍历树算法:modified preorder tree traversal algorithm 修改后的前序树遍历算法(Modified Preorder Tree Traversal) 无限分类树(Nested Set Model)是一种用于表示层次结构数据的有效方法。在这种模型中,每个节点都有左右值(left, right),可以用于快速查询树的结构。使用修改后的... 阅读全文
3 编程语言 2019-06-28 PHP CSV 配置转换为 SQL 的示例 将 CSV 文件转换为 SQL 插入语句是一项常见的任务。以下是一个简单的 PHP 示例,演示如何读取 CSV 文件并生成 SQL 插入语句。 1. CSV 文件格式 假设我们有一个名为 data.csv 的文件,内容如下: 2. PHP 脚本示例 以下是一个 PHP 脚本... 阅读全文
4 数据库 2019-06-23 Redis 持久化导致的阻塞问题 Redis 是一个高性能的键值存储系统,提供了多种持久化机制(RDB 和 AOF)以确保数据的持久性。然而,在某些情况下,持久化过程可能导致 Redis 的阻塞,从而影响系统性能。以下是对这个问题的深入探讨及解决方案。 1. 持久化机制概述 1.1 RDB(快照持久化) -... 阅读全文
5 踩坑教训编程语言 2019-06-20 Swoole Task 阻塞 Worker 开发教训 在使用 Swoole 进行异步编程时,Task 进程是处理耗时操作的有效工具。然而,由于 Task 进程的队列机制,可能会导致阻塞,从而影响 Worker 进程的性能。以下是一些常见的坑和解决方案,以帮助您优化 Swoole Task 的使用。 1. Task 进程队列的阻... 阅读全文