1 moved重定向
每个节点通信共享Redis Cluster中槽和集群中对应节点的关系。
- 客户端向Redis Cluster的任一节点发送命令
- 接收命令的节点再计算自己的槽和对应节点
如果保存数据的槽被分配给当前节点,则去槽中执行命令,并把命令执行结果返回给客户端:
2025年07月24日
每个节点通信共享Redis Cluster中槽和集群中对应节点的关系。
如果保存数据的槽被分配给当前节点,则去槽中执行命令,并把命令执行结果返回给客户端:
2025年07月24日
注:需要在windows上安装composer、git等软件
详见:
https://docs.phpcomposer.com/
2025年07月24日
修改字符集的方法,就是使用mysql的命令
mysql> SET character_set_client = utf8 ;
mysql> SET character_set_connection = utf8 ;
使用 mysql> SHOW VARIABLES LIKE 'character%';查看,发现数据库编码均已改成utf8
2025年07月24日
Sed是一种非交互式的流编辑器,可动态编辑文件;流编辑器则会在编辑器处理数据之前基于预先提供的一组 规则来编辑数据流 。
Sed本身是一个管道命令,可以分析 standard input 的,主要是用来分析关键字的使用、统计等,此外还可 以将数据进行替换、删除、选中、选取特定行等功能
2025年07月24日
在介绍命令注入之前,有一点需要注意:命令注入与远程代码执行不同。他们的区别在于,远程代码执行实际上是调用服务器网站代码进行执行,而命令注入则是调用操作系统命令进行执行。
2025年07月24日
对于一个已经上线的系统,常常需要统计一些数据用于支撑运营团队的决策。
对于于不同的数据量,作为开发人员,我们应该如何选择合适的数据结构去完成需求。
开发人员考虑的层面,一是数据量,就是存储这些数据需要暂用内存块的大小;二是这种数据结构的插入、删除、修改、统计的时间复杂度的问题。
2025年07月24日
命令执行漏洞在不同框架下都有存在,也是十分普遍且危害极大,下面我们介绍一个最具代表性的,也是影响范围最大的一个命令执行漏洞--Struts2远程代码执行漏洞。
漏洞介绍
ApacheStruts是一款建立Java web应用程序的开放源代码架构。Apache Struts存在一个输入过滤错误,如果遇到转换错误可被利用注入和执行任意Java代码。
网站存在Struts2远程代码执行漏洞(CVE-2010-1870)的大部分原因是由于网站采用了Apache Struts Xwork作为网站应用框架,Xwork通过getters/setters方法从HTTP的参数中获取对应action的名称,这个过程是基于OGNL(object graph navigation language)的,由parametersintercceptor调用valuestack.setvalue()完成的,它的参数用户控,由HTTP参数传入。OGNL的功能强大,远程执行代码也正是利用了这一点,导致网站面临安全风险。
2025年07月24日
从硬件技术和软件需求,计算机发展初期,没有可能发展真正的解释型语言,运行速度和内存都受限,只有给机器喂二进制代码才能勉强跑起来。但事实上,解释型语言却在计算机发展很早的时期曾经出现过,当然这和前面一段话并不冲突,它是由自身的考虑,也并非为了推广。