首页
学习
活动
专区
工具
TVP
发布

PHPer技术栈

专栏作者
27
文章
49650
阅读量
17
订阅数
一条sql查询语句执行过程解析
server层:(所有跨存储引擎的操作均在这一层完成,包含下面mysql核心功能及内置函数均在这一层完成)
ITer.996
2022-11-22
5900
Redis持久化 aof和rdb的原理
由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。
ITer.996
2022-11-22
4330
php-fpm优化总结
Nginx 与 php-fpm 的结合 在 Linux 上,nginx 与 php-fpm 的通信有 tcp socket 和 unix socket 两种方式。 tcp socket 的优点是可以跨服务器,当 nginx 和 php-fpm 不在同一台机器上时,只能使用这种方式。 Unix socket 又叫 IPC (inter-process communication 进程间通信) socket,用于实现同一主机上的进程间通信,这种方式需要在 nginx 配置文件中填写 php-fpm 的 socket 文件位置。
ITer.996
2022-11-22
1.1K0
UDP协议发送/接收数据实现
UDP 是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接,简单来说,当客户端向接收端发送数据时,客户端不会确认接收端是否存在,就会发出数据。同样接收端在接收数据时,也不会向发送端反馈是否收到数据 由于使用 UDP 协议消耗资源小,通信效率高,所以通常都会用于音频、视频和普通数据传输 例如:视频会议通常采用 UDP 协议,因为这种情况即使偶尔丢失一两个数据包,也不会对接收结果产生太大影响。但是在使用 UDP 协议传送数据时,由于 UDP 的面向无连接性,不能保证数据的完整性,因此在传输重要数据时不建议使用 UDP 协议
ITer.996
2022-11-22
2.2K0
PHP中try、catch、finally 用法总结
在开发过程中异常处理是经常用到的,相信大部分使用 try、catch、finally 的只知道 try 中出现异常 catch 中会捕获,finally 块中代码何时都会执行。其中还有很多细微的知识点,接下来我们一起学习学习。
ITer.996
2022-11-22
1.1K0
TCP协议发送/接收数据简单实现
TCP 协议是面向连接的通信协议,即传输数据之前,在发送端和接收端建立逻辑连接,再传输数据。它提供了两台计算机之间的可靠无差错的数据传输。在 TCP 连接中必须要明确客户端与服务器,由客户端向服务器发送连接请求,每次连接的创建都需要经过 “三次握手” 三次握手:TCP 协议中,在发送数据的准备阶段,客户端与服务器之间的三次交互,以保证连接的可靠
ITer.996
2022-08-30
1.2K0
Laravel 框架实现无限极分类
近开发商品功能,在尝试递归和引用方式后,蓦然回首,突然发现 laravel 框架有更简单高效的实现方式,无限极分类最佳实践,open code 与大家共享!感兴趣的 Mark 一下,谢谢~
ITer.996
2020-07-22
1.6K0
Redis过期策略以及内存淘汰机制
如果你的 Redis 只能存10G数据,你写了12G,那么 Redis 会怎么淘汰那2G数据呢?
ITer.996
2019-12-15
6610
CSRF/XSRF (跨站请求伪造)
1. 主要归结于浏览器同源策略限制级别的问题。 2. 对于 Cookie,DOM 和 XMLHttpRequest(ajax)所有浏览器都会严格遵守同源策略。但是也有例外,如 'img' 标签,"script" 标签,"iframe" 标签等的链接会自动加载,更重要的是,表单提交也是可以跨域。 正是因为这些 html 标签和表单提交的可以跨域问题,一些黑产在恶意站点设置了在用户不感知的情况下发起其他站点的请求,比如用户登录了某支付网站后,不经意点开了某恶意站点,该站点自动请求某支付网站(浏览器会匹配 domain 和 path 自动带上了 cookie 凭证),此时就相当于黑产拿到用户的身份凭证了。
ITer.996
2019-10-09
3K0
PHP中获取远程文件的三种方法
1.使用file_get_contents和fopen必须空间开启allow_url_fopen。
ITer.996
2019-08-28
8480
PHP7.1新特性
参数以及返回值的类型现在可以通过在类型前加上一个问号使之允许为空。当启用这个特性时,传入的参数或者函数返回的结果要么是给定的类型,要么是null
ITer.996
2019-08-28
9790
MySQL 性能优化——B+Tree 索引
为了快速查询数据,MySql 在查询算法上进行了许多优化。但是就如二叉树查找算法只能应用于二叉树数据结构一样,需要有满足这种查找算法的数据结构,而数据本身的结构可能并不能满足查找算法所需要的数据结构,所以 MySql 在数据之外维护了一个能应用于高效的查找算法的数据结构,这种数据结构,就是索引。 接下来将介绍使用最多的索引类型 ——B-Tree 索引
ITer.996
2019-08-28
8070
简述TCP的三次握手过程
对方主动关闭连接或者网络异常导致连接中断,这时我方的状态会变成CLOSE_WAIT 此时我方要调用close()来使得连接正确关闭
ITer.996
2019-08-28
9340
MySQL5.7特性:JSON数据类型学习
MySQL5.7的发行声明中,官方称之为里程碑式的版本,除了运行速度大幅度提升之外,还添加了之前版本没有的功能,如本文所述的原生JSON数据类型功能。 在此版本之前,MySQL所有的JSON数据类型,全部是使用text等文本类型来实现的,数据的处理只能在应用代码级来实现,十分不方便。
ITer.996
2019-08-28
7K0
PHP7.+系列新特性和新变更
组合比较符号用于比较两个表达式。当$a小于、等于或大于$b时它分别返回-1、0或1,比较规则延续常规比较规则。对象不能进行比较
ITer.996
2019-08-28
6340
微信小程序获取unionid与openid
unionid来区分用户的唯一性,在相同微信开放平台帐号下的移动应用、网站应用、小程序、公众号,用户的unionid是唯一的。也就是说,同一用户,对同一个微信开放平台下的不同应用,unionid是相同的。
ITer.996
2019-08-28
6K0
Nginx, Redis, MySQL配置文件说明
1. Nginx中/etc/nginx/nginx.conf的常用配置及说明 # 指定Nginx Worker进程运行用户, 语法: user user [group] user nginx; # worker进程数, 通常设置成和CPU的数量相等, 默认为1. worker_processes 1; # 指定进程id存储文件 pid /run/nginx.pid; # 事件模块 events { # 每个worker进程的连接数, 通过worker_connections和worker_
ITer.996
2019-08-28
1.6K0
workman 和swoole 区别
使 PHP 开发人员可以编写高性能的异步并发 TCP、UDP、Unix Socket、HTTP,WebSocket 服务。Swoole 可以广泛应用于互联网、移动通信、企业软件、云计算、网络游戏、物联网(IOT)、车联网、智能家居等领域。使用 PHP + Swoole 作为网络通信框架,可以使企业 IT 研发团队的效率大大提升,更加专注于开发创新产品。
ITer.996
2019-08-28
1.5K0
MySQL 中的四种隔离级别
数据库事务有不同的隔离级别,不同的隔离级别对锁的使用是不同的,锁的应用最终导致不同事务的隔离级别。
ITer.996
2019-08-28
5870
PHP 编写守护进程
PHP 创建守护进程 进程根据状态可以分为三种进程,守护进程,僵尸进程,孤儿进程。今天我们着重来分析下守护进程。 守护进程 简介 守护进程 (daemon) 是一类在后台运行的特殊进程,用于执行特定的系统任务。很多守护进程在系统引导的时候启动,并且一直运行直到系统关闭。另一些只在需要的时候才启动,完成任务后就自动结束。 创建步骤 创建子进程,终止父进程 由于守护进程是脱离控制终端的,因此首先创建子进程,终止父进程,使得程序在 shell 终端里造成一个已经运行完毕的假象。之后所有的工作都在子进程中完成,而
ITer.996
2019-08-28
1.6K0
点击加载更多
社区活动
腾讯技术创作狂欢月
“码”上创作 21 天,分 10000 元奖品池!
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档