Changes between Version 12 and Version 13 of Introduction


Ignore:
Timestamp:
2013-09-03T01:00:35+02:00 (12 months ago)
Author:
AlexisWilke
Comment:

Well... The first paragraph was neat, but the others needed a little help. 8-) Better English.

Legend:

Unmodified
Added
Removed
Modified
  • Introduction

    v12 v13  
    1010Yeah, i know them very well. 
    1111 
    12 I noticed phpa (PHP Accelerator) long ago, and looked at truck-mmcache around the time it was still being actively maintained. Sadly phpa's project died and never updated its code to support newly released versions of PHP. So I used truck-mmcache for a period of time, but... it hanged or crashed continously after being under high load. I noticed APC later, but I've been reading both APC/truck-mmcache source for a long time (I couldn't have writen XCache if I hadn't read them), discovering that APC code is simpler and more beautiful than mmcache's. Features are good, but I believe that stability is more important. So I finally turned to run APC online -- simpler often means more stable. mmcache forked eaccelerator later and they setup [http://www.eaccelerator.net www.eaccelerator.net], running [http://trac.edgewall.com/ trac]. 
     12I noticed phpa (PHP Accelerator) long ago, and looked at truck-mmcache around the time it was still being actively maintained. Sadly the phpa project died and never updated its code to support new releases of PHP. So I used truck-mmcache for a period of time, but... it hanged or crashed continuously when used under high load. I noticed APC later and I've been reading the source code for a long time (I couldn't have written XCache if I hadn't read those sources), discovering that APC code is simpler and more beautiful than mmcache's. Features are good, but I believe that stability is more important. So I finally turned to run APC online -- simpler often means more stable. mmcache forked eaccelerator later and they setup [http://www.eaccelerator.net www.eaccelerator.net], running [http://trac.edgewall.com/ trac]. 
    1313 
    1414== But why do you write XCache after that? Why not contribute to ea/apc? == 
    15 I DID filing bug report, submiting patches to both [http://pecl.php.net/bugs/search.php?cmd=display&package_name[]=APC&status=All apc bug report system] and [http://sourceforge.net/tracker/?group_id=69426&atid=524487 truck-mmcache on sf.net] and interactive with communicate with [http://blog.zoeloelip.be/ zoeloelip], one of the main [https://sourceforge.net/users/zoeloelip/ developer] of eaccelerator. He's the first one read my XCache source, long before XCache is published online. I'm not sure, but i guess the idea he rewrite ea_dasm.c is base on my Disassembler idea in XCache :) 
     15I DID file bug reports, submit patches to both [http://pecl.php.net/bugs/search.php?cmd=display&package_name[]=APC&status=All apc bug report system] and [http://sourceforge.net/tracker/?group_id=69426&atid=524487 truck-mmcache on sf.net] and interact with [http://blog.zoeloelip.be/ zoeloelip], one of the main [https://sourceforge.net/users/zoeloelip/ developer] of eaccelerator. He's the first one who read my XCache source, long before XCache was published online. I'm not sure, but I think that his idea of rewriting ea_dasm.c is based on my Disassembler idea in XCache :) 
    1616 
    1717There are many reasons for me to write XCache instead of using APC or EA: 
    18  * Something too big to be made into them (ea/apc). 
    19  * I have many new ideas on opcode cacher, but I just can't break their cacher to prove my ideas. 
    20  * To prove my programming skills? Making project oneself isn't that simple. With only programming skill is far insufficient, you need to become project admin, designing how the project will be, foresee the cost and benefits ... blah blah 
     18 * Some things are too big to be implemented in those other projects (ea/apc). 
     19 * I have many new ideas on opcode cacher, but I just can't break their cacher to prove that my ideas would improve performance. 
     20 * To prove my programming skills? Running your own project isn't that simple. Just programming skills are not sufficient, you need to become a project admin, design how the project will move forward, foresee the costs and benefits ... blah blah 
    2121 
    22 To conclude, I've finished writting XCache for quite a long time, before then I had used APC. Although it was quite stable for a php4 with flock() configuration it had become unstable once I upgraded my server to a dual cpu (4 threaded cpu) because it flock()ed badly so XCache was used instead and seems to have solved the problem. 
     22To conclude, I've finished writing XCache for quite a long time, before then I used APC. Although it was quite stable for a php4 with flock() configuration it had become unstable once I upgraded my server to a dual cpu (4 threaded cpu) because it flock()ed badly so I used XCache instead and it seemed to solve the problem. 
    2323 
    24 ea/apc is still good opcode cacher, as long as it's maintained actively, and if it's stable for you. 
     24ea/apc are still good opcode cachers, as long as they get maintained actively, and if they are stable for you. 
    2525 
    2626== What's special in XCache? == 
    2727see FeatureList. 
    2828 
    29 btw. I myself, focus XCache on study for stable, for code generating. 
     29By the way, I focus my effort to keep XCache stable.