Hi all,
I successfully installed PHP7.03 on my Centos 7.2 setup and the performance improvement is there :
Pages that use to load in between 2 and 3 seconds now load in between 0.6 second and 1second.
Thanks everyone for all the pointers.
Connection Setup TIME
Queueing 3.13 ms
Stalled 0.49 ms
Request sent 0.37 ms
Waiting (TTFB) 781.29 ms
Content Download6.98 ms
Explanation 792.26 ms
Page |
0.599s |
Cache |
0.552s |
MySQL |
|
Cell |
50/0.0027s |
Row |
28/0.0026s |
Rows |
49/0.1927s |
Column |
8/0.0008s |
Memory |
|
Cached |
118MB |
Page |
125MB |
Peak |
159MB |
Observium |
0.16.1.7535 (27th January 2016) |
OS |
Linux 3.10.0-327.el7.x86_64 [amd64] (CentOS 7.2.1511) |
Apache |
2.4.6 (CentOS) PHP/7.0.3 |
PHP |
7.0.3 |
Python |
2.7.5 |
MySQL |
5.5.44-MariaDB-log (extension: mysqli 5.0.12-dev) |
SNMP |
NET-SNMP 5.7.2 |
RRDtool |
1.4.8 |
Best regards,
Louis
From: observium [mailto:observium-bounces@observium.org]
On Behalf Of Colin Stubbs
Sent: Tuesday, February 16, 2016 11:57
To: Observium Network Observation System
Subject: Re: [Observium] Speeding up caching and database
Looks like jpgraph *could* be tested easily enough with php70, if you’re willing to give it a go, just need to modify the check function to accomodate a different major version.
DISCLAIMER: Results may vary.
in jpgraph/src/jpgraph.php,
//
// Check minimum PHP version
//
function CheckPHPVersion($aMinVersion) {
list($majorC, $minorC, $editC) = preg_split('/[\/.-]/', PHP_VERSION);
list($majorR, $minorR, $editR) = preg_split('/[\/.-]/', $aMinVersion);
if ($majorC != $majorR) return false;
if ($majorC < $majorR) return false;
// same major - check minor
if ($minorC > $minorR) return true;
if ($minorC < $minorR) return false;
// and same minor
if ($editC >= $editR) return true;
return true;
}
Probably should be something like,
//
// Check minimum PHP version
//
function CheckPHPVersion($aMinVersion) {
list($majorC, $minorC, $editC) = preg_split('/[\/.-]/', PHP_VERSION);
list($majorR, $minorR, $editR) = preg_split('/[\/.-]/', $aMinVersion);
// major version is greater, ***assume*** OK
if ($majorC > $majorR) return true;
// major is less, definitely not OK
if ($majorC < $majorR) return false;
// same major - check minor
if ($minorC > $minorR) return true;
if ($minorC < $minorR) return false;
// and same minor
if ($editC >= $editR) return true;
return true;
}
-Colin
On 16 February 2016 at 17:19, Niilo Kajander <nk@kajander.fi> wrote:
Hi,
we use php7 packages from remi on our observium running on el7. Everything else works but traffic accounting:
https://kajander.fi/acct.png
http://blog.remirepo.net/post/2016/02/14/Install-PHP-7-on-CentOS-RHEL-Fedora
—
Niilo Kajander
nk@kajander.fi
>
Louis Bailleul Computer Systems Engineer Imaging & Engineering | Imaging Telephone: +44 1932 376000 Direct: +44 1932 376842 VOIP: 74416842 Mobile: +44 7786 525307 Email: louis.bailleul@pgs.com A Clearer Image | www.pgs.com |
On 15 Feb 2016, at 18:23, Markus Klock <markus@best-practice.se> wrote:
>
> Yeah, that might not very easy :)
> Anyhow, I'm pretty sure the majority of the slowness in your web gui is due to php rendering as you probably have a lot of stuff in the UI.
> PHP7 greatly improves this.
>
> /Markus
>
> 2016-02-15 17:19 GMT+01:00 Louis Bailleul <Louis.Bailleul@pgs.com>:
> Hi,
>
>
>
> Thanks Markus, I’ll give it a go.
>
>
>
> But I’ll have to work out how to get php7 on a Centos 7.
>
>
>
> Best regards,
>
> Louis
>
>
>
> From: observium [mailto:observium-bounces@observium.org] On Behalf Of Markus Klock
> Sent: Monday, February 15, 2016 16:04
> To: Observium Network Observation System
> Subject: Re: [Observium] Speeding up caching and database
>
>
>
> Hey, I had the same problem.
>
> I solved it by upgrading to PHP7, wrote a post about it here:
http://blog.best-practice.se/2015/12/vastly-improve-observium-performance.html
>
>
>
> /Markus
>
>
>
> 2016-02-15 16:57 GMT+01:00 Louis Bailleul <Louis.Bailleul@pgs.com>:
>
> Hi Team,
>
>
>
> I have a performance issue with the web interface.
>
> My Observium is monitoring 3095 devices from which 168 are switches (Just a bit less than 20000 ports total).
>
>
>
> My server is an IBM X3650 M4, 32G of ram, 6 cores and a raid 10 of SSD.
>
> I am more than happy with the polling performance has it finishing in under 200seconds.
>
>
>
> But the web interface is quite annoying : I have a minimum Time to first bit of ~2seconds.
>
> Once these two seconds have passed the page load almost instantly, graphs included.
>
>
>
> So the question is, can I speed things up ?
>
> And if yes how ?
>
>
>
> It looks like Observium is spending about a second in the database and says that the Cache took 2 seconds to process (?).
>
> Do I have some leverage on these points to make it faster ?
>
>
>
>
>
> Page load time (Just a device page) :
>
>
>
> Connection Setup TIME
>
> Queueing 5.24 ms
>
> Stalled 1.26 ms
>
> Request sent 0.80 ms
>
> Waiting (TTFB) 3.29 s
>
> Content Download 26.62 ms
>
> Explanation 3.33 s
>
>
>
> Observium Performance report :
>
>
>
> Page
>
> 2.281s
>
> Cache
>
> 2.047s
>
>
>
> MySQL
>
> Cell
>
> 50/0.0633s
>
> Row
>
> 35/0.0113s
>
> Rows
>
> 49/0.7822s
>
> Column
>
> 8/0.0564s
>
>
>
> Memory
>
> Cached
>
> 180MB
>
> Page
>
> 189MB
>
> Peak
>
> 229MB
>
>
>
> Versions:
>
>
>
> Observium
>
> 0.16.1.7535 (27th January 2016)
>
> OS
>
> Linux 3.10.0-327.el7.x86_64 [amd64] (CentOS 7.2.1511)
>
> Apache
>
> 2.4.6 (CentOS) PHP/5.4.16
>
> PHP
>
> 5.4.16
>
> Python
>
> 2.7.5
>
> MySQL
>
> 5.5.44-MariaDB-log (extension: mysqli 5.5.44-MariaDB)
>
> SNMP
>
> NET-SNMP 5.7.2
>
> RRDtool
>
> 1.4.8
>
>
>
>
>
> Stats :
>
>
>
> Statistics
>
> DB size
>
> 606MB
>
> RRD size
>
> 134GB
>
> Devices
>
> 3095
>
> Ports
>
> 19390
>
> IPv4 Addresses
>
> 6148
>
> IPv4 Networks
>
> 44
>
> IPv6 Addresses
>
> 2959
>
> IPv6 Networks
>
> 1
>
> Services
>
> 0
>
> Applications
>
> 0
>
> Processors
>
> 61262
>
> Memory
>
> 15563
>
> Storage
>
> 11742
>
> Disk I/O
>
> 97461
>
> HR-MIB
>
> 96815
>
> Entity-MIB
>
> 7292
>
> Syslog Entries
>
> 0
>
> Eventlog Entries
>
> 172938
>
> Sensors
>
> 3863
>
> Toner
>
>
>
>
>
> Mysqltuner output :
>
>
>
> -------- Performance Metrics -------------------------------------------------
>
> [--] Up for: 2d 21h 57m 9s (260M q [1K qps], 5K conn, TX: 283B, RX: 45B)
>
> [--] Reads / Writes: 59% / 41%
>
> [--] Binary logging is disabled
>
> [--] Total buffers: 10.5G global + 4.7M per thread (650 max threads)
>
> [OK] Maximum reached memory usage: 11.2G (35.94% of installed RAM)
>
> [OK] Maximum possible memory usage: 13.5G (43.37% of installed RAM)
>
> [OK] Slow queries: 0% (14K/260M)
>
> [OK] Highest usage of available connections: 21% (142/650)
>
> [OK] Aborted connections: 0.00% (0/5477)
>
> [OK] Query cache efficiency: 32.3% (74M cached / 230M selects)
>
> [OK] Query cache prunes per day: 0
>
> [OK] Sorts requiring temporary tables: 0% (129 temp sorts / 182K sorts)
>
> [OK] Temporary tables created on disk: 0% (201 on disk / 112K total)
>
> [OK] Thread cache hit rate: 97% (142 created / 5K connections)
>
> [OK] Table cache hit rate: 102% (922 open / 896 opened)
>
> [OK] Open file limit used: 5% (52/1K)
>
> [OK] Table locks acquired immediately: 97% (244M immediate / 249M locks)
>
>
>
> -------- MyISAM Metrics -----------------------------------------------------
>
> [!!] Key buffer used: 18.0% (28M used / 157M cache)
>
> [OK] Key buffer size / total MyISAM indexes: 150.0M/99.0K
>
> [!!] Read Key buffer hit rate: 93.3% (15 cached / 1 reads)
>
>
>
> -------- InnoDB Metrics -----------------------------------------------------
>
> [--] InnoDB is enabled.
>
> [OK] InnoDB buffer pool / data size: 8.0G/579.1M
>
> [!!] InnoDB buffer pool instances: 1
>
> [!!] InnoDB Used buffer: 6.67% (34952 used/ 524287 total)
>
> [OK] InnoDB Read buffer efficiency: 100.00% (2079385726 hits/ 2079395120 total)
>
> [!!] InnoDB Write buffer efficiency: 0.00% (0 hits/ 1 total)
>
> [OK] InnoDB log waits: 0.00% (0 waits / 11253445 writes)
>
>
>
> -------- AriaDB Metrics -----------------------------------------------------
>
> [--] AriaDB is disabled.
>
>
>
> -------- Replication Metrics -------------------------------------------------
>
> [--] No replication slave(s) for this server.
>
> [--] This is a standalone server..
>
>
>
> -------- Recommendations -----------------------------------------------------
>
> General recommendations:
>
> Run OPTIMIZE TABLE to defragment tables for better performance
>
> Remove Anonymous User accounts - there are 2 anonymous accounts.
>
> Set up a Password for user with the following SQL statement ( SET PASSWORD FOR 'user'@'SpecificDNSorIp' = PASSWORD('secure_password'); )
>
> Set up a Secure Password for user@host ( SET PASSWORD FOR 'user'@'SpecificDNSorIp' = PASSWORD('secure_password'); )
>
> Restrict Host for user@% to user@SpecificDNSorIp
>
> Variables to adjust:
>
> innodb_buffer_pool_instances(=8)
>
> -------------------------------------------------------------------------------------
>
>
>
>
>
>
>
> Thanks.
>
>
>
> Best regards,
>
> Louis
>
>
>
>
>
> Louis Bailleul
> Computer Systems Engineer
> Imaging & Engineering | Imaging
>
> Telephone: +44 1932 376000
> Direct: +44 1932 376842
> VOIP: 74416842
> Mobile: +44 7786 525307
> Email: louis.bailleul@pgs.com
>
> A Clearer Image |
www.pgs.com
>
>
>
>
>
>
>
>
>
> Address: 4 The Heights, Brooklands, Weybridge, Surrey, KT13 0NY, United Kingdom
>
> This e-mail, including any attachments and response string, may contain proprietary information which is confidential and may be legally privileged. It is for the intended recipient only. If you are not the intended recipient or transmission
error has misdirected this e-mail, please notify the author by return e-mail and delete this message and any attachment immediately. If you are not the intended recipient you must not use, disclose, distribute, forward, copy, print or rely on this e-mail in
any way except as permitted by the author.
>
>
> _______________________________________________
> observium mailing list
> observium@observium.org
>
http://postman.memetic.org/cgi-bin/mailman/listinfo/observium
>
>
>
>
> Louis Bailleul
> Computer Systems Engineer
> Imaging & Engineering | Imaging
>
> Telephone: +44 1932 376000
> Direct: +44 1932 376842
> VOIP: 74416842
> Mobile: +44 7786 525307
> Email: louis.bailleul@pgs.com
>
> A Clearer Image |
www.pgs.com
>
>
>
> _______________________________________________
> observium mailing list
> observium@observium.org
>
http://postman.memetic.org/cgi-bin/mailman/listinfo/observium
>
>
> _______________________________________________
> observium mailing list
> observium@observium.org
>
http://postman.memetic.org/cgi-bin/mailman/listinfo/observium
_______________________________________________
observium mailing list
observium@observium.org
http://postman.memetic.org/cgi-bin/mailman/listinfo/observium