Asustor AS-602T as a ZurmoCRM Application Server Performance Report


In QNAP TS-269L as a ZurmoCRM Application Server Performance Report, I was depressed with the result running ZurmoCRM on QTS platform which runs on QNAP device.

This time, I got a AS-602T from Asustor running  ADM x64. They also provide me beta firmware with Alternative PHP Cache, Memcache, memcached, and PHP 5.5.3 R2 for testing. These should improve performance.

How about the performance with ZurmoCRM with different acceleration? Is there any difference between ADM and Debian? Let’s take a look at it.

Processor, RAM, and Linux Difference

While AS-602T is based on the same processor as QNAP TS-269L an Intel Atom D2701 running at 2.13GHz, QNAP TS-119PII is Marvell 88F6281 at 2.0GHz, and Shuttle X50V2 is Intel Atom D510 at 1.6GHz.

Both D2701 and D510 have 2 cores with 4 threads and 4 times the cache (1MB vs 256KB) compares to 88F6281. D2701 and D510 have 64-bit instruction set while 88F6281 is 32-bit. QNAP TS-269L should be able to run 64-bit operating system even the current QTS is still 32-bit. Both ADM in AS-602T and Debian in TurnKey Linux is x64 which means 64-bit.

root@AS602T:/volume1/.@root # uname -a
Linux AS602T 3.7.9 #1 SMP Tue Feb 25 06:37:51 CST 2014 x86_64 GNU/Linux

RAM is expandable to 3GB. There is an empty RAM slot. With more RAM available, you may see improvements on disk sensitive operation and may run more applications without out of memory at the same time.

Test Method

I connect NAS to computer directly. Then upload ZurmoCRM and setup with build-in demo data. Shuttle X50V2 is setup with ISO image from TurnKey Linux: Zurmo. Then use Firefox to list all contacts. There are 28 contact records provided from ZurmoCRM demo data.

To satisfy requirement, I also manually edit Qthhttpd.sh in QTS, and php.ini in Debian and ADM to increase memory_limit from 128M to 256M. Please reference Asustor ADM Configuration and Executable Files, QNAP QTS Configuration and Executable Files, and TurnKey Linux Configuration and Executable Files to find the path.

All unnecessary background process and programs are disabled.

With the right cache system required by Zurmo, it may improve performance.

Alternative PHP Cache helps to execute faster by caching compiled codes and eliminating the overhead of compiling the same code again. It is supported on certain ADM but not supported on QTS or TurnKey Linux.

Memcache and memcached together help to cache database result and lower database loading in LAMP. It is supported on certain ADM but not supported on QTS nor TurnKey Linux.

You may manually installed them with apt-get easily in TurnKey Linux but need to compile yourself in QTS. memcached is available on App Center in QTS.

AS-602T is configured with following disk set.

  1. Seagate Barracuda Desktop 500GB

According to my MTU test, I keep it to use default 1500.

I measure time to load 1 and 5 contacts in a single login session. The 5 contacts are loaded in different tabs in the same Firefox. Therefore, it use only one thread and won’t begin to load the next until finish. If you are confused or interested in the relationship of LAMP, thread, multi-core processor, hyper-threading, How Multi-Core Processors Accelerate your LAMP Applications provides detail explain in plain English.

Performance

Performance comparison table on Asustor AS-602T with others loading contacts from ZurmoCRM.
Performance comparison table on Asustor AS-602T with others loading contacts from ZurmoCRM.

Analyze

The best configuration for Asustor AS-602T is about 30% slower to Shuttle X50V2 with Alternative PHP Cache and Memcache. Although AS-602T has fewer RAM, it never use swap during test.

For the different version of PHP, we may see about 20% improvements when upgrade from 5.3.27 to 5.5.3 R2. Although it doesn’t provide Alternative PHP Cache and Memcache yet, it should improve more when they are available.

As you may see, QNAP TS-119PII is the slowest among them. It is clear that Intel Atom D2701 execute LAMP applications faster than Marvell 88F6281.

Compared to my experience with Salesforce, running ZurmoCRM on NAS is slow.

Final Thoughts

The new firmware begin to support Alternative PHP Cache and Memcache makes ADM a more attractive choice for ZurmoCRM. If they may upgrade to PHP 5.5.3 R2, it would be more attractive. I think the performance is getting more acceptable with the new firmware. It has a bright future to ZurmoCRM.

About memory_limit in php.ini, StackOverflow has an interesting topic: “StackOverflow: Is the more the better for PHP memory_limit? [closed]” while Jeff Starr does a test on Perishable Press: Improve Site Performance by Increasing PHP Memory for WordPress. If you didn’t increase before setup ZurmoCRM, you will fail to install demo data.

If you need to optimize ZurmoCRM on ADM, follow my “Optimize Asustor ADM for ZurmoCRM“. It will be updated when I found more optimization in the future.

Reference

  1. QNAP TS-269L as a ZurmoCRM Application Server Performance Report
  2. QNAP: QTS
  3. QNAP
  4. ZurmoCRM
  5. Asustor
  6. Asustor ADM
  7. Asustor: AS-602T
  8. PHP: Alternative PHP Cache
  9. PHP: PHP Manual: Function Reference: Other Services: Memcache
  10. memcached
  11. PHP
  12. Intel Atom Processor
  13. Shuttle X50V2 Datasheet
  14. Intel: Intel Atom Processor D510
  15. Intel Atom Processor D2700
  16. QNAP TS-269L
  17. TurnKey Linux
  18. Wiki: LAMP (software bundle)
  19. QNAP TS-119PII
  20. Marvell: Marvell 88F6281 SoC with Sheeva Technology
  21. Wiki: Instruction set
  22. Wiki: Operating system
  23. Asussor: Memory Installation Guide For ASUSTOR 6 Series NAS
  24. Debian
  25. Connect NAS to your Computer Directly
  26. TurnKey Linux: Zurmo
  27. Zurmo: Zurmo Cache System Explained
  28. Asustor ADM Configuration and Executable Files
  29. QNAP QTS Configuration and Executable Files
  30. TurnKey Linux Configuration and Executable Files
  31. QNAP: App Center (QPKG)
  32. Seagate Barracuda Desktop Datasheet
  33. Maximum MTU doesn’t mean Best Performance
  34. Mozilla: Firefox
  35. Wiki: PHP accelerator
  36. Wiki: List of PHP accelerators
  37. PHP: PHP Manual: Appendices: php.ini directives: memory_limit
  38. PHP: PHP Manual: Appendices: php.ini directivies
  39. Wiki: Session (computer science)
  40. Wiki: Thread (computing)
  41. Wiki: Multi-core processor
  42. Wiki: Hyper-threading
  43. How Multi-Core Processors Accelerate your LAMP Applications
  44. Wiki: List of Intel Atom microprocessors: CE SoCs: Dual-Core CE SoCs
  45. Intel Newsroom: Intel Launches System-on-Chip Storage Solution Designed for Simple Video Transcoding and Streaming
  46. Perishable Press: Improve Site Performance by Increasing PHP Memory for WordPress
  47. StackOverflow: Is the more the better for PHP memory_limit? [closed]
  48. Salesforce
  49. Optimize Asustor ADM for ZurmoCRM

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.