免费的LAMP-Java在Web开发语言上败给了PHP

Filed under: Java, PHP研究, 开源研究 | No Comments »
Posted on

  PHP的主要语言开发者之一、Zend公司的创始人之一Andi Gutmans最近在blog中直言不讳地批评了Java语言。他指出,目前Java厂商试图在JVM上提供动态语言实现的路子根本不对,Java已经输掉了Web开发语言的战争,PHP是事实上的标准和胜利者。

  Gutmans的这篇文章在技术界引发了强烈争议,很对人对此有不同的意见,我在这里就阐述一下我对PHP和Java两种语言的看法。 阅读全文 »

Tags : , ,

dedecms 负载性能优化实例,三招让你的dede快10倍以上

Filed under: PHP研究, dedecms专栏, 数据库技术 | 2 Comments »
Posted on

        助易网测评小组曾在08年4月对国内主流php类cms做了负载测评,参考我们的测评文章http://www.cmshelp.com.cn/cms/cms2008.htm,其中对dedecms表现出来的相对较差的性能也感觉比较迷惑,到底是什么在制约其负载效率?难道真的是某些脑残的dede论坛版主说的是因为mysql不堪重负的原因吗?还是因为一个表的大数据造成性能严重下降?难道我们必须通过分多个表来存储才能解决问题吗?以下我们通过一个实例来解析和优化dedecms的数据管理性能,千万别让mysql当替罪羊,罪莫大焉。

        欢迎转载本文,转载请注明本文出自助易网(http://www.cmshelp.com.cn)。

        测试数据是无意中得到的企业黄页的数据,数据量将近90万,都是完全真实的数据,测试使用的程序是dedecms4.0版本,你问为什么不用dedecms5.1?那是因为我们为了优化,针对dedecms做了很多修改,如果使用dedecms5.1,我们害怕收到法院传票……,补充一句,以下的优化方法均能在dedecms5.1中使用,请在理解其原理的基础上自行完成。

        未优化前我们测试发现主要有三个经常性的操作在dede大数据量的情况下影响管理性能,分别是文档生成、列表页生成和栏目列出所有文章,我们就针对这三个方面进行优化实践。

        欢迎转载本文,转载请注明本文出肥龙龙博客(http://www.blog-dragon.com/)。

        以下是测试数据的基本信息:

optimize-dede1.jpg

文档数量接近90万

阅读全文 »

Tags : , , ,

2008年最佳开源cms评选最终入围名单

Filed under: 开源研究 | 2 Comments »
Posted on

2008 Open Source CMS Award Finalists Announced

As usual, judging comes from a panel of experienced and respected figures from the Content Management and Open Source industry. They will be selecting their top three based on a number of factors including performance, usability, accessibility, ease of configuration and customization, scalability and security.

The final judge is made up of votes from customers and visitors to www.PacktPub.com. You have the chance to support your favourite CMS by submitting a vote when the final five are announced.

Voting will begin on September 1, to view more information about each finalist, please click below:

评选投票从9月1日开始。赶快选择你喜欢的开源cms吧。 阅读全文 »

Phpcms 2008 Beta1 测试版试用测评报告

Filed under: phpcms专栏 | No Comments »
Posted on

新版的phpcms2008终于浮出水面,我们的助易测试团队迫不及待的对其进行了试用,并用最快的时间完成了测评报告,和所有关注phpcms2008的人分享我们的心得。

前言

2008年9月1日,经过并购风波之后,国内著名内容管理系统phpcms开发团队终于拿出了他们转投新东家的第一份成绩单——phpcms2008 beta1版,相比其他cms发版时大张旗鼓宣传不同,这次测试版的发布相当的低调——发版时间选择在凌晨,官方网站上也没有任何的宣传消息。透过从phpcms论坛以及开发团队所发表的功能说明中,phpcms2008增加很多令人期待的功能,因此虽然此次发布的仅仅是测试版,还是引起了广大站长的关注,助易网测评小组也从phpcms官方网站下载程序并对其进行试用,究竟新的phpcms2008会是什么样子?有什么样的改变?增强了哪些功能?助易网测评小组经评测后给出了自己的答案。

阅读全文 »

Tags : ,

PHP读取RSS feed源代码(带注释,可读取多个源)

Filed under: PHP研究 | No Comments »
Posted on

由于http://www.cmshelp.com.cn/助易网需要读取不同来源的rss feed,写了一个php程序来循环读取rss feed,为了方便阅读及了解程序实现过程,加上了注释,和大家共同学习。而助易网的rss读取就是在这个程序的基础上稍做改造而成,主要是输出了一个数组字符串以及解决编码问题。

注:转载本文,请注明出处http://www.blog-dragon.com/

php源代码及代码详细解释如下:

<?php
//RSS源地址列表数组
$rssfeed = array("http://www.blog-dragon.com/feed",
"http://rss.sina.com.cn/news/allnews/sports.xml",
"http://ent.163.com/special/00031K7Q/rss_toutiao.xml",
"http://tech.163.com/special/00091JPQ/techimportant.xml");
 
//设置编码为UTF-8
header('Content-Type:text/html;charset= UTF-8');
 
for($i=0;$i<sizeof($rssfeed);$i++){//分解开始
    
$buff = "";
    
$rss_str="";
    
//打开rss地址,并读取,读取失败则中止
    
$fp = fopen($rssfeed[$i],"r") or die("can not open $rssfeed");
    
while ( !feof($fp) ) {
        
$buff .= fgets($fp,4096);
    
}
    
//关闭文件打开
    
fclose($fp);
 
    
//建立一个 XML 解析器
    
$parser = xml_parser_create();
    
//xml_parser_set_option -- 为指定 XML 解析进行选项设置
    
xml_parser_set_option($parser,XML_OPTION_SKIP_WHITE,1);
    
//xml_parse_into_struct -- 将 XML 数据解析到数组$values中
    
xml_parse_into_struct($parser,$buff,$values,$idx);
    
//xml_parser_free -- 释放指定的 XML 解析器
    
xml_parser_free($parser);
 
    
foreach ($values as $val) {
        
$tag = $val["tag"];
        
$type = $val["type"];
        
$value = $val["value"];
        
//标签统一转为小写
        
$tag = strtolower($tag);
 
        
if ($tag == "item" && $type == "open"){
            
$is_item = 1;
        
}else if ($tag == "item" && $type == "close") {
            
//构造输出字符串
            
$rss_str .= "<a href='".$link."' target=_blank>".$title."</a><br />";
            
$is_item = 0;
        
}
        
//仅读取item标签中的内容
        
if($is_item==1){
            
if ($tag == "title") {$title = $value;}
            
if ($tag == "link") {$link = $value;}
        
}
    
}
    
//输出结果
    
echo $rss_str."<br />";
}
?>
Tags : ,

dedecms5.1升级sp1出现IfTagNull()错误解决方法记录

Filed under: dedecms专栏 | No Comments »
Posted on

最近有报告错误说从dedecms5.1升级sp1出现错误,代码大致如下:
Fatal error: Call to undefined function IfTagNull() in /……/include/pub_dedetag.php(485) : eval()’d code on line 1
分析错误原因,是因为模板中调用了IfTagNull函数而程序中找不到这个函数导致出错,解决的办法很简单,两种,这里记录一下:
1、修改article_article.htm模板,把{dede:tag type=’current’ function=’IfTagNull(@me)’/} 换回原来的{dede:tag type=’current’ /}
2、修改include目录下的inc_functions.php文件,加入代码如下:

//这个函数根据自己需要进行修改
function IfTagNull($tag){
 
//这里直接输出了Tag:自行修改
 
if(!$tag=="")  $tag="Tag:".$tag;
 
return $tag;
}
Tags : , ,
Page 1 of 512345»