思路:
1)将长网址md5生成32位签名串,分为4段, 每段8个字节;
2)对这四段循环处理, 取8个字节, 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理;
3)这30位分成6段, 每5位的数字作为字母表的索引取得特定字符, 依次进行获得6位字符串;
4)总的md5串可以获得4个6位串; 取里面的任意一个就可作为这个长url的短url地址; 查看全文
思路:
1)将长网址md5生成32位签名串,分为4段, 每段8个字节;
2)对这四段循环处理, 取8个字节, 将他看成16进制串与0x3fffffff(30位1)与操作, 即超过30位的忽略处理;
3)这30位分成6段, 每5位的数字作为字母表的索引取得特定字符, 依次进行获得6位字符串;
4)总的md5串可以获得4个6位串; 取里面的任意一个就可作为这个长url的短url地址; 查看全文
原文:http://xiaoxia.org/2010/10/20/night-writing-a-fastcgi-process-manager/
之前一直使用单个进程都php-cgi。存在一个很严重都问题就是,php-cgi不稳定导致程序异常退出时,需要外部程序重新启动php-cgi。而且因为socket还要等待一段时间才能断开,所以要等一段时间(大概30多秒)才能重新启动成功。这样就产生了一段时间无法使用php都网页,很是烦恼。之前就一直想写一个php-cgi都进程管理器。
现在服务器上运行了几个庞大的wordpress,php崩溃都机率又大多了,迫不得已去给homeserver安装一个进程管理器。我测试过使用php-fpm,但是不好使,一是占用内存非常大,二是出现突然间无法响应都现象。后来yousan大牛推荐了用于lighttpd都spawn-fcgi,我在windows测试成功了,终于可以并发处理多个php请求。测试方法是,写一个php文件,里面写,如果刷新两次等待了10秒,那么就说明没有并发处理功能。打开多个页面测试也可以。 查看全文
css3中也对css中用到的单位进行了改进,单位也就是那几个,所以我们要搞清楚再用。
%——百分比
in——寸
cm——厘米
mm——毫米
pt——point,大约1/72寸;
pc——pica,大约6pt,1/6寸;
px——屏幕的一个像素点;
em——元素的font-size;
ex——font-size的x-height值,为小写字母x的高度,通常相当于font-size的一半。
我们常用的有px、%、em,px就不多说了,em和%多说点儿:
查看全文
注意,这次发布的是开发版本,提供开发人员体验和测试,不建议用于正式项目。
[ 更新日志 ]
Action参数绑定支持
模型类命名范围支持
全局系统变量安全过滤支持
增加IS_GET IS_POST IS_PUT 等请求类型常量
日志记录改进 优化日志大小 增加IP记录
U函数对子域名部署的增强和优化
模型类增加filter连贯操作方法 用于对数据的安全过滤
模型类的data方法支持获取当前数据对象
Action类增加_param方法支持 可以自动根据当前提交类型 获取参数
Action类的_get _post方法支持多函数过滤
改进ajaxReturn方法
改进success和error方法
增加自动验证的规则
分组模式下 模型分组可以自动加载
模型类增加close方法 驱动类支持多数据库连接关闭
模型类增加表单提交字段合法性检测 配置insert_fields 和 update_fields
模型强制进行数据字段类型验证
增加DB_SLAVE_NO配置参数 用于指定读服务器的序号
优化模型的create方法的数据对象生成
自动验证的function和callback规则支持多字段
许多成熟的数据库都支持预处理语句(Prepared Statements)的概念。它们是什么东西?你可以把它们想成是一种编译过的要执行的SQL语句模板,可以使用不同的变量参数定制它。预处理语句具有两个主要的优点:
查询只需要被解析(或准备)一次,但可以使用相同或不同的参数执行多次。当查询准备好(Prepared)之后,数据库就会分析,编译并优化它要执行查询的计划。对于复杂查询来说,如果你要重复执行许多次有不同参数的但结构相同的查询,这个过程会占用大量的时间,使得你的应用变慢。通过使用一个预处理语句你就可以避免重复分析、编译、优化的环节。简单来说,预处理语句使用更少的资源,执行速度也就更快。
传给预处理语句的参数不需要使用引号,底层驱动会为你处理这个。如果你的应用独占地使用预处理语句,你就可以确信没有SQL注入会发生。(然而,如果你仍然在用基于不受信任的输入来构建查询的其他部分,这仍然是具有风险的)。 查看全文
Query 1.7.2 is looking good! The release candidate went smoothly so we’ve made only one small change and are releasing it to your eager hands today. You can get the oven-fresh code from the jQuery CDN now, with Google and Microsoft CDNs soon to follow:
time有计时作用
dd用于复制,从if读出,写到of
if=/dev/zero不产生IO,因此可以用来测试纯写速度。
同理of=/dev/null不产生IO,可以用来测试纯读速度。
bs是每次读或写的大小,即一个块的大小,count是读写块的数量。
1.测/目录所在磁盘的纯写速度:
time dd if=/dev/zero bs=1024 count=1000000 of=/1Gb.file
2.测/目录所在磁盘的纯读速度:
dd if=/kvm/ftp/other/1Gb.file bs=64k |dd of=/dev/null
3.测读写速度(这是什么):
dd if=/vat/test of=/oradata/test1 bs=64k
理论上复制量越大测试越准确。
声明:此报告纯粹无聊,并不是为了证明wnmpserver的性能多优越,也不是证明ThinkPHP的性能有多好,ThinkPHP性能测试参考《3.0调试模式和部署模式的性能比较》。
Hello World测试
部署模式
Requests per second: 91.25 [#/sec] (mean)
Time per request: 1095.863 [ms] (mean)
Time per request: 10.959 [ms] (mean, across all concurrent requests)
Transfer rate: 52.22 [Kbytes/sec] received
调试模式
Requests per second: 74.04 [#/sec] (mean)
Time per request: 1350.577 [ms] (mean)
Time per request: 13.506 [ms] (mean, across all concurrent requests)
Transfer rate: 40.26 [Kbytes/sec] received