WordPress » 2006 » 七月 imag1
 
 
你正在浏览七月, 2006
张树人:从社会性软件、Web2.0到复杂适应信息系统研究

中国人民大学信息学院张树人的博士论文 《从社会性软件、Web2.0到复杂适应信息系统研究》

(阅读全文…)

Nullgate: 俗人看艺术

水木社区的FreeDevelop版是牛人名士们出没的地方,Nullgate,又名空门,就是其中一员,字里行间透着出世的味道。

发信人: Nullgate (空门·道·骑行天涯), 信区: FreeDevelop
标 题: 俗人看艺术 [软件是一门艺术吗]
发信站: BBS 水木清华站 (Sun Jan 20 14:16:53 2002)

(阅读全文…)

XOOPS 里真正的 DJ

DJs.com.tw,最大的华人DJ网站,由台湾DJ师 Alex Wu 基于XOOPS创建。

preg_match() crashes on large subject size

A variety of applications have been suffering from the issue, including the xLanguage For Xoops.

Some relevant references:
1 PHP bug tracker #27070
preg_match() crashes Apache on VERY SIMPLE pattern but large subject size

It has been tested on 3 different system :
- Red Hat 8.0 + Apache 2.0.40 + PHP 4.2.2
- Red Hat 9 + Apache 2.0.40 + PHP 4.2.2
- Fedora Core 1 + Apache 2.0.48 + 5.0.0b3

Some statistics :
- with pattern “/(a)*/”, it crashes with a subject
length > 13800
- with pattern “/((a))*/”, it crashes with a subject
length > 9200
- with pattern “/(((a)))*/”, it crashes with a subject
length > 6900
- with pattern “/((((a))))*/”, it crashes with a subject
length > 5600
- with pattern “/(((((a)))))*/”, it crashes with a
subject length > 4600
- with pattern “/((((((a))))))*/”, it crashes with a
subject length > 4000
- etc…

2 PHP bug tracker #24460

It seems that PHP - either at command line, or as an Apache 2.0 module -
crashes always against:

preg_match(’/(\r|\n|.)*/’,$test);

where $test may be ANY string of size >= 2152 bytes

3 Perl-compatible regular expressions: PCRE doc

The maximum length of a subject string is the largest positive number that an integer variable can hold. However, when using the traditional matching function, PCRE uses recursion to handle subpatterns and indef-inite repetition. This means that the available stack space may limit the size of a subject string that can be processed by certain patterns.

4 Ilia Alshanetsky: Top 10 ways to crash PHP

PCRE library bug. While this not a PHP bug per say since the cause of the bug is the bundled pcre library (non-bundled library suffers from the same problem) it still allows a PHP script to crash the process.

preg_match(’/(.(?!b))*/’, str_repeat(”a”, 10000));

eWEEK:开源与.net — WAMP以及在windows系统下运行开源软件

Linux and .Net stacks play nice
ZDNet - USA

WAMP and open source on Windows
InfoWorld - San Francisco,CA,USA

为了测试各种开源软件在windos系统下运行的性能,eWEEK 实验室最近完成了一系列针对各种linux和windows IT 应用组件的完整测试。实验结果表明,WAMP组件可以让IT管理者在Windows系统下采用开源系统而不必首先成为linux系统管理员,尤其巨大优势和效率。

实验涉及的产品包括从基于web的门户系统到企业内容管理系统到CRM(客户关系管理)和ERP平台。

据eWEEK 实验室主任Jim Rapoza在7月9日发表的文章介绍,他们选择了不同编程语言最具代表性的门户系统,分别是:

  • ASP: Microsoft SharePoint Portal Server 2003
  • PHP: XOOPS
  • Python: Plone
  • JSP: Liferay and JBoss Portal

并采用了Borland 公司的 SilkPerformer 作为实际测试和报告管理,发表的数据主要侧重于性能方面,包括

  • average transactions per second
  • average throughput per second
  • average hits per second
  • average page download time
  • average document download time

LAMP
该项试验是采用纯粹的LAMP组件,包括SUSE Enterprise Linux, Apache, MySQL 以及 XOOPS 门户和内容管理系统。他们采用XOOPS的原因是考虑到它的流行程度和在sourceforge.net极高的活跃程度排名。几乎在他们所作的每次测试中,基于php的该LAMP组件都是极其稳定可靠的,具有中等性能。
该项试验结果表明,基于纯粹LAMP的PHP系统可以很轻易的满足企业级应用的流量和负载。

Linux J2EE
liferay门户系统被选中作为该项基于java的组件实验。经过测试,该组件具有最优的性能;其性能可能来自于轻量级的Hypersonic SQL数据库。

Linux JBoss
相对于其他门户系统,JBoss有些不成熟,相应的测试结果也表明该组件性能比较差(基于CentOS + MySQL)。

Linux Python
该组件采用了Zope应用服务器和Plone门户及内容管理系统,测试结果表明该组件具有中等性能,比预期的要好。

.Net
组件包括Windows Server 2003 R2, SQL Server 2005 和 SharePoint Portal Server 2003,试验结果表明该组件的性能非常不错。其优良的性能来自于该组件各元素之间良好的集成;开源和Java系统的开发都是各自独立的,而.net的设计却特别考虑到各元素之间的集成和性能。

Windows 和开源
无论是windows社区还是开源社区,似乎都无法接受开源服务器元素与windows操作系统的结合。那些试图在windows系统下运行开源应用系统的IT管理者被认为吝啬鬼,应该升级到”真正”的Windows产品。而开源社区则认为WAMP套件可以作为开发和测试使用,但却缺乏真正的产品化环境,需要升级到”真正”的linux和unix环境。
然而这种情况正在发生变化。他们在分析一些顶级开源企业级应用的用户论坛时发现有很多IT管理者试图在windows系统下运行开源产品而不必首先成为linux系统管理员。他们对WAMP组件的实验表明,这些用户的想法并非不可行。这些WAMP组件包括:

  • Windows Server 2003, Apache, MySQL 及基于 PHP 的 XOOPS
  • 运行于 Windows Server 2003 R2 的 Plone
  • 运行于 Windows Server 2003 的 JBoss 和 MySQL

这三个系统都是性能测试中的佼佼者,其中JBoss在windows下的性能远超过其linux组件。同时,在整个测试过程中这些系统没有一个发生故障,就像寓言中的乌龟一样,行进的速度可能有些慢,但是非常稳定。
根据他们的实验结果,最出乎意外的或许就是WAMP组件的优良性能。企业IT管理者可以毫不犹豫的在Windows服务器上应用开源组建。
对某些商业应用来说,将是这两个社区最好的选择。

(阅读全文…)