ASE Home Page Products Download Purchase Support About ASE
ChartDirector Support
Forum HomeForum Home   SearchSearch

Message ListMessage List     Post MessagePost Message

  PHP 7.2.10 solaris 64bit
Posted by Jacob on Aug-09-2019 03:29
Hey I was wondering if you guys could put out a 64-bit PHP download for chart director for Solaris (x84). The current one is 32-bit, and we're trying to upgrade our OS to a 64-bit version of Solaris, and this would help us out a ton. Thanks.

  Re: PHP 7.2.10 solaris 64bit
Posted by Peter Kwan on Aug-12-2019 05:22
Hi,

I am not aware of the official Solaris distribution include PHP 7.2, so I assume it is compile by yourself or is from somewhere else. Like many open source software, PHP 7.2 can be compiled in many binary incompatible ways. I have just compiled one for the non-debug, non-zend-thread-safe (non-zts) PHP, which is the default PHP built (PHP built with all options set to default) and is most common type of PHP for production usage.

("Non-zend-thread-safe" sounds like it is not "safe", but in fact it is the more reliable PHP. The "Zend" company creates the PHP engine and makes it thread-safe. However, PHP also includes a large amount of third party code not written or maintained by Zend, such as the various database drivers and a large number of extensions. The thread-safety of these third party code is unknown or unproven, so most PHP is compiled to disable multi-threading. If you look at production PHP web servers nowadays, virtually all of them are non-zts PHP.)

You can download the Solaris x64 libchartdir.so and phpchartdir720.dll from:

https://www.advsofteng.com/cd6_sunos_x64_php.zip

Please use the above files to replace the files of the same name in the ChartDIrector for Solaris x86 distribution.

Hope this can help.

Regards
Peter Kwan

  Re: PHP 7.2.10 solaris 64bit
Posted by Jacob on Nov-20-2019 07:28
Thank you.

  Re: PHP 7.2.10 solaris 64bit
Posted by Jacob on Nov-20-2019 07:53
I am compiling php my self, but I am using a TS build of PHP. So I'm getting a unable to initialize module warning:

PHP Warning:  PHP Startup: ChartDirector PHP API: Unable to initialize module
Module compiled with build ID=....,NTS
PHP    compiled with build ID=...,TS

So by chance do you have a thread safe build for this?

  Re: PHP 7.2.10 solaris 64bit
Posted by Peter Kwan on Nov-20-2019 17:29
Hi Jacob,

Although thread-safe PHP seems to be "safer" and faster that non-thread-safe PHP, the reality is the exact opposite. Before you decide to use thread-safe PHP, please consider the follows.

There is a common believe that thread-safe PHP is unreliable. Zend (the company that develops PHP) suggests people not to use thread-safe PHP, but uses FastCGI PHP (NTS) instead. That's why the PHP that comes with almost all OS distribution (Linux, FreeBSD, etc) and in production web sites are non-thread-safe.

According to Zend, thread-safe PHP is less reliable is probably due to third party code. PHP includes a lot of third party code, like database drivers, text processing libraries (eg. regular expressions), many networking functions, etc. Most of these code originate from non-Windows OS and may not be well tested for multi-threading.

Web servers on non-Windows systems (eg. Apache) use forking instead of multi-threading, so it is not necessary to be thread-safe. Instead, TS PHP is probably slower because of the unnecessary thread-safety overhead.

The Windows OS is not efficient in forking, so in the past multi-threaded PHP was used. Since PHP supports FastCGI around 15 years ago, Zend has recommended FastCGI over multi-threading. As far as I know, the PHP that distributes by Microsoft for its IIS web server is also non-thread-safe and uses FastCGI.

In summary, non-thread-safe PHP is probably more reliable and is just as fast, if not faster, than thread-safe PHP. Thread-safe PHP exists because historically (before FastCGI) it was the only method to achieve performance on Windows.

If you still want to use thread-safe PHP, please let me know.

Regards
Peter Kwan

  Re: PHP 7.2.10 solaris 64bit
Posted by Jacob on Nov-21-2019 02:39
I need TS for now...

  Re: PHP 7.2.10 solaris 64bit
Posted by Peter Kwan on Nov-22-2019 02:09
Hi Jacob,

I have just added the phpchartdir720mt.dll to the following download, which is for thread-safe 64-bit PHP for Solaris (x64).

https://www.advsofteng.com/cd6_sunos_x64_php.zip

Regards
Peter Kwan

  Re: PHP 7.2.10 solaris 64bit
Posted by Jacob on Nov-22-2019 02:48
Awesome thanks you are super helpful.