22
2017
04

让你的PHP7更快之Hugepage

PHP7刚刚发布了RC4, 包含一些bug修复和一个我们最新的性能提升成果(NEWS), 那就是”HugePageFy PHP TEXT segment”, 通过启用这个特性,PHP7会把自身的TEXT段(执行体)”挪“到Huagepage上,之前的测试,我们能稳定的在Wordpress上看到2%~3%的QPS提升。关于Hugepage是啥,简单的说下就是默认的内存是以4KB分页的,而虚拟地址和内存地址是需要转换的, 而这个转换是要查表的,CPU为了加速这个查表过程都会内建TLB(Transl

22
2017
04

让PHP7达到最高性能的几个Tips

PHP7已经发布了,  作为PHP10年来最大的版本升级, 最大的性能升级, PHP7在多放的测试中都表现出很明显的性能提升, 然而, 为了让它能发挥出最大的性能, 我还是有几件事想提醒下.PHP7 VS PHP5.61. Opcache记得启用Zend Opcache, 因为PHP7即使不启用Opcache速度也比PHP-5.6启用了Opcache快, 所以之前测试时期就发生了有人一直没有启用Opcache的事情. 启用Opcache非常简单, 在php.ini配置文件中加入:zen

21
2017
04

让你的PHP7更快(GCC PGO)

我们一直致力于提升PHP7的性能, 上个月我们注意到GCC的PGO能在Wordpress上能带来近10%的性能提升, 这个让我们很激动.然而, PGO正如名字所说(Profile Guided Optimization 有兴趣的可以Google), 他需要用一些用例来获得反馈, 也就是说这个优化是需要和一个特定的场景绑定的.你对一个场景的优化, 也许在另外一个场景就事与愿违了.

20
2017
04

MySQL数据类型-CHAR与VARCHAR

CHAR 和VARCHAR 类型类似,都用来存储字符串,但它们保存和检索的方式不同。CHAR属于固定长度的字符类型,而VARCHAR 属于可变长度的字符类型。表8-1 显示了将各种字符串值保存到CHAR(4)和VARCHAR(4)列后的结果,说明了CHAR和VARCHAR 之间的差别。表8-1 CHAR 和VARCHAR 的对比值CHAR(4) 存储需求VARCHAR(4)存储需求'' ' '4 个字节''1 个字节'ab''
20
2017
04

如何选择合适的存储引擎?

摘自《深入浅出MySQL》:在选择存储引擎时,应根据应用特点选择合适的存储引擎,对于复杂的应用系统可以根据实际情况选择多种存储引擎进行组合。下面是常用存储引擎的适用环境。MyISAM:默认的MySQL 插件式存储引擎。如果应用是以读操作和插入操作为主,只有很少的更新和删除操作,并且对事务的完整性、并发性要求不是很高,那么选择这个存储引擎是非常适合的。MyISAM 是在Web、数据仓储和其他应用环境下最常使用的存储引擎之一。

19
2017
04

评《人民的名义》:阶级固化比贪腐更可怕

最近热播的《人民的名义》,直抒胸臆就是八个字:反腐倡廉,利国利民!充分展现了新时期中国共产党人坚定的反腐败决心和人民检察官公正司法的良好形象。世界上,治理腐败是一件非常困难的事情,几千年的历史经验告诉我们,在私有制下贫富差距巨大的社会中开展反腐工作,这几乎是一个不可能完成的任务,然而中国出现了世界历史上短暂的相对清明的毛泽东时代。有人说,靠监督就可以防止腐败,的确没有监督的话腐败会愈加严重,但是监督也是一件非常困难的事情。

18
2017
04

Web开发中需要了解的东西

在StackExchange上有人问了这样一个问题:What should every programmer know about web development?(关于Web开发,什么是所有程序员需要知道的?)里面给出的答案非常不错,所以,我翻译转载过来。 顺便说一下,StackExchange真是非常好,大家可以对同一个答案做贡献和修订,看看这个问题的修订过程你就知道了——专业的问答网站应该怎么去做。这就是我在这篇文章中也说过真正的用户体验是什么样的。

17
2017
04

ajax提交返回的url因地址符转义导致链接地址无法访问

为了防止对网站中下载链接信息的抓取,网站中的下载地址的获取换成了通过点击异步获取的方式,其中用到了ajax提交的方式,功能完成后,在返回url地址时发现:如果url链接地址当中含有地址符“&” 会转义为&导致地址无法访问。这是由于& 等字符在XML里,有特殊的意义,所以当AJAX使用xml格式的时候,会自动进行转义。解决方法:在获取到链接地址后,运用js替换字符串的amp;为空,保留&即可

16
2017
04

php-mysql统计查询-使用中间表提高统计查询速度

对于数据量较大的表,在其上进行统计查询通常会效率很低,并且还要考虑统计查询是否会对在线的应用产生负面影响。通常在这种情况下,使用中间表可以提高统计查询的效率,下面通过对session 表的统计来介绍中间表的使用:(1)session 表记录了客户每天的消费记录,表结构如下:CREATE TABLE session ( cust_id varchar(10) , --客户编号 cust_amount DECIMAL(16,2
15
2017
04

thinkphp延迟更新用法详解

我们经常需要给某些数据表添加一些需要经常更新的统计字段,例如用户的积分、文件的下载次数等等,而当这些数据更新的频率比较频繁的时候,数据库的压力也随之增大不少,我们可以利用高级模型的延迟更新功能缓解。要点延迟更新必须继承高级模型,或者使用动态模型

14
2017
04

2017年3.15 人民日报公布的虚假产品

纯植物染发剂,根本没有!我们去理发店染发时,店员常常会竭力推荐价格比较高的染发剂,并说道“这些是纯植物染发剂,天然植物精华,对头发头皮是没有伤害的……”而这些产品往往是其他产品价格的好几倍!事实上,目前根本没有真正的纯植物染发剂!

14
2017
04

通过第三方IP地址库控制前端内容分区域显示

为了给网站访客提供更精确的内容,在规划网站前端页面内容时,有时需要针对不同地域的用户,显示不同的内容。通过后端的程序语言(如php)结合已保存的ip地址库进行判断来实现是一种方案,但在用户访问量比较大的情况下,针对每个访客的ip分别进行逻辑判断,再将内容输出至前端页面,会对服务器造成较大的压力,且效率比较低下,也不利于实现网站前端页面的静态化。另一种解决方案是在前端通过js来进行判断,控制页面内容的显示隐藏,来实现这种效果。

13
2017
04

链接短地址的工作以及实现原理

介绍:短址,顾名思义,就是把长的 URL 转成短的 URL, 现在提供这种服务的有很多公司,我们以google家的 URL shortener 服务: http://goo.gl/ 为例。首先我们到 http://goo.gl/,然后把本文博客的地址http://blog.csdn.net/beiyeqingteng 输入进去,最后它会返回一个更短的URL,http://goo.gl/Jfs6q 。如下图所示:URL 解析:当我们在浏览器里输入&
12
2017
04

web应用实际开发前需考虑的非技术问题

作为一名软件开发行业的从业人员,特别是对从事web应用开发的人来说,在接触一个突发的项目时,多多少少都曾被一些客户或项目经理问过这么一个问题:这个东西大概多长时间能做完?(可谓简单明了,直抒胸臆)。而作为项目的执行者,在没有类似项目经验,或对需求不知情的情况下,听到这个问题时经常会在瞬间被石化。碍于面子或具有冒险主义精神的人可能会说:这个好整,三五天就整好了。也会有遇事谨慎,心性直诚的人这样说:这个,我不知道......前者可能会造成后期不能及时交付的风险,后者可能会失去一个项目历练的机会。

11
2017
04

连接到 Linux 服务器时首先要运行的 5 个命令

作为一个系统管理员/SRE 工作 5 年后,我知道当我连接到一台 Linux 服务器时我首先应该做什么。这里有一系列关于服务器你必须了解的信息,以便你可以(在大部分时间里)更好的调试该服务器。连上 Linux 服务器的第一分钟这些命令对于有经验的软件工程师来说都非常熟悉,但我意识到对于一个刚开始接触 Linux 系统的初学者来说,例如我在 Holberton 学校任教的学生,却并非如此。这也是我为什么决定分享当我连上