Wednesday, July 31, 2013

Linux CPU / Memory Utilization and other Performance

Linux CPU Load

If you want to see the CPU Load details as well CPU utilization, try following command.
# top
Press q to return on command prompt. q is for quit.

or more graphical representation
# htop
Press to return on command prompt. q is for quit.

or Install sysstat & try following command :
# mpstat
You can see CPU usage in percentage using
# sar
as well as you can use
# iostat
If you want to know who is eating cpu
# ps -eo pcpu,pid,user,args | sort -k 1 -r | head -10

Web Server Monitoring Tools

WebSite Monitoring Tools

NagiosNagios is a powerful monitoring system that enables organizations to identify and resolve IT infrastructure problems before they affect critical business processes.

WebSitePulseThe WebSitePulse Website monitoring service provides 24/7 mission-critical remote availability monitoring and performance measurement of your website from end-user perspective. With two service options, Performance website monitoring simulating repeat user and Full-page website monitoring, simulating first-time user experience, this monitoring service gives you real insight into what your end-users are experiencing with your website.

InternetSupervision : InternetSupervision.com monitors the availability, performance, and content of your website, web server and internet services from our UL approved offices with 24/7 personnel in Washington DC, Detroit, Chicago, Los Angeles, and Santiago, Chile. We also have remote check points in Gloucester, UK, and Sydney, Australia. Learn more about our services and plan pricing.

site24x7 : Keep track of the performance of multi-step web applications or business transactions. It can remotely monitor the availability and performance of business-critical web applications that involves multiple web transactions.

hosttracker : They provide Monitoring an unlimited number of resources, Distributed monitoring, Monitoring period – every 1/5/15/30/60 minutes, Possible monitoring of CGI scripts’ operation, The HEAD/POST/GET HTTP-methods support, Ability to specify parameters passed to a CGI script, Keyword presence control on a page and many more.

Pingdom : Pingdom makes it easy for user to monitor the uptime and performance of the website or server.

monitor.us : They provide Tracking website availability and performance from different locations in major countries and traffic destinations, Website uptime checks,  using HTTP, HTTPS, PING, DNS, Agentless MySQL checks, Email checks using SMTP, POP3, IMAP protocols, Public IP checks using TCP, UDP, SSH and IMCP protocols, VoIP checks using SIP protocol, Webpage content checks, Instant failure alerts via email, IM, SMS or live voice, SLA Reporting - detailed reporting with service level metrics per interval and many more.

Are my sites upIt is a free, ad-supported web server monitoring tool. Their plans will check the sites as frequently as once per minute. User get unlimited email and SMS notifications (in the US, International SMS is available) and they tell user that why was down by providing the HTML status error code, when possible. They provide an iPhone application, RSS feeds, webhooks, keyword search, premium-level support, email notifications to multiple addresses, multiple user accounts voice calls.

ObservuObservu monitors your websites from multiple locations and combines it with measurements collected on your servers. Notification by E-mail, SMS and Voice calls will allow you to respond quickly and improve your quality of service dramatically.

ServiceUptime : Free monitoring account includes one monitoring service (any port or service) checked every 30 minutes. Free account has all necessary features to keep the track of your website uptime and is limited in some advanced features and check frequency only. There is no limitations on worldwide locations so your service will be monitored from all over the world. 

Montastic : Montastic monitors the sites and alert when there is an error. They send an email when the site goes down as well as when the site goes back up. They read statuses via RSS, Mac, PC, Android widgets and API .They support for HTTP, HTTPs and any port number and HTTP authentication. They verify presence or absence of keyword on a web page Monitoring frequency up to every 5 minutes.

BasicStateIt is a free web site uptime monitor service, server and network failure alerts.  The free uptime monitoring service monitors http services. The test attempts to retrieve the home page at a fixed interval of fifteen minutes. For additional capabilities exactstate.com offers http, https, smtp, imap, pop3, ftp, ssh, telnet and custom tcp ports at intervals between 1 to 20 minutes. Email blacklist monitoring of dnsbl blacklists and rhsdnsbl blacklists is also available for both individual servers and bulk ip address netblocks. Be sure to check out the 2 for 1 bonus offer before deciding on your first purchase. 

Top web server performance tools for Linux

Top Web Server Performance /  Load / Stress Testing tools for Linux :

Apache JMETER :  The Apache JMeter™ desktop application is open source software, a 100% pure Java application designed to load test functional behavior and measure performance. It was originally designed for testing Web Applications but has since expanded to other test functions. 

Curl Loadercurl-loader (also known as "omes-nik" and "davilka") is an open-source tool written in C-language, simulating application load and application behavior of thousands and tens of thousand HTTP/HTTPS and FTP/FTPS clients, each with its own source IP-address. In contrast to other tools curl-loader is using real C-written client protocol stacks, namely, HTTP and FTP stacks of libcurl and TLS/SSL of openssl, and simulates user behavior with support for login and authentication flavors. 

LoadUILoadUI is a Open Source Load Testing solution that is free and cross-platform. With a visual, drag-and-drop interface, it allows you to create, configure and redistribute your Load Tests interactively and in real-time. In a single test environment, LoadUI provides complete test coverage and supports all the standard protocols and technologies.

httperfHttperf is a tool for measuring web server performance. It provides a flexible facility for generating various HTTP workloads and for measuring server performance. The focus of httperf is not on implementing one particular benchmark but on providing a robust, high-performance tool that facilitates the construction of both micro- and macro-level benchmarks

SiegeSiege is an http load testing and benchmarking utility. It was designed to let web developers measure their code under duress, to see how it will stand up to load on the internet. Siege supports basic authentication, cookies, HTTP and HTTPS protocols. It lets its user hit a web server with a configurable number of simulated web browsers. 

TsungTsung can be used to stress HTTP, WebDAV, SOAP, PostgreSQL, MySQL, LDAP and Jabber/XMPP servers. Tsung is a free software released under the GPLv2 license. The purpose of Tsung is to simulate users in order to test the scalability and performance of IP based client/server applications. You can use it to do load and stress testing of your servers. Many protocols have been implemented and tested, and it can be easily extended. 

GrinderThe Grinder is a JavaTM load testing framework that makes it easy to run a distributed test using many load injector machines. It is freely available under a BSD-style open-source license.

openLoadOpenWebLoad is a tool for load testing web applications. It aims to be easy to use and providing near real-time performance measurements of the application under test. This is particulary useful when you are doing optimization as you can see the impact of your changes almost immediately. 

FunkLoadFunkLoad is an open source functional and load Web tester whose main use cases are functional testing of Web projects (and thus regression testing as well), performance testing, load testing (such as volume testing or longevity testing), and stress testing.