- 博客(13)
- 资源 (1)
- 收藏
- 关注
原创 错误码设计
前言在公司内部解决后端和前端对于错误码争论的过程中,与一些纵线的小伙伴也有过一些深入的交流,发现大家对错误码的认知和理解存在很大的差异,因此决定撰写此文来阐述一下我对错误码的一些理解以及对错误码处理方式的建议。什么是错误码 在开始对错误码的处理进行讨论前,让我们来重新认识一下错误码,它到底是什么?私以为错误码可以定义为一组数字(或字母与数字的结合),它会与错误讯息建立关联,用于识别在...
2020-03-10 15:33:53 1848
转载 redis常见面试题
1、Redis有哪些数据结构?字符串String、字典Hash、列表List、集合Set、有序集合SortedSet。如果你是Redis中高级用户,还需要加上下面几种数据结构HyperLogLog、Geo、Pub/Sub。如果你说还玩过Redis Module,像BloomFilter,RedisSearch,Redis-ML,面试官得眼睛就开始发亮了。2、使用过Redis分布式锁...
2018-10-09 14:24:09 218
转载 PHP垃圾回收深入理解
PHP垃圾回收深入理解PHP是一门托管型语言,在PHP编程中程序员不需要手工处理内存资源的分配与释放(使用C编写PHP或Zend扩展除外),这就意味着PHP本身实现了垃圾回收机制(Garbage Collection)。现在如果去PHP官方网站(php.net)可以看到,目前PHP5的两个分支版本PHP5.2和PHP5.3是分别更新的,这是因为许多项目仍然使用5.2版本的PHP,而5.3版本对...
2018-09-29 10:28:28 180
原创 类属性
new class()是一个类对象封装后的展现,你不需要知道类的私有成员和方法,以及内部作用机制,便可以直接通过类开放的成员方法和属性来使用它。而 new ReflectionClass()反射类则是一个类对象开封后的展现,它将类的内部属性,包括公开或私有的属性/方法,是否是静态,接口、继承、命名空间信息,甚至注释等全部公开,都可以通过反射api进行访问。由此可见反射类的强大之处。但通常使...
2018-09-27 10:28:46 286
转载 生成器(用于优化大文件的读取等)
PHP中被忽略的性能优化利器:生成器如果是做Python或者其他语言的小伙伴,对于生成器应该不陌生。但很多PHP开发者或许都不知道生成器这个功能,可能是因为生成器是PHP 5.5.0才引入的功能,也可以是生成器作用不是很明显。但是,生成器功能的确非常有用。优点直接讲概念估计你听完还是一头雾水,所以我们先来说说优点,也许能勾起你的兴趣。那么生成器有哪些优点,如下:生成器会对PHP应用...
2018-09-26 15:27:15 832
转载 cgi和fastcgi和php-fpm详细说明
在搭建 LAMP/LNMP 服务器时,会经常遇到 PHP-FPM、FastCGI和CGI 这几个概念。如果对它们一知半解,很难搭建出高性能的服务器。接下来我们就以图形方式,解释这些概念之间的关系。基础在整个网站架构中,Web Server(如Apache)只是内容的分发者。举个栗子,如果客户端请求的是 index.html,那么Web Server会去文件系统中找到这个文件,发送给浏览器,...
2018-09-26 11:08:25 1162
原创 redis 常用命令解释
字符串常用命令:http://redisdoc.com/index.html一、bitMap:就是通过一个bit位来表示某个元素对应的值或者状态,其中的key就是对应元素本身。我们知道8个bit可以组成一个Byte,所以bitmap本身会极大的节省储存空间。只是set集合的一个扩展 1、BItmap,使用setBit()和bitCount()和getBit()做区间统计,用户签到,用...
2018-09-04 19:09:16 264
原创 urldecode和rawurldecode慎重使用,解密多次会导致值丢失
PHP中常用过滤函数如addslashes()、mysql_real_escape_string()、mysql_escape_string()或者使用魔术引号GPC开关来防止注入,原理都是给单引号(’)、双引号(”)、反斜杠(\)和NULL等特殊字符前面加上反斜杠来进行转义。 但是这些函数在遇到urldecode()函数时,就会因为二次解码引发注入。urldecode()函数...
2018-08-31 17:47:13 3015
原创 常用Linux 命令
1、筛选某个目录下面的关键字 截取显示 排序去重 grep -ri "pay/" * |cut -d "|" -f 7 |sort|uniq awk -F '|' '$7~/user\/./ !a[$7]++ {print $7 $6}'> ./fs *
2018-08-29 10:29:03 128
转载 网关 php-cgi fastcgi phpfpm
本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/88关于网关的理解,一句话就是:作为一种翻译器,抽象出了一种能够到达资源的方法。这里指的通过翻译器来到达资源,可以包括通过转换协议(HTTP/FTP)获取网关另一端与客户端使用不同协议的服务器的资源,也可以包括通过网关向数据库发送查询语句来获取动态数据,也可...
2018-08-24 16:02:05 262
原创 Redis 在Linux下面的安装和配置
redis安装一、查看redis的版本:yum list |grep redis二、安装Redis 1、yum install -y redis.x86_64 2、在etc下面复制redis.conf备份 cp redis.conf redis.conf.bak三、配置redis.conf a>配置reids为后台驻留程序。打开redis....
2018-08-24 15:20:13 280
转载 Redis数据结构和常用场景
1、String 常用命令: 除了get、set、incr、decr mget等操作外,Redis还提供了下面一些操作: 获取字符串长度 往字符串append内容 设置和获取字符串的某一段内容 设置及获取字符串的某一位(bit) 批量设置一系列字符串的内容 应用场景: String是最常用的一种数据类型,普通的key/value存储都可...
2018-08-24 10:53:13 165
转载 redis实用场景
redis 数据类型详解 以及 redis适用场景场合这朋友总结的很好,好欢喜. 地址 1. MySql+Memcached架构的问题 实际MySQL是适合进行海量数据存储的,通过Memcached将热点数据加载到cache,加速访问,很多公司都曾经使用过这样的架构,但随着业务数据量的不断增加,和访问量的持续增长,我们遇到了很多问题: 1.MySQL需要不断进...
2018-08-24 10:52:59 178
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人