后台对文章的添加、修改、删除等操作部分,因为程序没有完成,尚无法进行高数据量下的测试。等beta版出了以后再进行一次更详细的测试
先提供一下测试的基本信息:
1、硬件环境
CPU:amd 5000+
内存:2GB
2、软件环境
系统:Windows XP PRO Service Pack 2
Web服务器:Apache HTTP Server 2.0.58
PHP:5.2.6.6
MYSQL:MySQL Server 5.067
3、五十万数据插入程序test.php
代码: 全选
<?php
/** 载入配置文件 */
require_once 'config.inc.php';
/** 连接数据库 */
$db = Typecho_Db::get();
/**设置超时*/
set_time_limit(0);
/**循环插入数据(50万数据对于blog来说好像变态了点)*/
for($i=1;$i<500000;$i++){
/** 插入关系 */
$db->query($db->insert('table.relationships')->rows(array('cid' => $i, 'mid' => 1)));
/** 插入内容 */
$db->query($db->insert('table.contents')->rows(array('title' => _t('Typecho数据负载测试:名字的由来'), 'slug' => 'start', 'created' => 1211300209, 'modified' => 1211300209,
'text' => _t('<p>曾经,有一个开源博客程序叫做Magike,在它发布1.2正式版之后,开发组的几个人开始商讨下一步的开发计划,有这样几个问题摆在了我们目前:
1、Magike博客程序是基于Magike Framework开发,保证了程序的效率和安全性,但是这个MVC的框架结构比较复杂,更适合用于开发大型项目,如果在博客程序开发中可以精简掉Magike Framework自带的模板引擎以及其他一些代码,就可以提供给用户一个更精巧的程序,这与我们希望代码越少越好的初衷一致,这直接推动了新版本从内核开始重写。
2、作为一个使用GPL V2发布的开源程序来说,虽然我们极力保证代码的规范性,但还是存在一些不足,比如程序注释不够详细,加上开发团队在对国际化的理解上走了一点弯路,与其逐步完善,不如从根本上重来,让新程序的开源血统更加纯洁。
3、Magike.com这个域名不在我们手里,而且Magike这个名字并不具备浅显易懂的含义,记忆起来有难度。
就在Magike团队决定为这个全新的博客程序拍脑袋想名字的时候,又有一名优秀的设计师fen加入了我们,Magike这个程序也获得越来越多用户的反馈,于是有人想到了Typecho这个名字。
Type,有打字的意思,博客这个东西,正是一个让我们通过打字,在网络上表达自己的平台。
Echo,意思是回声、反馈、共鸣,也是PHP里最常见、最重要的函数,相信大部分PHP爱好者都是从echo Hello,world;开始自己的PHP编程之路的。
将这两个词合并在一起,就有了Typecho,我们期待着越来越多的人使用我们开发的程序,也期待着越来越多的人加入到开源的行列里。
大家一起来,Typecho</p>'), 'author' => 1, 'type' => 'post', 'commentsNum' => 0, 'allowComment' => 'enable',
'allowPing' => 'enable', 'allowFeed' => 'enable')));
}
/**显示完成*/
echo "ok";
?>
文章选用的是TYPECHO名称的由来,去掉了几个标点。插入数据库前先清空relationships表和contents表。
然后就开始插入数据,一切顺利,用了大约8分钟。下面是插入数据后,数据库占用空间大小:
打开后台大约用了3秒,然后就是接着打开管理文章页面,1秒开啊,很好很好很好。下面是截图:
接着就是翻页了,大约1.5秒的样子…… 继续截图:
接着就是直接从第二页翻到最后一页,也就是第25000页(囧,就算一天写10篇博客,不知道头发白了能不能写到50万篇)还可以,大约用了4秒:
非常非常可惜的是,php.ini的脚本超时也设置的非常大了,我尝试了很多遍,不管是单篇还是首页,可就是没有能打开前台页面……
一片空白的前台页面上可能还要做一些文章才行……