Don’t Believe The Lies: PHP Isn’t Thread-Safe Yet

If you took everything you heard for granted, you’d have been lead to believe that the official PHP distributions (from php.net) have been thread-safe since version 5.2.0.

That’s not true. Don’t fall for it. Don’t attempt to use PHP in a multi-threaded environment (mpm_worker on Apache, ISAPI on IIS, etc.), because PHP thread-safety is a myth.. nothing more than a bunch of lies, if you will.

If you look at the PHP download page, you’ll see that the pre-built binaries (in this case, Windows) are split into two: thread-safe and non-thread-safe:

Thread-Safety

The problem is, no matter which you choose, PHP isn’t thread safe. You’ll still get the same, old, dreaded “PHP has encountered an access violation at memory_address” error.

It’s not a question of server configuration so much as it is one of PHP writing bad code and pretending that’s not the case. PHP isn’t multi-threading ready and most everyone knows it… but it seems they still feel the need to pass it off as if it were, never mind the complaints and bug reports that come.

Continue reading

No More Downtime!

It seems that every time we get on Slashdot (or Digg for that matter), we go down. It doesn’t make a difference just how well prepared we are, what kind of hosting we’re using, what the application being Slashdotted is, etc. It’s the unwritten law at NST. But we hope this’s the last time we ever experience downtime for a while.1

Why? We’ve left PHP. Well, not exactly. It seems that PHP doesn’t give a damn about Windows users. PHP has repeatedly stated that “we’re aware of [….] serious stability issues on Windows…” But they’ve done nothing about it for almost a year now. Their advice is to abandon (their own) PHP ISAPI connector and instead fallback to the ages-old and incredibly slow PHP CGI solution.

Continue reading


  1. Currently, NeoSmart Technologies is running off of a dedicated host (from LunarPages) with eAccelerator, MySQL, WP Cache, and some more optimization goodiness.