Thecus N2560 as a ZurmoCRM Application Server Performance Report


In Asustor AS-602T as a ZurmoCRM Application Server Performance ReportADM provides better support for ZurmoCRM than QTS platform. In firmware 2.1, it has Alternative PHP Cache, Memcache, memcached, and optional PHP 5.5.3 R2.

Thecus N2560 is different. They have PHP 5.5.11 and MySQL 5.6.17 as optional module. Memcache and memcached are both supported.

How about the performance with ZurmoCRM with different PHP and MySQL? Is there any difference between ThecusOS and others? Let’s take a look at it.

Processor, RAM, and Linux Difference

While N2560 is based on Intel SoC CE5335AS-602T and QNAP TS-269L both use 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.

CE5335, D2701, and D510 all have 2 cores with 4 threads but CE5335 has 512KB cache while others has 4 times the cache (1MB vs 256KB) compares to 88F6281. D2701 (36-bit physical address) and D510 have 64-bit instruction set while CE5335 (32-bit physical address) and 88F6281 is 32-bit. QNAP TS-269L should be able to run 64-bit operating system even the current QTS is still 32-bit.

All QTS and ThecusOS in N2560 are 32-bit. Both ADM in AS-602T and Debian in TurnKey Linux are x64 which means 64-bit.

[root@N2560 ~]# uname -a
Linux N2560 2.6.39-1.ce17.fc16.i686 #1 SMP PREEMPT Thu Feb 13 11:03:52 CST 2014 i686 i686 i386 GNU/Linux

RAM is not expandable and fix to 2GB. But it is still much better than most consumer NAS in the market, 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 install or 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. I have to manually edit php.ini and my.cnf on ThecusOS. Please refer to Prerequisite Before you Install ZurmoCRM on Thecus NAS running ThecusOS 6 for detail.

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.

For PHP 5.5.x, ADM doesn’t have build-in support for neither OPcache nor APCu but ThecusOS support both of them. In other words, PHP 5.5.x on ADM doesn’t provide any PHP accelerator.

Memcache and memcached together help to cache database result and lower database loading in LAMP. It is supported on Thecus Apache_2.2.27.1_x86.mod and 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.

N2560 is configured with following disk set.

  1. WD Red ( WD10EFRX) 1TB * 2 as RAID 1

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 Thecus N2560 with others loading contacts from ZurmoCRM.
Performance comparison table on Thecus N2560 with others loading contacts from ZurmoCRM.

Analyze

The best configuration for N2560 is almost as fast as Shuttle X50V2 with Alternative PHP Cache and 64MB memcached.

For PHP 5.5.x on AS-602T  and N2560, it seems N2560 is faster because of APCu, memcached, and a newer MySQL. On N2560, we also see improvement on MySQL 5.6.17 over 5.5.14.

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 Thecus N2560 with optional modules are really fast. It makes sense to upgrade your LAMP to the latest version. If APCu is available in PHP 5.5.x, it may provide partial backward compatibility (only user cache) with Alternative PHP Cache.

Something I didn’t expect is the performance improves with latest MySQL. Maybe this is another key issue why N2560 is faster than AS-602T and TS-269L.

Reference

  1. APCu
  2. Asustor ADM Configuration and Executable Files
  3. Asustor AS-602T as a ZurmoCRM Application Server Performance Report
  4. Asustor: ADM
  5. Asustor: AS-602T
  6. Connect NAS to your Computer Directly
  7. Debian
  8. How Multi-Core Processors Accelerate your LAMP Applications
  9. Intel Newsroom: Intel Launches System-on-Chip Storage Solution Designed for Simple Video Transcoding and Streaming
  10. Intel: New Storage Solutions Based on the Intel® Atom™ Processor CE5300 Series Simplifies HD Content Sharing and Delivery Between Mobile Devices and Smart TV
  11. Intel: Atom Processor D2700
  12. Intel: Atom Processor D510
  13. memcached
  14. Marvell: Marvell 88F6281 SoC with Sheeva Technology
  15. Maximum MTU doesn’t mean Best Performance
  16. Mozilla: Firefox
  17. MySQL
  18. MySQL: 4.2.3.3 Using Option Files
  19. Optimize Asustor ADM for ZurmoCRM
  20. Perishable Press: Improve Site Performance by Increasing PHP Memory for WordPress
  21. PHP
  22. PHP: Alternative PHP Cache
  23. PHP: OPcache
  24. PHP: PHP Manual: Appendices: php.ini directives
  25. PHP: PHP Manual: Appendices: php.ini directives: memory_limit
  26. PHP: PHP Manual: Function Reference: Other Services: Memcache
  27. Prerequisite Before you Install ZurmoCRM on Thecus NAS running ThecusOS 6
  28. QNAP QTS Configuration and Executable Files
  29. QNAP: App Center (QPKG)
  30. QNAP: TS-119PII
  31. QNAP: TS-269L
  32. QNAP: QTS
  33. Salesforce
  34. Shuttle X50V2 Datasheet
  35. StackOverflow: Is the more the better for PHP memory_limit? [closed]
  36. Thecus: N2560
  37. TurnKey Linux
  38. TurnKey Linux: Zurmo
  39. TurnKey Linux Configuration and Executable Files
  40. WD: WD Red ( WD10EFRX)
  41. Wiki: Hyper-threading
  42. Wiki: Instruction set
  43. Wiki: Operating system
  44. Wiki: LAMP (software bundle)
  45. Wiki: List of PHP accelerators
  46. Wiki: Multi-core processor
  47. Wiki: PHP accelerator
  48. Wiki: Session (computer science)
  49. Wiki: Standard RAID levels: RAID 1
  50. Wiki: Thread (computing)
  51. Zurmo: Zurmo Cache System Explained
  52. ZurmoCRM
Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s