在linux服务器上,要不要开启tcp.ipv4.tw_recycle?TCP连接中,TIME-WAIT状态的作用是什么?tcp.ipv4.tw_reuse参数呢?当服务器即为服务端,又是客户端时(比如FPM服务器,相对于nginx来说,是服务端,相对于redis来说,是客户端),该如何配置?
Author: CFC4N
ububtu server 14.04上,PHP5-FPM服务的启动方式变更
在一位前辈微博上看到,他总是给自己找点事做,让自己忙碌起来,严于律己。我甚有感触,相比之下自惭形秽,一直做不到,这应该就是大神跟我等小菜之间的差距吧。这次遇到的问题是ubuntu 14.04上,/etc/init.d/php5-fpm 不能正常管理php5-fpm?而12.04老的版本可以,是php5-fpm启动脚本的bug,还是操作系统更新带来的bug?
TCP SOCKET中backlog参数的用途是什么?
在前年时,业务中遇到好多次因为PHP-FPM的backlog参数引发的性能问题,一直想去详细研究一番,还特意在2013年总结里提到这事《为何PHP5.5.6中fpm backlog Changed default listen() backlog to 65535》,然而,我稍于懒惰,一拖再拖,直至今日,才动脑去想,动笔去写。PHP-FPM的配置中,backlog默认值从128改为65535,又从65535改为511,可能很多人都没有在意,我也是因为遇到过类似错误,才决定去认真理理其中知识点的。
nginx上,http状态200响应,PHP空白返回的问题
最近的大半年中,编程语言从PHP换到了Golang后,就很少接触PHP,当然,更多的还是恋恋不舍。尽管如此,每当有人在群里聊起PHP的话题时,我总是想插几句,怀念怀念,同时也温故温故知识点,可不能把她给忘了。昨天朋友tywei问我一个关于PHP奇怪问题,查到原因解决后,没有详细的解释。夜里睡觉时,老是回想这事,早上醒来,决定还是认真记录一下这些问题。也让自己回归正常状态,多写点博客,总结自己,记录自己。
密码保护:2014年甲午年总结
2013年癸巳年总结
眼看2014年1月马上就过去,现在我才有时间去总结2013年历程,足以看出在2013年里,我是那么的繁忙,说是『案牍劳形』的话,也毫不为过。一年中,总有段精神恍惚,胡思乱想,常反思今年过去的时间里,是否有过碌碌无为的虚度,是否有过愁肠百结的失落。那些蛰伏心底的理想,越来越渐行渐远了吗?每当我陷入这种沉思时,总是无比焦躁、迷茫,试图找一些心灵鸡汤来读,来平复骚乱的内心,但总是收效甚微。久而久之,也倒是可以应付自如,自己也能换个角度来安慰自己,鼓励自己,也许这就是成长吧。
webgame中常见安全问题、防御方式与挽救措施
基于语法分析的PHP webshell扫描工具–WoodPecker Scanner
服务器云判断是一种根据恶意代码串的指纹,根据大量后门数据,做语法、语义分析,做业务逻辑分析,理解这段代码的用途,给出其是否为恶意代码的定位,而其他使用者,直接可以得到该代码片段是否为恶意代码的结果反馈。Pecker Scanner首先是基于语法分析,剥离token、注释、字符串、变量、语言结构,再进行php语法检测,提取恶意代码的扫描工具,来解决漏报问题。同时支持服务器云判断,尽量避免误报问题。同时,同样的一段代码,在不同的项目中,扮演着不同的角色,这也不能光凭借代码功能上判断,还得依赖所属项目。
为什么不能在字符组中使用反向引用
不能在字符组中使用反向引用,原因是正则表达式的\1在字符组中[\1],在大多数的正则流派中,会被正则引擎作为八进制转义,实际上的匹配结果将变成\x01。除了不能在字符组中使用反向引用,还不能使用捕获分组,这里也提到了,正则表达式的元字符括号()在字符组中将被理解为普通的字符(),也就是说,在字符组character class中,不用再转移了,即[()]是合法的表达式,且可以匹配到(或者)。比如文章中给的例子:表达式[(a)b]匹配结果并不是a或者b,如果a匹配到,再将a分配到group 1中,而是可以匹配到a或b或(或)四个字符。所以,在字符组中使用反向引用,是不能实现的了。
PHP API中,MYSQL与MYSQLI的持久连接区别
php拓展的mysql跟mysqli的长连接一样使用吗?有什么区别?是否重新创建TCP链接的条件,都是HOST、PORT、USER、PASS这些参数吗?在libmysql跟mysqlnd下表现一样吗?在CLI模式跟FPM模式下表现一样吗?mysqli的长连接如何使用呢?在同一个脚本中,mysqli长连接为什么没有使用同一个链接?而又新建了链接呢?