Simple Machines Community Forum

SMF Support => Server Performance and Configuration => Topic started by: [Unknown] on September 19, 2005, 01:35:51 AM

Title: What is eAccelerator?
Post by: [Unknown] on September 19, 2005, 01:35:51 AM
First, some background is necessary.  SMF is written in a very portable language called PHP, which is very commonly used for web software.  It has its advantages and disadvantages, and some people prefer it, and some do not.  But, regardless, it is what SMF (not unlike many other packages) requires.

As you know, you upload PHP files to your server, and type the URL to them in your browser.  Instead of seeing the file you uploaded, you see something generated by it - or, rather, by PHP.  You don't have to do anything (except installing PHP) to make this happen - just access the file.  When you do so, the following things happen:

This is all well and good, and makes many things - like testing - easier.  However, for larger sites, the resources the first step (analyzing the sourecode and compiling it) takes becomes more and more of a problem.  Since this step is always done exactly the same way, it's possible to cache the resulting compiled code (either to disk or to memory) and avoid that first step.

Furthermore, once you start caching the compiled code, you can do one more thing: optimization.  Instead of optimization taking more time than it is worth on every page view, it can take that time only for the first page view, an investment for the future.  Optimization means removing parts of the code known not to be necessary on your server, calculating the result of mathematical equations, and such things.

This is what eAccelerator does for PHP.  There are other competing products available as well, such as Turck MMCache (which eAccelerator, as of this writing, is based on), PHP-Accelerator, Zend Optimizer, and APC.  Some of these only optimize code, or only cache it, or do both.  Currently, we recommend eAccelerator, because in our tests, production usage, and benchmarks it has shown to preform better than the others.  Most of the larger SMF forums use it, to great effect - it has even reversed the effects of a slashdotting.

In addition, SMF 1.1 can take advantage of eAccelerator (and other optimizers/accelerators) for a performance benefit, as well, by way of the caching it exposes to scripts for general data.  But that's for another topic.  Suffice it to say optimizers are good.

If you are on a dedicated server, you can install and test it for yourself.  Installation is fairly easy and straight-forward:

$ wget http://yourmirror.dl.sourceforge.net/sourceforge/eaccelerator/eaccelerator-0.9.3.tar.gz
$ tar xvzf eaccelerator-0.9.3.tar.gz
$ cd eaccelerator-0.9.3
$ /usr/bin/phpize
$ ./configure --enable-eaccelerator=shared --with-eaccelerator-content-caching --with-php-config=/usr/bin/php-config
$ make
$ su
$ mkdir /tmp/eaccelerator
$ chown apache:apache-group /tmp/eaccelerator
$ chmod 1700 /tmp/eaccelerator
$ make install
(the italicized versions will vary on your system; Apache usually runs as "nobody".)

If you're on Windows, binaries are available at www.arnot.info (http://www.arnot.info/eaccelerator/).

After that, you need to add a line to php.ini for it to load this extension.  Typically, the line will look like this:

zend_extension=/path/to/eaccelerator.so

Depending on your platform, it may take a few more tries.  When you have it installed, running:

$ php -v

Will show the version of eAccelerator along with the PHP version.  After restarting Apache, you should see an immediate (although, depending on your server, perhaps not hugely noticeable) improvement in load times.  For more information and more thorough configuration, look at www.eaccelerator.net (http://www.eaccelerator.net/InstallEacceleratorUk).

You may also want to check these topics, affected by using eAccelerator:
http://www.simplemachines.org/community/index.php?topic=50227.0
http://www.simplemachines.org/community/index.php?topic=50229.0

-[Unknown]
Title: Re: What is eAccelerator?
Post by: junglecat on September 19, 2005, 01:55:39 AM
I have a question I've never really gotten a satisfactory answer to.

How compatible are zend and eAccelerator on the same server? Is there any particularly special configurations needed if you run both?

The reason I ask, is because I host some scripts that require zend. If I install eAccelerator, I don't want to break any sites.

I'm particularly interested because I would like to offer free SMF hosting, but I want to be very sure of what I'm doing before I make that offer.
Title: Re: What is eAccelerator?
Post by: Elijah Bliss on September 19, 2005, 02:09:31 AM
Excellent stuff. Caching saved me a ton of headaches.
Title: Re: What is eAccelerator?
Post by: [Unknown] on September 19, 2005, 02:09:58 AM
Quote from: junglecat on September 19, 2005, 01:55:39 AM
I have a question I've never really gotten a satisfactory answer to.

How compatible are zend and eAccelerator on the same server? Is there any particularly special configurations needed if you run both?

That depends on what you mean by Zend, but I would assume you mean Zend Optimizer.

Zend Optimizer does what it says - it's an optimizer.  It does no bytecode caching (that's what I spent so much time talking about.)  It also loads encoded PHP scripts, which is an important feature for some servers to have (unfortuntely, in my opinion.)

Both Zend Optimizer and eAccelerator can work on the same server at the same time.  As far as I know, the only thing you have to keep in mind is that loading eaccelerator.so has to come before the ZendOptimizer.so file.  In other words, you'll have:

zend_extension=/path/to/ZendOptimizer.so

Just make sure eAccelerator is loaded BEFORE ZendOptimizer.so.  To be honest, I've never tried this, but I know a lot of people run them together, and have said this.  It may not be required, but it can't hurt even so.

From the distribution file, less verbose than I:

; eAccelerator is compatible with Zend Optimizer's loader. Zend Optimizer
; must be installed after eAccelerator in php.ini. If you don't use scripts
; encoded with Zend Encoder then we do not recommend you install Zend Optimizer
; with eAccelerator.


QuoteI'm particularly interested because I would like to offer free SMF hosting, but I want to be very sure of what I'm doing before I make that offer.

When offering free hosting, there are a few things you have to take into account:
  - free hosting means hackers can sign up to hack someone else's forum.  This means tighter security, rigorous screening, or both.
  - you'll want to restrict things using open_basedir, disabled_functions, and possibly even safe_mode (and I'd suggest using suExec if you use safe_mode.)

eAccelerator works best when you have a smaller collection of files.  If you have multiple installations of the same version of SMF, I would suggest pointing their $sourcedir's all to the same place.  This will mean that eAccelerator will cache all their files once, taking less memory and resources for the same benefit.  You will definitely want the package manager disabled.

-[Unknown]
Title: Re: What is eAccelerator?
Post by: junglecat on September 19, 2005, 02:22:05 AM
Quote from: [Unknown] on September 19, 2005, 02:09:58 AMThat depends on what you mean by Zend, but I would assume you mean Zend Optimizer.
Sorry, yes, I meant Zend Optimizer

Quote from: [Unknown] on September 19, 2005, 02:09:58 AMWhen offering free hosting, there are a few things you have to take into account:
  - free hosting means hackers can sign up to hack someone else's forum.  This means tighter security, rigorous screening, or both.
  - you'll want to restrict things using open_basedir, disabled_functions, and possibly even safe_mode (and I'd suggest using suExec if you use safe_mode.)
Yep, that's why I'm hanging out here,  :D I'm trying to learn all this stuff so I'll know what I'm doing. Eventually. 8)
One possibility I was thinking of was to make separate cpanel accounts for each forum to help keep people out of each other's accounts.
BUT I'm deciding on nothing yet until I explore ALL the possibilities.

Quote from: [Unknown] on September 19, 2005, 02:09:58 AMeAccelerator works best when you have a smaller collection of files.  If you have multiple installations of the same version of SMF, I would suggest pointing their $sourcedir's all to the same place.  This will mean that eAccelerator will cache all their files once, taking less memory and resources for the same benefit.  You will definitely want the package manager disabled.
Whoa... GREAT idea (I would never have thought of that on my own).
Title: Re: What is eAccelerator?
Post by: Dannii on September 19, 2005, 06:23:34 AM
I don't have "phpize" and can't find out much about it. i'm running on a server:
Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-15 4.1.11-Debian_4-log

I downloaded it fine.. but yeah not sure what to do now.
Title: Re: What is eAccelerator?
Post by: Compuart on September 19, 2005, 06:55:01 AM
Have you tried to locate phpize by typing
locate phpize
in the shell?
Title: Re: What is eAccelerator?
Post by: Dannii on September 19, 2005, 07:33:23 AM
I get nothing with that, so I guess I'll have to install it manually cause debian don't seem to know anything about it. Unless its in a later version of php, cause I'm planning on upgrading anyway.
Title: Re: What is eAccelerator?
Post by: zmobie on September 19, 2005, 10:19:18 AM
Thanks for the summary on eAccelerator!

I'm a little concerned about the current state of the project.  On the homepage, the status seems very up in the air.  What's your feelings on that?
Title: Re: What is eAccelerator?
Post by: Webrunner on September 19, 2005, 03:19:28 PM
I don't have phpize on my server either :(
Title: Re: What is eAccelerator?
Post by: Webrunner on September 19, 2005, 03:41:57 PM
OK, i installed the php-dev package and now it is there :)
Title: Re: What is eAccelerator?
Post by: [Unknown] on September 20, 2005, 05:04:17 PM
Quote from: eldacar on September 19, 2005, 06:23:34 AM
I don't have "phpize" and can't find out much about it. i'm running on a server:
Apache/1.3.33 (Debian GNU/Linux) PHP/4.3.10-15 4.1.11-Debian_4-log

I downloaded it fine.. but yeah not sure what to do now.

You're using rpms, aren't you?  In that case, you need to either compile PHP from source or install php-devel/php-dev/etc.

Quote from: zmobie on September 19, 2005, 10:19:18 AM
Thanks for the summary on eAccelerator!

I'm a little concerned about the current state of the project.  On the homepage, the status seems very up in the air.  What's your feelings on that?

They wanted to start distributing eAccelerator with some other software.  However, the original creator of Turck MMCache was not willing to allow this (and he owns the original copyrights to much of the code.)  They plan to rewrite it, which I agree is dubious, but the current stable version is enough of a benefit.

I'm not sure we will recommend their new version, though - I won't until I see that it's as good as their current.  So, for now, I suggest the usage of 0.9.3.

-[Unknown]
Title: Re: What is eAccelerator?
Post by: Dannii on September 22, 2005, 03:41:33 AM
I got phpize now. It displays this:
QuoteConfiguring for:
PHP Api Version:         20020918
Zend Module Api No:      20020429
Zend Extension Api No:   20021010
And then stops. do you know what could be causing that?
Title: Re: What is eAccelerator?
Post by: [Unknown] on September 22, 2005, 03:57:47 AM
That's all phpize should do.  It's done its job, now on to the next step (configure)!

-[Unknown]
Title: Re: What is eAccelerator?
Post by: Dannii on September 22, 2005, 04:36:20 AM
But should it take me back to the command prompt (it does not at the moment)? Or do i just type the configure lines without the prompt?
Title: Re: What is eAccelerator?
Post by: [Unknown] on September 22, 2005, 04:53:49 AM
Try hitting enter.  The phpize command may take a few seconds to finish.

-[Unknown]
Title: Re: What is eAccelerator?
Post by: Dannii on September 27, 2005, 04:47:10 AM
A few minutes on this old computer :P

I'm pretty sure I have it all installed correctly, but i don't know if I have it correctly in php.ini
What's the easiest way to check if it's running?
Title: Re: What is eAccelerator?
Post by: boogiedown on October 05, 2005, 09:33:24 PM
what do i relace here? chown apache:apache-group /tmp/eaccelerator and with what?
Title: Re: What is eAccelerator?
Post by: Ben_S on October 06, 2005, 11:55:12 AM
What does your apache run as?
Title: Re: What is eAccelerator?
Post by: boogiedown on October 06, 2005, 02:37:49 PM
ok, got it "nobody"
Title: Re: What is eAccelerator?
Post by: Elmacik on October 20, 2005, 12:55:54 AM
eAccelerator is installed but not taking place in phpinfo.... why?
here is the relevant part of php5.ini 

[eAccelerator]
;extension=eaccelerator.dll
;eaccelerator.shm_size = "0"
;eaccelerator.cache_dir = "G:\PHP\xampp\tmp"
;eaccelerator.enable = "1"
;eaccelerator.optimizer = "1"
;eaccelerator.debug = "0"
;eaccelerator.check_mtime = "1"
;eaccelerator.filter = ""
;eaccelerator.shm_max = "0"
;eaccelerator.shm_ttl = "0"
;eaccelerator.shm_prune_period = "0"
;eaccelerator.shm_only = "0"
;eaccelerator.compress = "1"
;eaccelerator.compress_level = "9"
;eaccelerator.keys = "shm_and_disk"
;eaccelerator.sessions = "shm_and_disk"
;eaccelerator.content = "shm_and_disk"
;eaccelerator.admin.name =
;eaccelerator.admin.password =
Title: Re: What is eAccelerator?
Post by: Ben_S on October 20, 2005, 05:56:19 AM
You have it commented out, remove the ;'s.
Title: Re: What is eAccelerator?
Post by: Elmacik on October 20, 2005, 08:04:17 AM
ah dammit i didnt notice that :)
thanks..
does to install two optimizing engine harm the system?
and if yes, which lines should i remove for zend?
these? :

[Zend]
zend_extension_ts = "G:\PHP\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
zend_extension_manager.optimizer_ts = "G:\PHP\xampp\php\zendOptimizer\lib\Optimizer"
zend_optimizer.enable_loader = 0
zend_optimizer.optimization_level=15
Title: Re: What is eAccelerator?
Post by: Oldiesmann on October 20, 2005, 12:03:55 PM
As I recall, they don't recommend runing both eAccelerator and Zend Optimizer unless you need Zend encoding, so you should comment out and/or remove the Zend lines.
Title: Re: What is eAccelerator?
Post by: Gandalf on November 03, 2005, 03:30:51 PM
Hello there,

I have my own server, I am using Joomla ( CMS ) and SMF 1.1, do you think that this eAccelerator may have a better perfermance on my server?

Thx
Title: Re: What is eAccelerator?
Post by: Joshua Dickerson on November 03, 2005, 03:36:34 PM
Quote from: Gandalf on November 03, 2005, 03:30:51 PM
Hello there,

I have my own server, I am using Joomla ( CMS ) and SMF 1.1, do you think that this eAccelerator may have a better perfermance on my server?

Thx
try it.
Title: Re: What is eAccelerator?
Post by: Ben_S on November 04, 2005, 11:49:06 AM
Deffinatly.
Title: Re: What is eAccelerator?
Post by: Gandalf on November 04, 2005, 11:50:57 AM
I installed it yesterday, it works no errors so far, though i didnt notice a great improvement in the perfermance, I will compare next week server load statistic with last week to see which one is better..

Thx anyway..
Title: Re: What is eAccelerator?
Post by: Ben_S on November 04, 2005, 01:41:55 PM
It does make a difference, forgot to readd it after upgrading to php 4.4.1 and load was significantly higher. Unless your server is working hard anyway you are unlikely to really notice it, but page generation time will be slightly lower.

You can see it here in fact, http://www.redandwhitekop.com/load/index.php?logfile=1131062400.log No prizes for guessing what time I added it back in.
Title: Re: What is eAccelerator?
Post by: Elmacik on November 06, 2005, 03:40:16 PM
Here are my settings about optimizers:

[eAccelerator]
extension=eaccelerator.dll
eaccelerator.shm_size = "0"
eaccelerator.cache_dir = "G:\PHP\xampp\tmp"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.debug = "0"
eaccelerator.check_mtime = "1"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
eaccelerator.admin.name =
eaccelerator.admin.password =

[Zend]
;zend_extension_ts = "G:\PHP\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "G:\PHP\xampp\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =


When I look at my phpinfo, I dont see eAccelerator anywhere but on the other hand, zend is there >:(
Whats wrong? (Yes, I restarted the server after changing the settings and checked back)
Title: Re: What is eAccelerator?
Post by: Compuart on November 06, 2005, 05:13:29 PM
Quote from: Elmacik on November 06, 2005, 03:40:16 PM
Here are my settings about optimizers:

[eAccelerator]
extension=eaccelerator.dll
eaccelerator.shm_size = "0"
eaccelerator.cache_dir = "G:\PHP\xampp\tmp"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.debug = "0"
eaccelerator.check_mtime = "1"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
eaccelerator.admin.name =
eaccelerator.admin.password =

[Zend]
;zend_extension_ts = "G:\PHP\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "G:\PHP\xampp\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =


When I look at my phpinfo, I dont see eAccelerator anywhere but on the other hand, zend is there >:(
Whats wrong? (Yes, I restarted the server after changing the settings and checked back)
Make sure the extension dir is set right (extension_dir setting in php.ini). Also make sure you have the php.ini that's in xampp\apache\bin. Xampp has multiple php.ini files, only one is valid ;)
Title: Re: What is eAccelerator?
Post by: Elmacik on November 06, 2005, 05:23:26 PM
Umm.. I didnt notice that :D
I knew that it has many php.ini files, In case doing it wrong, I changed all of them but see, I missed one :D
But thats ok, people learn by trying and making mistakes.. ;)
Thanks Compuart
Title: Re: What is eAccelerator?
Post by: Gandalf on November 08, 2005, 06:29:06 AM
Just a little info... for whom did integrate Coopermine Photo Gallery with SMF, if they use caching, the gallery will not work, it will give an error...
Title: Re: What is eAccelerator?
Post by: Motorhead on November 08, 2005, 07:16:25 AM
I've probably misunderstood but I'm running

SMF 1.1 rc1 + MKPortal 1.1 with Coppermine intergated into my SMF and I've got Eaccelerator installed , don't seem to have a problem ??

Title: Re: What is eAccelerator?
Post by: Gandalf on November 10, 2005, 04:10:43 AM
Hmmm That's weird :o i have Joomla + SMF + coppermine but when i turned it on
REPLACE INTO smf_settings
   (variable, value)
VALUES ('cache_enable', '2');

I had a weird error while accessing coppermine i don't remember it but something about cache
Title: Re: What is eAccelerator?
Post by: Ben_S on November 10, 2005, 04:51:36 AM
Some versions of the coppermine bridge dont like it, do a search, theres a posted fix.
Title: Re: What is eAccelerator?
Post by: Bonk on November 10, 2005, 08:56:23 AM
In case anyone is looking for eAccelerator 0.9.3 for php 5.0.5 on win32:

http://www.dynaverse.net/downloads/Utilities/eAccelerator0.9.3_php5.0.5.zip

I decided not to wait for http://www.arnot.info/eaccelerator/ to do it as I wanted to use php 5.0.5 right away, so I went ahead and compiled it myself, it took a little futzing but it compiled OK and is running fine on our server.

Enjoy!  :D
Title: Re: What is eAccelerator?
Post by: Elmacik on November 10, 2005, 11:53:17 AM
Quote from: Compuart on November 06, 2005, 05:13:29 PM
Quote from: Elmacik on November 06, 2005, 03:40:16 PM
Here are my settings about optimizers:

[eAccelerator]
extension=eaccelerator.dll
eaccelerator.shm_size = "0"
eaccelerator.cache_dir = "G:\PHP\xampp\tmp"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.debug = "0"
eaccelerator.check_mtime = "1"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"
eaccelerator.admin.name =
eaccelerator.admin.password =

[Zend]
;zend_extension_ts = "G:\PHP\xampp\php\zendOptimizer\lib\ZendExtensionManager.dll"
;zend_extension_manager.optimizer_ts = "G:\PHP\xampp\php\zendOptimizer\lib\Optimizer"
;zend_optimizer.enable_loader = 0
;zend_optimizer.optimization_level=15
;zend_optimizer.license_path =


When I look at my phpinfo, I dont see eAccelerator anywhere but on the other hand, zend is there >:(
Whats wrong? (Yes, I restarted the server after changing the settings and checked back)
Make sure the extension dir is set right (extension_dir setting in php.ini). Also make sure you have the php.ini that's in xampp\apache\bin. Xampp has multiple php.ini files, only one is valid ;)

Weird but that didnt work :(
Title: Re: What is eAccelerator?
Post by: Bonk on November 25, 2005, 06:00:26 PM
eAccelerator 0.9.4-rc1 (or 0.9.3) is not compatible with php 5.1.0... grrr!  >:(

http://sourceforge.net/forum/forum.php?thread_id=1390864&forum_id=416742
Title: Re: What is eAccelerator?
Post by: Ben_S on November 25, 2005, 08:09:48 PM
Use APC, it's a better solution all round if you ask me, going to make the switch myself.
Title: Re: What is eAccelerator?
Post by: MAZZA on November 25, 2005, 09:03:35 PM
What is the advantage of APC over eAccellerator?
Title: Re: What is eAccelerator?
Post by: Bonk on November 26, 2005, 01:11:57 AM
None for me it would appear. APC degrades my server performance by about 10% compared to no caching at all and by about 300% compared to eAccelerator. I do not reccomend APC based on this experience. I'm going to give the Zend Optimizer another try...
Title: Re: What is eAccelerator?
Post by: Bonk on November 26, 2005, 01:58:28 AM
It appears that the Zend Optimiser 2.5.10 is not compatible with php 5.1.0 either...  >:(

I'm thinking I'll give up on caching programs in order to allow me to keep my php up to date. I'm considering writing my own php caching application at this point if I will ever use one again.
Title: Re: What is eAccelerator?
Post by: Ben_S on November 27, 2005, 07:12:49 AM
Interesting, planning on doing my own APC testing tonight.
Title: Re: What is eAccelerator?
Post by: MAZZA on November 27, 2005, 06:31:48 PM
Yesterday i read an article about PHP6 which stated APC would be added to PHP core distribution. Disabled by default but it will eventually be available for many people. http://www.php.net/~derick/meeting-notes.html#add-an-opcode-cache-to-the-distribution-apc

So i'm interested in your test results Ben_S :)
Title: Re: What is eAccelerator?
Post by: Ben_S on November 27, 2005, 07:23:09 PM
APC seems to visibly perform about the same to me, I'm still using PHP 4.4.1 though.

Some tests with apachebench as follows which show a similar level of performance. I did two tests using each accelerator and for the sake of it, did two tests with no accelerator. These tests are pretty random given than in the last 10 minutes there are 100+ users active on my board. They do show how important an accelerator is though....

APC

Server Software:        Apache/1.3.34
Server Hostname:        www.redandwhitekop.com
Server Port:            80

Document Path:          /forum/index.php
Document Length:        35095 bytes

Concurrency Level:      2
Time taken for tests:   49.457821 seconds
Complete requests:      1000
Failed requests:        901
   (Connect: 0, Length: 901, Exceptions: 0)
Write errors:           0
Total transferred:      35470715 bytes
HTML transferred:       35002715 bytes
Requests per second:    20.22 [#/sec] (mean)
Time per request:       98.916 [ms] (mean)
Time per request:       49.458 [ms] (mean, across all concurrent requests)
Transfer rate:          700.37 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    47   98  67.3     80     796
Waiting:       41   86  57.7     71     767
Total:         47   98  67.3     80     796

Percentage of the requests served within a certain time (ms)
  50%     80
  66%     89
  75%     98
  80%    108
  90%    161
  95%    217
  98%    315
  99%    380
100%    796 (longest request)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Server Software:        Apache/1.3.34
Server Hostname:        www.redandwhitekop.com
Server Port:            80

Document Path:          /forum/index.php
Document Length:        33736 bytes

Concurrency Level:      2
Time taken for tests:   42.637633 seconds
Complete requests:      1000
Failed requests:        955
   (Connect: 0, Length: 955, Exceptions: 0)
Write errors:           0
Total transferred:      34174338 bytes
HTML transferred:       33706338 bytes
Requests per second:    23.45 [#/sec] (mean)
Time per request:       85.275 [ms] (mean)
Time per request:       42.638 [ms] (mean, across all concurrent requests)
Transfer rate:          782.71 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    47   84  51.7     77     876
Waiting:       41   76  40.8     71     708
Total:         47   84  51.7     77     876

Percentage of the requests served within a certain time (ms)
  50%     77
  66%     84
  75%     89
  80%     93
  90%    105
  95%    140
  98%    222
  99%    288
100%    876 (longest request)

+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

EA

Server Software:        Apache/1.3.34
Server Hostname:        www.redandwhitekop.com
Server Port:            80

Document Path:          /forum/index.php
Document Length:        34464 bytes

Concurrency Level:      2
Time taken for tests:   44.448606 seconds
Complete requests:      1000
Failed requests:        561
   (Connect: 0, Length: 561, Exceptions: 0)
Write errors:           0
Total transferred:      34930866 bytes
HTML transferred:       34462866 bytes
Requests per second:    22.50 [#/sec] (mean)
Time per request:       88.897 [ms] (mean)
Time per request:       44.449 [ms] (mean, across all concurrent requests)
Transfer rate:          767.45 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    41   88  56.9     77     693
Waiting:       37   80  52.6     70     683
Total:         41   88  56.9     77     693

Percentage of the requests served within a certain time (ms)
  50%     77
  66%     84
  75%     91
  80%     97
  90%    126
  95%    173
  98%    258
  99%    325
100%    693 (longest request)


++++++++++++++++++++++++++

Server Software:        Apache/1.3.34
Server Hostname:        www.redandwhitekop.com
Server Port:            80

Document Path:          /forum/index.php
Document Length:        33952 bytes

Concurrency Level:      2
Time taken for tests:   44.242524 seconds
Complete requests:      1000
Failed requests:        956
   (Connect: 0, Length: 956, Exceptions: 0)
Write errors:           0
Total transferred:      34545864 bytes
HTML transferred:       34077864 bytes
Requests per second:    22.60 [#/sec] (mean)
Time per request:       88.485 [ms] (mean)
Time per request:       44.243 [ms] (mean, across all concurrent requests)
Transfer rate:          762.52 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    45   87  53.0     77     698
Waiting:       40   80  49.8     71     530
Total:         45   87  53.0     77     698

Percentage of the requests served within a certain time (ms)
  50%     77
  66%     84
  75%     90
  80%     96
  90%    127
  95%    176
  98%    264
  99%    346
100%    698 (longest request)

++++++++++++++++++++++++++++++++++++++++++++++++++++

None

Server Software:        Apache/1.3.34
Server Hostname:        www.redandwhitekop.com
Server Port:            80

Document Path:          /forum/index.php
Document Length:        33600 bytes

Concurrency Level:      2
Time taken for tests:   122.362717 seconds
Complete requests:      1000
Failed requests:        894
   (Connect: 0, Length: 894, Exceptions: 0)
Write errors:           0
Total transferred:      33947676 bytes
HTML transferred:       33479676 bytes
Requests per second:    8.17 [#/sec] (mean)
Time per request:       244.725 [ms] (mean)
Time per request:       122.363 [ms] (mean, across all concurrent requests)
Transfer rate:          270.93 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:   111  244 231.2    164    2566
Waiting:      108  223 215.8    149    2321
Total:        111  244 231.2    164    2566

Percentage of the requests served within a certain time (ms)
  50%    164
  66%    214
  75%    264
  80%    295
  90%    415
  95%    559
  98%    869
  99%   1496
100%   2566 (longest request)

+++++++++++++++++++++++++++++++++++++++++

Server Software:        Apache/1.3.34
Server Hostname:        www.redandwhitekop.com
Server Port:            80

Document Path:          /forum/index.php
Document Length:        33428 bytes

Concurrency Level:      2
Time taken for tests:   107.556932 seconds
Complete requests:      1000
Failed requests:        907
   (Connect: 0, Length: 907, Exceptions: 0)
Write errors:           0
Total transferred:      33770194 bytes
HTML transferred:       33302194 bytes
Requests per second:    9.30 [#/sec] (mean)
Time per request:       215.114 [ms] (mean)
Time per request:       107.557 [ms] (mean, across all concurrent requests)
Transfer rate:          306.61 [Kbytes/sec] received

Connection Times (ms)
              min  mean[+/-sd] median   max
Connect:        0    0   0.0      0       0
Processing:    84  214 120.7    163    1101
Waiting:       77  194 110.3    149    1088
Total:         84  214 120.7    163    1101

Percentage of the requests served within a certain time (ms)
  50%    163
  66%    208
  75%    244
  80%    274
  90%    353
  95%    446
  98%    589
  99%    719
100%   1101 (longest request)

APC and eA seem to offer similar performance but the APC team know what they are doing, not entirely sure the eAccelerator team know what they are doing since they are just tweaking / fixing bugs in the mmcache code (and very slowly @ that) and claim they have plans to rewrite it from scratch.

No accelerator is over half as slow which shows how importantan accelerator is.
Title: Re: What is eAccelerator?
Post by: Ben_S on November 28, 2005, 08:18:32 AM
quick update, if anything, my real life load with APC is lower than with eAccelerator. Havent tweaked APC's settings yet either.
Title: Re: What is eAccelerator?
Post by: MAZZA on November 28, 2005, 09:12:11 AM
Might even be quicker when it's added to the core distribution of PHP when it probably has less overhead. But that's for the future :)

Nice benchmark, there's indeed not much difference between APC and eA. APC might even be better if you run a highly stressed box considering it's lower CPU usage.
Title: Re: What is eAccelerator?
Post by: Bonk on November 29, 2005, 07:37:15 AM
Interesting because APC plain sucked on my server.  (Apache 2.0.55, php 5.1.1, Win32)

Ben_S, I assume since you're running Apache/1.3.34 you're running php 4.4.1 (as a cgi) and also running on a linux server? You must also have your cache programs cache to disk as caching to memory will not work running php as a cgi?

Which tells me that APC is coded only for php 4.x.  :(  (though I got it to compile against php5.1.0 source)

I'm, really tempted to roll our server back to Apache 1.3.x / php 4.4.x. We would lose a bunch of functionality but probably gain significant speed. (also considering the move from Windows Server 2003 to FreeBSD6)
Title: Re: What is eAccelerator?
Post by: Ben_S on November 29, 2005, 07:52:39 AM
I run php as an apache module & cache to memory.

Theres some benchmarks on the vB forums which show it works well with php5, although I've not tried it with PHP 5 myself. Last time I tried running php5 I found it slower than php4, although that was a while back so things may have changed, and probably have with the release of php 5.1.
Title: Re: What is eAccelerator?
Post by: _cyclops_ on November 29, 2005, 03:28:30 PM
i've installed it on our forum.. and it seems to work fine.. apache 1.3.xx and php5 compiled APC as DSO module...
Title: Re: What is eAccelerator?
Post by: Bonk on December 02, 2005, 03:00:38 PM
<wipes egg off face>

Well I tried APC again on php 5.1.1 and it does improve my server performance slightly. It does not seem to perform as well as eAccelerator on php 5.0.5 but it does help. This time I left all of its settings at the default, I must have buggered something up last time. (perhaps by turning slam defense on?)

The copy I compiled for php 5.1.1 on Win32 is here:
http://www.dynaverse.net/downloads/Utilities/php_apc-3.0.8_php-5.1.1.zip

Title: Re: What is eAccelerator?
Post by: Bonk on December 06, 2005, 09:45:54 AM
Note that the apc.gc_ttl setting should be set to zero for php versions greater than 5.1.0 as there is no garbage collection.
Title: Re: What is eAccelerator?
Post by: Bonk on December 08, 2005, 12:27:37 AM
Had to ditch APC: http://www.simplemachines.org/community/index.php?topic=59528.0 Its not happy on Windows it seems (at least with php 5.1.1).

The performance gain was minimal and inconsistent anyway.  I want my eAcclerator back!  :(
Title: Re: What is eAccelerator?
Post by: Leipe Po on December 09, 2005, 05:28:00 PM
well i for one, belive that if the forum does not suffer by it(it wont get slower, coding is still being optimized for people without resellers and stuff), it can make a great contribution,
but as i said, if the forum load isnt comprimised for people without eAccellarator(or how its spelled),


Greetz, Leipe Po
Title: Re: What is eAccelerator?
Post by: Saku on December 22, 2005, 08:05:00 AM
i'm trying to instal php-dev because I don't have phpize, but i don't know which one i must choose :

http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/i386/php-devel-5.0.4-10.5.i386.rpm
http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/ppc/php-devel-5.0.4-10.5.ppc.rpm
http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/x86_64/php-devel-5.0.4-10.5.x86_64.rpm

my server : Fedora Core release 4, PHP Version 4.4.1 et Mysql 4.1.12
Title: Re: What is eAccelerator?
Post by: Ben_S on December 22, 2005, 08:14:47 AM
What cpu? If it's a 32bit processor you want the top one, if it's 64nit the bottom one.
Title: Re: What is eAccelerator?
Post by: Saku on December 22, 2005, 08:42:17 AM
32bit
thank you
Title: Re: What is eAccelerator?
Post by: Saku on December 22, 2005, 09:38:42 AM
now when i try the next step i got these errors:

[root@serverge11 eaccelerator-0.9.3]# /usr/bin/phpize
Configuring for:
PHP Api Version:         20031224
Zend Module Api No:      20041030
Zend Extension Api No:   220040412
/usr/bin/phpize: line 105: aclocal: command not found
[root@serverge11 eaccelerator-0.9.3]# ./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
-bash: ./configure: No such file or directory
Title: Re: What is eAccelerator?
Post by: Oldiesmann on December 22, 2005, 11:06:25 AM
eAccelerator won't work as a shared extension. You will need to either use --with-eaccelerator or change "shared" to the actual path where eaccelerator can be found.
Title: Re: What is eAccelerator?
Post by: Saku on December 22, 2005, 03:24:58 PM
doesn't work too :(

[root@serverge11 eaccelerator-0.9.3]# ./configure --with-eaccelerator=shared --with-php-config=/usr/bin/php-config
-bash: ./configure: No such file or directory
[root@serverge11 eaccelerator-0.9.3]# ./configure --enable-eaccelerator=/root/eaccelerator-0.9.3 --with-php-config=/usr/bin/php-config
-bash: ./configure: No such file or directory
[root@serverge11 eaccelerator-0.9.3]#
Title: Re: What is eAccelerator?
Post by: Saku on December 23, 2005, 02:39:38 PM
please help me to finish eaccelerator's installation, my site still overloading my server's CPU
http://www.simplemachines.org/community/index.php?topic=60076.0
Title: Re: What is eAccelerator?
Post by: bluemuse on February 12, 2006, 09:18:34 PM
can someone help me. I've tryed to install php-devel to have acess to phpize.

Php-devel was sucessfully installed:

warning: php-devel-4.3.4-11.i386.rpm: V3 DSA signature: NOKEY, key ID 4f2a6fd2
Preparing...                ########################################### [100%]
   1:php-devel              ########################################### [100%]


But then when I try to access phpize, it seems it is not there. How do I certify that?

# /usr/bin/phpize
/usr/bin/phpize: line 57: aclocal: command not found
Title: Re: What is eAccelerator?
Post by: Compuart on February 13, 2006, 05:59:50 AM
I think autoconf isn't installed on your server. Try:
yum install autoconf
Title: Re: What is eAccelerator?
Post by: bluemuse on February 13, 2006, 01:45:57 PM
i think it is:

locate autoconf
/var/cache/yum/base/headers/autoconf213-0-2.13-8.noarch.hdr
/var/cache/yum/base/headers/autoconf-0-2.59-3.noarch.hdr
/usr/include/linux/autoconf.h
/lib/modules/2.6.10-1.771_FC2/build/include/linux/autoconf.h
/lib/modules/2.6.5-1.358/build/include/linux/autoconf.h


what do u suggest?
Title: Re: What is eAccelerator?
Post by: Compuart on February 13, 2006, 03:28:08 PM
those are merely source files. Try running autoconf:
autoconf --version

If it doesn't find it, it'd need to be installed.
Title: Re: What is eAccelerator?
Post by: bluemuse on February 14, 2006, 10:40:32 AM
it might be the problem.
I installed autoconf:

yum install autoconf
Gathering header information file(s) from server(s)
Server: Atomic Rocket Turtle - 2 - Atomic PSA-Compatible RPMS
Server: Atomic Rocket Turtle - 2 - Atomic PSA App Vault RPMS
Server: Atomic Rocket Turtle - 2 - Base OS RPMS mirror
Server: Atomic Rocket Turtle - 2 - SW-Soft PSA 7.5 RPMS
Server: Atomic Rocket Turtle - 2 - OS Update RPMS mirror
Finding updated packages
Downloading needed headers
Resolving dependencies
Dependencies resolved
I will do the following:
[install: autoconf 2.59-3.noarch]
Is this ok [y/N]: y
Downloading Packages
Getting autoconf-2.59-3.noarch.rpm
autoconf-2.59-3.noarch.rp 100% |=========================| 630 kB    00:01     
Running test transaction:
Test transaction complete, Success!
autoconf 100 % done 1/1
Installed:  autoconf 2.59-3.noarch
Transaction(s) Complete




then:

autoconf version
autom4te: version: no such file or directory

and I still cant access the step 5:
/usr/bin/phpize
/usr/bin/phpize: line 57: aclocal: command not found

Title: Re: What is eAccelerator?
Post by: bluemuse on February 14, 2006, 10:54:07 AM
it worked out this time :)

but another problem right in the end of the process:

make
make: *** No targets specified and no makefile found.  Stop.
[root@xxx eaccelerator-0.9.3]# su
[root@xxx eaccelerator-0.9.3]# mkdir /tmp/eaccelerator
[root@xxx eaccelerator-0.9.3]# chown apache:apache-group /tmp/eaccelerator
chown: `apache:apache-group': invalid group
[root@xxx eaccelerator-0.9.3]# chmod 1700 /tmp/eaccelerator
[root@xxx eaccelerator-0.9.3]# make install
make: *** No rule to make target `install'.  Stop.
Title: Re: What is eAccelerator?
Post by: ozmafans on February 15, 2006, 05:07:17 PM
The install guide says to change anything in italic to what your server has it set to. It clearly says that apache-group is not a valid group, that you need to change that to the group your apache runs under. "nobody is usually the group this is run as"

so the command would be:

Quote
chown apache:nobody /tmp/eaccelerator

which is why it says invalid group.

And, since your initial command of make failed, make install will also fail. Make builds it, make install puts it all together. Then you likely need to

Quote
cp modules/eaccelerator.so /usr/lib/eaccelerator.so
Title: Re: What is eAccelerator?
Post by: bluemuse on February 15, 2006, 06:51:39 PM
and this error:

make
make: *** No targets specified and no makefile found.  Stop.


is it normal?
Title: Re: What is eAccelerator?
Post by: ozmafans on February 16, 2006, 03:42:45 PM
No. did your ./configure command run properly?

to "try again" do the following:

inside the eaccelerator directory:

Quote
$ make clean
$ ./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
$ make
$ su
# mkdir /tmp/eaccelerator
# chown apache:nobody /tmp/eaccelerator
# chmod 1700 /tmp/eaccelerator
# make install
# cp modules/eaccelerator.so /usr/lib/eaccelerator.so

report back if you have problems...
Title: Re: What is eAccelerator?
Post by: bluemuse on February 16, 2006, 05:17:14 PM
./configure run properly.

but the make command always give me that error message.

and also that make clean gives me this

make clean
make: *** No rule to make target `clean'.  Stop.
Title: Re: What is eAccelerator?
Post by: Webrunner on February 17, 2006, 11:15:08 AM
should i install this on PHP5 with mysql 4.1 and apache 2?
Title: Re: What is eAccelerator?
Post by: Compuart on February 17, 2006, 11:41:19 AM
Quote from: bluemuse on February 16, 2006, 05:17:14 PM
./configure run properly.
Are you sure it doesn't show any errors?

Quote from: Webrunner on February 17, 2006, 11:15:08 AM
should i install this on PHP5 with mysql 4.1 and apache 2?
Yep, this or APC of course, whichever you like best.
Title: Re: What is eAccelerator?
Post by: bluemuse on February 17, 2006, 12:50:56 PM
this is what i get:

./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
checking build system type... i686-redhat-linux-gnu
checking host system type... i686-redhat-linux-gnu
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking whether gcc and cc understand -c and -o together... yes
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend
checking for PHP extension directory... /usr/lib/php4
checking for re2c... exit 0;
checking for gawk... gawk
checking whether to enable eaccelerator support... yes, shared
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for unistd.h... (cached) yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sched.h usability... yes
checking sched.h presence... yes
checking for sched.h... yes
checking mandatory system headers... yes
checking whether union semun is defined in sys/sem.h... no
checking for sysvipc shared memory support... no
checking for mmap shared memory support... no
checking for mmap on /dev/zero shared memory support... no
checking for anonymous mmap shared memory support... no
checking for posix mmap shared memory support... no
checking for best shared memory type... no
configure: WARNING: eaccelerator cannot detect shared memory type, which is required
checking for spinlock semaphores support... no
checking for pthread semaphores support... no
checking for posix semaphores support... no
checking for sysvipc semaphores support... no
checking for fcntl semaphores support... no
checking for flock semaphores support... no
checking for best semaphores type... no
configure: WARNING: eaccelerator cannot semaphores type, which is required
checking for sched_yield... yes
checking for mprotect... yes
checking for ext/session/php_session.h... yes
checking for a sed that does not truncate output... //bin/sed
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking how to run the C++ preprocessor... /lib/cpp
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
Title: Re: What is eAccelerator?
Post by: Compuart on February 17, 2006, 12:57:09 PM
Quote from: bluemuse on February 17, 2006, 12:50:56 PMchecking how to run the C++ preprocessor... /lib/cpp
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
that did not go well ;) Try installing gcc:

yum install gcc
Title: Re: What is eAccelerator?
Post by: bluemuse on February 17, 2006, 01:02:52 PM
sucessfully installed it.

yum install gcc
Gathering header information file(s) from server(s)
Server: Atomic Rocket Turtle - 2 - Atomic PSA-Compatible RPMS
Server: Atomic Rocket Turtle - 2 - Atomic PSA App Vault RPMS
Server: Atomic Rocket Turtle - 2 - Base OS RPMS mirror
Server: Atomic Rocket Turtle - 2 - SW-Soft PSA 7.5 RPMS
Server: Atomic Rocket Turtle - 2 - OS Update RPMS mirror
Finding updated packages
Downloading needed headers
php-mbstring-0-4.4.2-1.rh 100% |=========================| 6.2 kB    00:00     
php-pgsql-0-4.4.2-1.rhfc2 100% |=========================| 6.4 kB    00:00     
php-mysql-0-4.4.2-1.rhfc2 100% |=========================| 6.3 kB    00:00     
php-devel-0-4.4.2-1.rhfc2 100% |=========================|  13 kB    00:00     
php-domxml-0-4.4.2-1.rhfc 100% |=========================| 6.3 kB    00:00     
php-pear-0-4.4.2-1.rhfc2. 100% |=========================|  10 kB    00:00     
php-0-4.4.2-1.rhfc2.art.i 100% |=========================| 8.1 kB    00:00     
php-imap-0-4.4.2-1.rhfc2. 100% |=========================| 6.5 kB    00:00     
php-ldap-0-4.4.2-1.rhfc2. 100% |=========================| 6.4 kB    00:00     
php-odbc-0-4.4.2-1.rhfc2. 100% |=========================| 6.4 kB    00:00     
php-snmp-0-4.4.2-1.rhfc2. 100% |=========================| 6.3 kB    00:00     
php-mhash-0-4.4.2-1.rhfc2 100% |=========================| 6.2 kB    00:01     
php-mcrypt-0-4.4.2-1.rhfc 100% |=========================| 6.4 kB    00:00     
php-xmlrpc-0-4.4.2-1.rhfc 100% |=========================| 6.2 kB    00:00     
gcc is installed and is the latest version.
No actions to take


but:

./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
checking build system type... i686-redhat-linux-gnu
checking host system type... i686-redhat-linux-gnu
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking whether gcc and cc understand -c and -o together... yes
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend
checking for PHP extension directory... /usr/lib/php4
checking for re2c... exit 0;
checking for gawk... gawk
checking whether to enable eaccelerator support... yes, shared
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for unistd.h... (cached) yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sched.h usability... yes
checking sched.h presence... yes
checking for sched.h... yes
checking mandatory system headers... yes
checking whether union semun is defined in sys/sem.h... no
checking for sysvipc shared memory support... no
checking for mmap shared memory support... no
checking for mmap on /dev/zero shared memory support... no
checking for anonymous mmap shared memory support... no
checking for posix mmap shared memory support... no
checking for best shared memory type... no
configure: WARNING: eaccelerator cannot detect shared memory type, which is required
checking for spinlock semaphores support... no
checking for pthread semaphores support... no
checking for posix semaphores support... no
checking for sysvipc semaphores support... no
checking for fcntl semaphores support... no
checking for flock semaphores support... no
checking for best semaphores type... no
configure: WARNING: eaccelerator cannot semaphores type, which is required
checking for sched_yield... yes
checking for mprotect... yes
checking for ext/session/php_session.h... yes
checking for a sed that does not truncate output... //bin/sed
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g++... no
checking for c++... no
checking for gpp... no
checking for aCC... no
checking for CC... no
checking for cxx... no
checking for cc++... no
checking for cl... no
checking for FCC... no
checking for KCC... no
checking for RCC... no
checking for xlC_r... no
checking for xlC... no
checking whether we are using the GNU C++ compiler... no
checking whether g++ accepts -g... no
checking how to run the C++ preprocessor... /lib/cpp
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
Title: Re: What is eAccelerator?
Post by: Compuart on February 17, 2006, 02:07:33 PM
It might need C++

Try:
yum install gcc-c++
Title: Re: What is eAccelerator?
Post by: Webrunner on February 17, 2006, 02:50:26 PM
I am not that great with Linux and i read that eAccelerator isn't compatible with php5.
I used apt-get to install php5 on Sarge (Debian).
Can i just install eAccellerator from the source code?
Title: Re: What is eAccelerator?
Post by: Compuart on February 17, 2006, 02:56:29 PM
According to themselves they have fixed that in 0.9.4 RC2 ("eA should be php 5 compatible except some very unusual cases."). You can always try to compile eaccelerator. If it works, it'll compile a module you then can include in the php.ini file. If it fails after that, simply remove it from php.ini and it's gone. So not much risk involved.
Title: Re: What is eAccelerator?
Post by: Compuart on February 17, 2006, 02:58:56 PM
oh, in the same release notes: "This version DOESN'T support php 5.1"
Title: Re: What is eAccelerator?
Post by: Webrunner on February 17, 2006, 05:32:01 PM
 :(
5.1.2-0bpo1  >:(
Title: Re: What is eAccelerator?
Post by: Compuart on February 17, 2006, 05:34:04 PM
I guess you're bound to use APC then :P (that is, if that one is compatible...)
Title: Re: What is eAccelerator?
Post by: bluemuse on February 17, 2006, 08:58:29 PM
is it ok now:

./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config
checking build system type... i686-redhat-linux-gnu
checking host system type... i686-redhat-linux-gnu
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ANSI C... none needed
checking whether gcc and cc understand -c and -o together... yes
checking if compiler supports -R... no
checking if compiler supports -Wl,-rpath,... yes
checking for PHP prefix... /usr
checking for PHP includes... -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend
checking for PHP extension directory... /usr/lib/php4
checking for re2c... exit 0;
checking for gawk... gawk
checking whether to enable eaccelerator support... yes, shared
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for unistd.h... (cached) yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking sched.h usability... yes
checking sched.h presence... yes
checking for sched.h... yes
checking mandatory system headers... yes
checking whether union semun is defined in sys/sem.h... no
checking for sysvipc shared memory support... no
checking for mmap shared memory support... no
checking for mmap on /dev/zero shared memory support... no
checking for anonymous mmap shared memory support... no
checking for posix mmap shared memory support... no
checking for best shared memory type... no
configure: WARNING: eaccelerator cannot detect shared memory type, which is required
checking for spinlock semaphores support... no
checking for pthread semaphores support... no
checking for posix semaphores support... no
checking for sysvipc semaphores support... no
checking for fcntl semaphores support... no
checking for flock semaphores support... no
checking for best semaphores type... no
configure: WARNING: eaccelerator cannot semaphores type, which is required
checking for sched_yield... yes
checking for mprotect... yes
checking for ext/session/php_session.h... yes
checking for a sed that does not truncate output... //bin/sed
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking whether ln -s works... yes
checking how to recognise dependent libraries... pass_all
checking dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for g++... g++
checking whether we are using the GNU C++ compiler... yes
checking whether g++ accepts -g... yes
checking how to run the C++ preprocessor... g++ -E
checking for g77... no
checking for f77... no
checking for xlf... no
checking for frt... no
checking for pgf77... no
checking for fort77... no
checking for fl32... no
checking for af77... no
checking for f90... no
checking for xlf90... no
checking for pgf90... no
checking for epcf90... no
checking for f95... no
checking for fort... no
checking for xlf95... no
checking for ifc... no
checking for efc... no
checking for pgf95... no
checking for lf95... no
checking for gfortran... no
checking whether we are using the GNU Fortran 77 compiler... no
checking whether  accepts -g... no
checking the maximum length of command line arguments... 32768
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for objdir... .libs
checking for ar... ar
checking for ranlib... ranlib
checking for strip... strip
checking if gcc static flag  works... yes
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc supports -c -o file.o... yes
checking whether the gcc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
configure: creating libtool
appending configuration tag "CXX" to libtool
checking for ld used by g++... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking for g++ option to produce PIC... -fPIC
checking if g++ PIC flag -fPIC works... yes
checking if g++ supports -c -o file.o... yes
checking whether the g++ linker (/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
appending configuration tag "F77" to libtool
configure: creating ./config.status
config.status: creating config.h
Title: Re: What is eAccelerator?
Post by: ArkServer on February 27, 2006, 06:32:27 PM
How to get this working with win32?
Title: Re: What is eAccelerator?
Post by: Compuart on February 27, 2006, 06:40:16 PM
Download a DLL from this page (http://www.arnot.info/eaccelerator/), move it to the extension folder, include the extension in php.ini as well as the other php.ini settings as documented in the eaccelerator manual and restart PHP.
Title: Re: What is eAccelerator?
Post by: ArkServer on February 27, 2006, 09:02:53 PM
Quote from: Compuart on February 27, 2006, 06:40:16 PM
Download a DLL from this page (http://www.arnot.info/eaccelerator/), move it to the extension folder, include the extension in php.ini as well as the other php.ini settings as documented in the eaccelerator manual and restart PHP.

Done and added this:

extension="eaccelerator.dll"
eaccelerator.shm_size = "64"
eaccelerator.cache_dir = "/tmp/eaccelerator"
eaccelerator.enable = "1"
eaccelerator.optimizer = "1"
eaccelerator.debug = "0"
eaccelerator.filter = ""
eaccelerator.shm_max = "0"
eaccelerator.shm_ttl = "0"
eaccelerator.shm_prune_period = "0"
eaccelerator.shm_only = "0"
eaccelerator.compress = "1"
eaccelerator.compress_level = "9"
eaccelerator.keys = "shm_and_disk"
eaccelerator.sessions = "shm_and_disk"
eaccelerator.content = "shm_and_disk"


but the page generation time is still around 0.3xx / 1+ seconds
Title: Re: What is eAccelerator?
Post by: burthold on July 30, 2006, 01:29:31 PM
Do not, and I repeat DO NOT run eaccelerator or APC if you are using sapi module for IIS on windows. Thread aborts, IIS crashes, pages don't render fun stuff. If you want to use them you must be running cgi\fastcgi mode!!!!

I spent days trying to figure out what the hell was wrong.

Wes
Title: Re: What is eAccelerator?
Post by: qtime on August 19, 2006, 09:12:03 AM
Can someone explain the levels of caching in SMF?
I did a search, but not a good answer found.

I use eAccelerator and it is more than 10 times faster now, a lot of cpu resources are used by php.
Title: Re: What is eAccelerator?
Post by: Compuart on August 19, 2006, 09:41:29 AM
There are several places within SMF that use caching. Most uses of caching are level 1, but some places it's either requiring a lot of cache memory or experimental (that is, it might not be updated frequently enough to show the most up to date information). In those cases only cache levels 2 and 3 will be using cache.
Title: Re: What is eAccelerator?
Post by: crony on October 22, 2006, 11:28:08 AM
Hello,

The new version 0.9.5 is compressed into "tar.bz2" files...I get tis error

[root@ns1065 root]# wget http://bart.eaccelerator.net/source/0.9.5/eaccelerator-0.9.5.tar.bz2
--15:57:01--  http://bart.eaccelerator.net/source/0.9.5/eaccelerator-0.9.5.tar.bz2
           => `eaccelerator-0.9.5.tar.bz2'
Résolution de bart.eaccelerator.net... 193.190.253.234
Connexion vers bart.eaccelerator.net[193.190.253.234]:80...connecté.
requête HTTP transmise, en attente de la réponse...200 OK
Longueur: 121,791 [application/x-tar]

100%[====================================>] 121,791      263.03K/s

15:57:02 (262.89 KB/s) - `eaccelerator-0.9.5.tar.bz2' saved [121,791/121,791]

[root@ns1065 root]# tar xvzf eaccelerator-0.9.5.tar.bz2

gzip: stdin: not in gzip format
tar: Le processus enfant a retourné le statut 1
tar: Statut d'erreur reporté d'erreurs précédentes.



PHP 4.3.11 / MySQL 4.1.12

Thanx for your help! :)
Title: Re: What is eAccelerator?
Post by: crony on October 22, 2006, 02:30:10 PM
Ok, here's the good code line :

tar xvfj eaccelerator-0.9.5.tar.bz2

Then after that all steps successful, thanx for that topic !
:)
Title: Re: What is eAccelerator?
Post by: Jasa on October 25, 2006, 02:26:46 AM
Just feel myself so n00b again!  :D What do I put to the settings box, where example is "serve1, server2, server3:port, server4"? Is localhost the answer? or do I leave it empty? :)

Thanks! :)
Title: Re: What is eAccelerator?
Post by: Ben_S on October 25, 2006, 10:19:34 AM
Nothing unless you are using memcached
Title: Re: What is eAccelerator?
Post by: Jasa on October 26, 2006, 12:43:06 AM
Thank you! When I wrote "localhost" there, the forum worked with no errors. But when somebody tried to register, the "Custom profile field" -mod said that you haven't filled one area that must be filled, and from admin panel you couldn't change that mods options. But now it's working! :)
Title: Re: What is eAccelerator?
Post by: Webrunner on October 28, 2006, 08:09:52 AM
I have the latest eaccelerator installed and it also shows up in phpinfo but SMF doesn't detect it.
Any ideas?
Title: Re: What is eAccelerator?
Post by: Compuart on October 28, 2006, 09:29:14 AM
The new eaccelerator by default disables cache I'm afraid. You'd need to explicitely configure it with the shared memory functions. Use

./configure --help

for details.
Title: Re: What is eAccelerator?
Post by: Webrunner on October 28, 2006, 02:23:21 PM
OK, i recompiled it with cache enabled and did a "make install" (i didn't remove the "old" one first).
No change, what am i doing wrong?

See here: http://www.vrouwenpower.nl/sys/php.php
Title: Re: What is eAccelerator?
Post by: madfiddler on December 15, 2006, 09:20:33 PM
I've been looking at this, and I think I've installed it correctly. However when I go to add the bit to php.ini I find there is already stuff there.... So, is this right?

Quote[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-2.5.10
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-2.5.10

zend_optimizer.version=2.5.10a
zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so

zend_extension=/root/downloads/eaccelerator-0.9.5/modules/eaccelerator.so

I added the last line. Thanks,

m
Title: Re: What is eAccelerator?
Post by: madfiddler on December 15, 2006, 09:49:03 PM
I eventually followed the instructions on my hosts, and I think it's working.

http://forums.deftechgroup.com/showthread.php?t=1871&highlight=eaccelerator
Title: Re: What is eAccelerator?
Post by: Daniel15 on December 15, 2006, 11:56:24 PM
madfiddler, eAccelerator needs to load before Zend does. Also, I believe it should be loaded as a normal extension, not a Zend extension (at least, that's what I needed to do. Loading it as a Zend extension crashed Apache whenever I tried).

My configuration looks a bit like:

extension="/usr/lib/php/extensions/no-debug-non-zts-20020429/eaccelerator.so"
eaccelerator.shm_size="32"
;eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.cache_dir="/home/eaccelerator_cache"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="7200"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
eaccelerator.allowed_admin_path="/home/[username removed]/public_html/eaccelerator"

;... More PHP config stuff here...


[Zend]
zend_extension_manager.optimizer=/usr/local/Zend/lib/Optimizer-3.0.1
zend_extension_manager.optimizer_ts=/usr/local/Zend/lib/Optimizer_TS-3.0.1
zend_optimizer.version=3.0.1

zend_extension=/usr/local/Zend/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/lib/ZendExtensionManager_TS.so
Title: Re: What is eAccelerator?
Post by: madfiddler on December 16, 2006, 10:39:39 AM
hmm ok thanks.. Well, for me SMF is saying it's installed, so I guess I'm ok... ?
Title: Re: What is eAccelerator?
Post by: madfiddler on December 17, 2006, 08:32:48 AM
... apparently not. The entire server went down last night, and apparently it was eAccelerator that caused it. They've taken it off again.. Time for a ticket now I think cos the server is sooo slow.. page loads between 4-10 seconds, sometimes less, sometimes more... but only with sites using sql type software...
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 05:42:57 PM
Hi,

I have problems with installing eAccelerator. It says that it's not installed. I'm not sure putting this code at the right place in php.ini
extension="ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"

Where do I have to put it?
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 05:51:12 PM
I hav this in the log files:
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so' - /usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so: cannot open shared object file: No such file or directory in Unknown on line 0
Title: Re: What is eAccelerator?
Post by: qtime on March 20, 2007, 05:54:08 PM
Where did you found the log files with the PHP warning error? Just installing eAccelerator again on my new server and forgot how I did that before...
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 05:56:25 PM
It's in my CP, Service management and Log files, then I go to httpd and I open error log
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 05:57:06 PM
Still need help with this error:
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so' - /usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so: cannot open shared object file: No such file or directory in Unknown on line 0
Title: Re: What is eAccelerator?
Post by: 青山 素子 on March 20, 2007, 06:01:44 PM
joh87swe, does the file exist? If it does not, is it somewhere else?
Title: Re: What is eAccelerator?
Post by: qtime on March 20, 2007, 06:05:15 PM
maybe you can found it here:
/usr/local/src/eaccelerator-0.9.5/modules/eaccelerator.so
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 06:15:12 PM
Yes it exist under ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so
I also think I placed the code at the wrong place in php.ini where do I have to paste it?
extension="ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/tmp/eaccelerator"
eaccelerator.enable="1"
eaccelerator.optimizer="1"
eaccelerator.check_mtime="1"
eaccelerator.debug="0"
eaccelerator.filter=""
eaccelerator.shm_max="0"
eaccelerator.shm_ttl="0"
eaccelerator.shm_prune_period="0"
eaccelerator.shm_only="0"
eaccelerator.compress="1"
eaccelerator.compress_level="9"
Title: Re: What is eAccelerator?
Post by: qtime on March 20, 2007, 06:20:24 PM
I put it at the bottom of my php.ini, but you can do a search to zend
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 06:29:58 PM
After the real End of php.ini ?
Title: Re: What is eAccelerator?
Post by: qtime on March 20, 2007, 06:32:30 PM
I did it on 1 server which is working... just on the end. but I am installing some new servers now and there is a line already with zend, just do a search.
if you type php -v (command line) do you see something like:
PHP 5.0.4 (cli) (built: Nov  8 2005 08:27:12)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies
    with eAccelerator v0.9.5, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
    with the ionCube PHP Loader v3.1.16, Copyright (c) 2002-2006, by ionCube Ltd.
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 06:36:13 PM
When I type php -v I get:
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so' - /usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP 5.1.6 (cli) (built: Feb 23 2007 06:56:38)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 06:55:29 PM
How do I know where my php is installed?
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 07:42:01 PM
I fixed it!
From my phpinfo:
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
    with eAccelerator v0.9.5-beta1, Copyright (c) 2004-2005 eAccelerator, by eAccelerator

eAccelerator
eAccelerator support enabled
Version  0.9.5-beta1 
Caching Enabled  true 
Optimizer Enabled  true 
Memory Size  33,554,392 Bytes 
Memory Available  33,550,628 Bytes 
Memory Allocated  3,764 Bytes 
Cached Scripts  2 
Removed Scripts  0 
Cached Keys  0 

Directive Local Value Master Value
eaccelerator.cache_dir /tmp/eaccelerator /tmp/eaccelerator
eaccelerator.check_mtime 1 1
eaccelerator.compress 1 1
eaccelerator.compress_level 9 9
eaccelerator.content shm_and_disk shm_and_disk
eaccelerator.debug 1 1
eaccelerator.enable 1 1
eaccelerator.filter no value no value
eaccelerator.keys shm_and_disk shm_and_disk
eaccelerator.log_file no value no value
eaccelerator.name_space no value no value
eaccelerator.optimizer 1 1
eaccelerator.sessions shm_and_disk shm_and_disk
eaccelerator.shm_max 0 0
eaccelerator.shm_only 0 0
eaccelerator.shm_prune_period 0 0
eaccelerator.shm_size 0 0
eaccelerator.shm_ttl 0 0

Does it look okey?
Title: Re: What is eAccelerator?
Post by: Ben_S on March 20, 2007, 07:44:48 PM
You will have to change the path to point to wherever it put the eaccelerator.so file.
Title: Re: What is eAccelerator?
Post by: joh87swe on March 20, 2007, 07:58:08 PM
I don't understand? What do I have to do?
Title: Re: What is eAccelerator?
Post by: Ben_S on March 20, 2007, 08:32:54 PM
Sorry ignore me, hadn't noticed there was an extra page and you had sorted it.
Title: Re: What is eAccelerator?
Post by: Daniel15 on March 21, 2007, 01:07:33 AM
QuoteI did it on 1 server which is working... just on the end. but I am installing some new servers now and there is a line already with zend, just do a search.
PHP 5.0.4 is very old, and has security vulnerabilities. I suggest you update as soon as possible!

Quote from: joh87swe on March 20, 2007, 06:36:13 PM
When I type php -v I get:
PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so' - /usr/lib/php/modules/ea/eaccelerator-0.9.5-beta1/modules/eaccelerator.so: cannot open shared object file: No such file or directory in Unknown on line 0
PHP 5.1.6 (cli) (built: Feb 23 2007 06:56:38)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies

For anyone that's wondering about this, after you run make install, it should tell you the path it's installed into. On the systems I admin (CentOS and RHEL4, both using PHP 5.2.1), this is at /usr/local/lib/php/extensions/no-debug-non-zts-20060613/, so the extension line should look like:
extension=/usr/local/lib/php/extensions/no-debug-non-zts-20060613/eaccelerator.so .

On my personal Debian Etch system, it's at /usr/lib/php5/20060613+lfs instead.

EDIT: Note that I now use XCache rather than eAccelerator. I've found XCache to be much faster than eAccelerator :). If you like, I can post a how to on this (although it's really quite easy, just follow their instructions)
Title: Re: What is eAccelerator?
Post by: qtime on March 21, 2007, 03:42:36 AM
thanks for noticing me, just a brand new server with fedora core 4, all software needs an update!
Title: Re: What is eAccelerator?
Post by: joh87swe on March 21, 2007, 08:50:29 AM
Now I have these errors in my error log under Log files root directory/httpd
...
EACCELERATOR hit: "/var/www/html/index.php"
EACCELERATOR hit: "/var/www/html/index.php"
EACCELERATOR hit: "/var/www/html/phpinfo.php"
...

Is this normal?
Title: Re: What is eAccelerator?
Post by: Daniel15 on March 22, 2007, 01:51:40 AM
Quote from: joh87swe on March 21, 2007, 08:50:29 AM
Now I have these errors in my error log under Log files root directory/httpd
...
EACCELERATOR hit: "/var/www/html/index.php"
EACCELERATOR hit: "/var/www/html/index.php"
EACCELERATOR hit: "/var/www/html/phpinfo.php"
...

Is this normal?
They're not errors, that's information produced by eAccelerator when debug mode is turned on (a "hit" is when something is loaded from the cache, whereas a "miss" is when something isn't loaded from cache). To disable these messages, make sure debug mode is turned off in php.ini:

...
eaccelerator.debug = 0
...
Title: Re: What is eAccelerator?
Post by: joh87swe on March 22, 2007, 08:43:26 AM
Thanks Daniel15,
In smf settings, under serversettings -> Cache. SMF says it recognize eAccelerator, but do I have to do something (Now the caching level is set to "No cacheing") or does SMF use eAccelerator as default?
Do I have to activate local storage of cookies?

Cordially,
Johan
Title: Re: What is eAccelerator?
Post by: qtime on March 22, 2007, 05:38:27 PM
problem on my test server:
php -v:
[root@wpc4688 ~]# php -v
PHP 5.0.4 (cli) (built: Nov  8 2005 08:27:12)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies
    with eAccelerator v0.9.5, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
    with the ionCube PHP Loader v3.1.16, Copyright (c) 2002-2006, by ionCube Ltd.


but smf:
SMF has not been able to detect a compatible accelerator on your server.

Any hints? I broke my head on it for 3 evenings now...
tried also to install APC, but got errors on make

r -I. -I/usr/local/src/APC-3.0.13 -DPHP_ATOM_INC -I/usr/local/src/APC-3.0.13/include -I/usr/local/src/APC-3.0.13/main -I/usr/local/src/APC-3.0.13 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend  -DHAVE_CONFIG_H  -g -O2   -c /usr/local/src/APC-3.0.13/apc_compile.c -o apc_compile.lo
gcc -DHARD_SERVER_LIMIT=512 -DDEFAULT_PATH=/usr/local/psa/admin/bin:/bin:/usr/bin -DLINUX=22 -DTARGET=httpsd -DHAVE_SET_DUMPABLE -DNO_DBM_REWRITEMAP -DMOD_SSL=208122 -DEAPI -O -pipe -I/usr/include -O3 -fexpensive-optimizations -fstrength-reduce -pipe -DPLESK_Linux -I/usr/include/libxml2 -I/home/builder/buildbot/psa-aiconfig-810-fc4/build/plesk/lib/dist/usr/include -W -Wall -I/home/builder/buildbot/psa-aiconfig-810-fc4/build/plesk/lib/dist/usr/include -DPLESK_Linux -I/home/builder/buildbot/psa-aiconfig-810-fc4/build/plesk/plesk-utils/include -DBSG_CR -DBSG_MSG -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHAS_RPM -DUSE_SLEEP_ON_IDLE -Wno-unused-parameter -I. -I/usr/local/src/APC-3.0.13 -DPHP_ATOM_INC -I/usr/local/src/APC-3.0.13/include -I/usr/local/src/APC-3.0.13/main -I/usr/local/src/APC-3.0.13 -I/usr/include/php -I/usr/include/php/main -I/usr/include/php/TSRM -I/usr/include/php/Zend -DHAVE_CONFIG_H -g -O2 -c /usr/local/src/APC-3.0.13/apc_compile.c  -fPIC -DPIC -o .libs/apc_compile.o
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'is_derived_class':
/usr/local/src/APC-3.0.13/apc_compile.c:203: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_copy_zval':
/usr/local/src/APC-3.0.13/apc_compile.c:306: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c:311: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_copy_arg_info_array':
/usr/local/src/APC-3.0.13/apc_compile.c:603: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_copy_class_entry':
/usr/local/src/APC-3.0.13/apc_compile.c:686: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:686: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:722: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c:738: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:739: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:746: error: 'struct _zend_class_entry' has no member named 'serialize_func'
/usr/local/src/APC-3.0.13/apc_compile.c:747: error: 'struct _zend_class_entry' has no member named 'unserialize_func'
/usr/local/src/APC-3.0.13/apc_compile.c:781: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:782: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:789: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:792: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:808: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:879: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:881: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:883: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_copy_hashtable_ex':
/usr/local/src/APC-3.0.13/apc_compile.c:1004: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'apc_fixup_op_array_jumps':
/usr/local/src/APC-3.0.13/apc_compile.c:1068: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'apc_copy_op_array':
/usr/local/src/APC-3.0.13/apc_compile.c:1183: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c:1314: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'apc_copy_new_functions':
/usr/local/src/APC-3.0.13/apc_compile.c:1381: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'apc_copy_new_classes':
/usr/local/src/APC-3.0.13/apc_compile.c:1451: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_destroy_zval':
/usr/local/src/APC-3.0.13/apc_compile.c:1557: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c:1561: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_destroy_arg_info_array':
/usr/local/src/APC-3.0.13/apc_compile.c:1666: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_destroy_class_entry':
/usr/local/src/APC-3.0.13/apc_compile.c:1715: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_destroy_hashtable':
/usr/local/src/APC-3.0.13/apc_compile.c:1742: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_destroy_op_array':
/usr/local/src/APC-3.0.13/apc_compile.c:1777: warning: comparison between signed and unsigned
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'apc_copy_class_entry_for_execution':
/usr/local/src/APC-3.0.13/apc_compile.c:2138: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:2138: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:2145: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:2156: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'apc_free_class_entry_after_execution':
/usr/local/src/APC-3.0.13/apc_compile.c:2176: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:2177: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_fixup_function':
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2222: error: 'struct _zend_class_entry' has no member named '__unset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c:2223: error: 'struct _zend_class_entry' has no member named '__isset'
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_check_copy_function':
/usr/local/src/APC-3.0.13/apc_compile.c:2283: warning: unused variable 'parent'
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_check_copy_default_property':
/usr/local/src/APC-3.0.13/apc_compile.c:2317: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_check_copy_property_info':
/usr/local/src/APC-3.0.13/apc_compile.c:2347: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c: In function 'my_check_copy_static_member':
/usr/local/src/APC-3.0.13/apc_compile.c:2397: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c:2400: warning: dereferencing type-punned pointer will break strict-aliasing rules
/usr/local/src/APC-3.0.13/apc_compile.c:2412: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:2414: error: 'struct _zend_class_entry' has no member named 'default_static_members'
/usr/local/src/APC-3.0.13/apc_compile.c:2422: warning: dereferencing type-punned pointer will break strict-aliasing rules
make: *** [apc_compile.lo] Error 1
Title: Re: What is eAccelerator?
Post by: Daniel15 on March 22, 2007, 07:00:04 PM
Quote from: qtime on March 22, 2007, 05:38:27 PM
problem on my test server:
php -v:
[root@wpc4688 ~]# php -v
PHP 5.0.4 (cli) (built: Nov  8 2005 08:27:12)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies
    with eAccelerator v0.9.5, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
    with the ionCube PHP Loader v3.1.16, Copyright (c) 2002-2006, by ionCube Ltd.


but smf:
SMF has not been able to detect a compatible accelerator on your server.

Any hints? I broke my head on it for 3 evenings now...
You need to compile eAccelerator with a certain flag, I believe it's --enable-eaccelerator-content-caching, but I'm not quite sure (I'd need to look it up). Try running ./configure --help, and see if it tells you anything.
Title: Re: What is eAccelerator?
Post by: Joshua Dickerson on March 23, 2007, 12:07:46 AM
Yeah, it needs a flag to run right. I think they should just enable it by default and have a flag to disable it.
Title: Re: What is eAccelerator?
Post by: Ben_S on March 23, 2007, 03:44:00 AM
The required flag is in the first post of this topic. Stupid eAccelerator.
Title: Re: What is eAccelerator?
Post by: chep on July 25, 2007, 12:31:11 AM
great instructions.
Title: Re: What is eAccelerator?
Post by: Daniel15 on July 25, 2007, 01:50:37 AM
Quote from: chep on July 25, 2007, 12:31:11 AM
great instructions.
Glad we could help you :)
Title: Re: What is eAccelerator?
Post by: littleone on July 25, 2007, 06:12:56 PM
My host just installed eAccelerator and here is what they gave me:

eAccelerator installed.
# php -v
PHP 4.4.6 (cli) (built: Apr 9 2007 23:03:01)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
with eAccelerator v0.9.5.1, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
with Zend Extension Manager v1.2.0, Copyright (c) 2003-2006, by Zend Technologies
with Zend Optimizer v3.2.2, Copyright (c) 1998-2006, by Zend Technologies

Now my question was, that when I check the Caching tab in the Admin panel it still says that SMF cannot find a compatible accelerator.  I went ahead and set it to level 1 anyways, but I wanted to make sure that wasnt a problem and if there was a way i could check to make sure it was working proper?  Thanks!
Title: Re: What is eAccelerator?
Post by: chep on July 25, 2007, 07:30:43 PM
You should check phpinfo and in there will be a section under eaccelerator. Here's what mine says for example.

As you see there are 582 cached scripts. I know it is working...

Quote
eAccelerator
eAccelerator support enabled
Version&nbsp; 0.9.5&nbsp;
Caching Enabled&nbsp; true&nbsp;
Optimizer Enabled&nbsp; true&nbsp;
Memory Size&nbsp; 33,554,396 Bytes&nbsp;
Memory Available&nbsp; 1,252,116 Bytes&nbsp;
Memory Allocated&nbsp; 32,302,280 Bytes&nbsp;
Cached Scripts&nbsp; 582&nbsp;
Removed Scripts&nbsp; 0&nbsp;
Cached Keys&nbsp; 48&nbsp;

Directive Local Value Master Value
eaccelerator.allowed_admin_path no value no value
eaccelerator.cache_dir /tmp/eaccelerator /tmp/eaccelerator
eaccelerator.check_mtime 1 1
eaccelerator.compress 1 1
eaccelerator.compress_level 9 9
eaccelerator.content shm_and_disk shm_and_disk
eaccelerator.debug 1 1
eaccelerator.enable 1 1
eaccelerator.filter no value no value
eaccelerator.keys shm_and_disk shm_and_disk
eaccelerator.log_file no value no value
eaccelerator.name_space no value no value
eaccelerator.optimizer 1 1
eaccelerator.shm_max 0 0
eaccelerator.shm_only 0 0
eaccelerator.shm_prune_period 0 0
eaccelerator.shm_size 0 0
eaccelerator.shm_ttl 0 0
Title: Re: What is eAccelerator?
Post by: littleone on July 25, 2007, 07:58:08 PM
Only think I see is this:
Zend Optimizer
Optimization Pass 1  enabled 
Optimization Pass 2  enabled 
Optimization Pass 3  enabled 
Optimization Pass 4  enabled 
Optimization Pass 9  enabled 
Zend Loader  enabled 
License Path  no value 
Obfuscation level  3 
Title: Re: What is eAccelerator?
Post by: chep on July 25, 2007, 08:03:50 PM
There was some talk about Zend Optimizer and eaccelerator not working well together unless they were listed in a specific order inside php.ini

Don't ask me what order would be correct but I found other documents on the web last night which also backed the claim to that... which I believe was mentioned earlier in this topic.

I don't know if you have to restart something on your apache server to recognize the eaccelerator or not in your case. I don't remember doing in anything special last night for that.

I can't really offer any more information than that. I do not have the Zend Optimizer on my server... Eaccelerator certainly has helped out a lot it seems..
Title: Re: What is eAccelerator?
Post by: littleone on July 25, 2007, 08:49:19 PM
where do i find php.ini?
Title: Re: What is eAccelerator?
Post by: chep on July 25, 2007, 08:59:27 PM
Look at the results from phpinfo

Configuration File (php.ini) Path  /etc/php.ini 
Title: Re: What is eAccelerator?
Post by: littleone on July 25, 2007, 09:02:25 PM
ok you were right.  I needed to restart Apache.  Now its singing like a bird.  Looks just like what you posted from your site.  Greatly Appreciate your help ;)
Title: Re: What is eAccelerator?
Post by: barisaydiner on July 26, 2007, 12:57:36 PM
I can't install  :(

[root@sd eaccelerator-0.9.5.1]# /usr/bin/phpize
Configuring for:
PHP Api Version:         20031224
Zend Module Api No:      20041030
Zend Extension Api No:   220040412
/usr/bin/phpize: line 105: aclocal: command not found
[root@sd eaccelerator-0.9.5.1]# ./configure --enable-eaccelerator=shared --with-eaccelerator-content-caching --with-php-config=/usr/bin/php-config
-bash: ./configure: No such file or directory
[root@sd eaccelerator-0.9.5.1]#


pls help what I have to do?
Title: Re: What is eAccelerator?
Post by: 青山 素子 on July 26, 2007, 01:01:14 PM
Make sure you have development tools installed. That aclocal error indicates you are missing at least some of those tools (specifically automake).
Title: Re: What is eAccelerator?
Post by: barisaydiner on July 26, 2007, 04:00:47 PM
I installed this way
yum install php-devel

but it didn't solve.

namely which code I have to use?
Title: Re: What is eAccelerator?
Post by: 青山 素子 on July 26, 2007, 11:49:04 PM
I'm guessing Fedora, RHEL, or CentOS. I'm not that familiar with those systems, but you need to find the package containing Automake for a start.
Title: Re: What is eAccelerator?
Post by: Daniel15 on July 27, 2007, 05:58:37 AM
Try
yum install gcc automake
That may or may not solve the problem :)
Title: Re: What is eAccelerator?
Post by: Ben_S on July 27, 2007, 06:49:37 AM
Quote from: littleone on July 25, 2007, 06:12:56 PM
My host just installed eAccelerator and here is what they gave me:

eAccelerator installed.
# php -v
PHP 4.4.6 (cli) (built: Apr 9 2007 23:03:01)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
with eAccelerator v0.9.5.1, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
with Zend Extension Manager v1.2.0, Copyright (c) 2003-2006, by Zend Technologies
with Zend Optimizer v3.2.2, Copyright (c) 1998-2006, by Zend Technologies

Now my question was, that when I check the Caching tab in the Admin panel it still says that SMF cannot find a compatible accelerator.  I went ahead and set it to level 1 anyways, but I wanted to make sure that wasnt a problem and if there was a way i could check to make sure it was working proper?  Thanks!

You hosts needs to compile it with --with-eaccelerator-content-caching or SMF won't be able to make use of it.
Title: Re: What is eAccelerator?
Post by: barisaydiner on July 27, 2007, 09:59:32 AM
thanks it is working now  :P

php -v
PHP 5.0.4 (cli) (built: Nov  8 2005 08:27:12)
Copyright (c) 1997-2004 The PHP Group
Zend Engine v2.0.4-dev, Copyright (c) 1998-2004 Zend Technologies
    with eAccelerator v0.9.5.1, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
    with the ionCube PHP Loader v3.1.16, Copyright (c) 2002-2006, by ionCube Ltd., and
    with Zend Extension Manager v1.2.0, Copyright (c) 2003-2007, by Zend Technologies
    with Zend Optimizer v3.3.0, Copyright (c) 1998-2007, by Zend Technologies
Title: Re: What is eAccelerator?
Post by: chette on September 15, 2007, 01:07:49 AM
Aside from removing the necessary lines in php.ini, how can I get eAccelerator totally out of my system?
Title: Re: What is eAccelerator?
Post by: !Hachi! on September 15, 2007, 11:09:26 AM
removing files that you installed?.so type files.
Title: Re: What is eAccelerator?
Post by: barisaydiner on November 29, 2007, 10:39:57 AM
i wanna install another server (centos4.2) but I have a problem

/usr/bin/phpize
configure.in:9: warning: underquoted definition of PHP_WITH_PHP_CONFIG
  run info '(automake)Extending aclocal'
  or see http://sources.redhat.com/automake/automake.html#Extending-aclocal
configure.in:32: warning: underquoted definition of PHP_EXT_BUILDDIR
configure.in:33: warning: underquoted definition of PHP_EXT_DIR
configure.in:34: warning: underquoted definition of PHP_EXT_SRCDIR
configure.in:35: warning: underquoted definition of PHP_ALWAYS_SHARED
acinclude.m4:19: warning: underquoted definition of PHP_PROG_RE2C
configure.in:65: error: possibly undefined macro: AC_PROG_LIBTOOL
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.


I did not understand. what can I do? What code i need? and i tried to install eaccelerator-0.9.5.2.  :-[
Title: Re: What is eAccelerator?
Post by: Daniel15 on November 29, 2007, 08:27:12 PM
barisaydiner, what version of PHP are you using? You might be using an old version that is not supported... That looks like a problem with PHP versions lower than 4.3.10.
Title: Re: What is eAccelerator?
Post by: barisaydiner on November 30, 2007, 11:49:48 AM
Quote from: Daniel15 on November 29, 2007, 08:27:12 PM
barisaydiner, what version of PHP are you using? You might be using an old version that is not supported... That looks like a problem with PHP versions lower than 4.3.10.

thank you I checked it, version is 4.3.9 :)
I hope  if i upgrede it I will solve it, thanks again. I will come back. :)
Title: Re: What is eAccelerator?
Post by: Daniel15 on November 30, 2007, 10:23:29 PM
No problem :D
It is always recommended to use the latest PHP version, because security holes are often patched. So, you should be using either PHP 4.4.7 or 5.2.5. If you're using "yum" on CentOS to install PHP, I'd suggest to use the "RPMForge" repository, as it usually has the newest packages (the main CentOS ones get old quickly).
For CentOS 4 or Red Hat Enterprise Linux 4, run this command:

rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el4.rf.i386.rpm

For CentOS or RHEL 5:
rpm -Uhv http://apt.sw.be/packages/rpmforge-release/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
This will set up the repository for use. Then just do something like yum install php php-devel (I think that's all, I'm not too experienced with CentOS, as my main distribution of choice is Debian)

More information on this repository: http://dag.wieers.com/rpm/
Hope this helps you :D
Title: Re: What is eAccelerator?
Post by: Ricky. on December 01, 2007, 04:41:52 AM
Quote from: Ben_S on July 27, 2007, 06:49:37 AM
Quote from: littleone on July 25, 2007, 06:12:56 PM
My host just installed eAccelerator and here is what they gave me:

eAccelerator installed.
# php -v
PHP 4.4.6 (cli) (built: Apr 9 2007 23:03:01)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies
with eAccelerator v0.9.5.1, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
with Zend Extension Manager v1.2.0, Copyright (c) 2003-2006, by Zend Technologies
with Zend Optimizer v3.2.2, Copyright (c) 1998-2006, by Zend Technologies

Now my question was, that when I check the Caching tab in the Admin panel it still says that SMF cannot find a compatible accelerator.  I went ahead and set it to level 1 anyways, but I wanted to make sure that wasnt a problem and if there was a way i could check to make sure it was working proper?  Thanks!

You hosts needs to compile it with --with-eaccelerator-content-caching or SMF won't be able to make use of it.

I installed accelerator few days back and I thought response time was improved but it was never detected by smf, then I recompiled it with  "--with-eaccelerator-content-caching " but still it is not visible in sMF caching option.
Title: Re: What is eAccelerator?
Post by: senicnok on January 03, 2008, 09:22:48 PM
Receipt these errors:

QuoteConfiguring for:
PHP Api Version:         20020918
Zend Module Api No:      20020429
Zend Extension Api No:   20050606
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
environment variable is set correctly and then rerun this script.

and Php is :
Quote[root@ns1 eaccelerator-0.9.3]# php -v
PHP 4.4.7 (cli) (built: Jan  1 2008 06:05:58)
Copyright (c) 1997-2007 The PHP Group
Zend Engine v1.3.0, Copyright (c) 1998-2004 Zend Technologies

Please help. My board is almost 300MB & >400 vistors a day.

Thanks
Title: Re: What is eAccelerator?
Post by: 青山 素子 on January 03, 2008, 09:29:01 PM
Read the error carefully:

Quote from: senicnok on January 03, 2008, 09:22:48 PM
Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF
environment variable is set correctly and then rerun this script.

That means you don't have the autoconf package installed. You will need to install this on your server. This can usually be done through "yum install autoconf" or "apt-get install autoconf".
Title: Re: What is eAccelerator?
Post by: Ricky. on January 23, 2008, 02:14:01 PM
Quote from: senicnok on January 03, 2008, 09:22:48 PM


Please help. My board is almost 300MB & >400 vistors a day.

Thanks


Well, thats true.. anyways.. do share what performance gain you saw after eaccelerator.. I hv a board something double of your specs.. and ya .. eaccelerator was helpful.. but still I cant' come closer to page creation time I see simplemachines.org/community page :P
Title: Re: What is eAccelerator?
Post by: 青山 素子 on January 23, 2008, 03:03:31 PM
What kind of specs is your server? Do keep in mind that we actually have separate servers for database and web. It helps a lot since you can tune each one for its role. When you combine functions on a single server, you have to compromise on things.