JMeter vs Locust – what should I use to load-test my application in the cloud

  • On March 30, 2018

Introduction

 

Cloud computing refers to delivery of computing services by cloud providers over the internet. These services include but not limited to servers, storage, databases, software. Users of cloud computing are ideally charged a fee for the services provided.
Uses of cloud computing
Some areas that one can use cloud computing include emailing services, editing documents online, streaming movies, listening t music, gaming.  The first cloud computing services are barely 10 years old, a number of organizations and individuals are taking on the technology for all manner of reasons.One of the cloud computing services is AWS which was ranked as a leader by Gartner for 7 years running.Azure owned by Microsoft comes close as they compete in the market.

Load balancing generally applies to the resourceful distribution of inward bound network traffic across a group of servers, also known as a server pool.

Functions of load balancer:

  • Provide client requirements or network load efficiently and effectively across numerous servers
  • Ensures high accessibility and consistency by sending commands only to servers that are online
  • Ensures the flexibility to add or subtract servers as demand commands

APACHE JMETER
Apache JMeter is used to assess performance both on static and vibrant resources, Web dynamic applications.  It can be used to imitate a heavy load on a server, group of servers, network or object to test its potency or to analyze overall performance under diverse load types.

Advantages of using JMeter
Open Source
: it is free to download and 100% java application. The user is at liberty to customize and modify it to suit the required needs. One can also add on to make a better JMeter

Ease of Use: Easy to install, just download, install and run. It comes preinstalled with default settings and does not require the user to have specific skills or knowledge to use

Compatibility: Having been developed in Java language it is compatible with all OS systems such as Windows, Mac, Linux

Vigorous Reporting: It generates comprehensive reports, making use of tools such as graphs, charts, tree view. In addition it supports different formats such as text, XML,HTML,and JSON

Definitive Testing: With JMeter, the user can do any kind of testing they want. Load Test, Stress Test, Practical Test, and dissemination Test, all in one tool.

Flexibility: The user can customize and modify JMeter to suit requirements and apply the automation to JMeter

Multi-practice Support: JMeter supports several protocols like HTTP, FTP, SOAP, JDBC, JMS, and LDAP. In addition, it can be used for verifying and testing the capabilities of the users’ database.

Flaws of using JMeter
Memory consumption:  JMeter can be used for heavy loads, this results in a very high consumption of memory and may lead to voluminous storage usage. Thus the users may be subjected to purchase further storage space

Web use only:  JMeter is a good tool for testing and working online but it is not a suitable tool for testing offline application.

Inefficient support for JavaScript: JMeter isn’t a browser, therefore it cannot run JavaScript in the web application. It has limited prop up for processing JavaScript or Ajax, this may affect the meticulousness of model.

LOCUST
Locust Storage is creating a new class of online storage that provides necessary breakthroughs in terms of price/performance, capability, and system aptitude.

 

Advantages of locust storage

It computes customer cost savings from a capital, operational and scale-out standpoint. Locust Storage grows fast and is cost-effective, additionally, it consumes less electrical power than other systems.

Self-setting and self-rectifying design evidently reduce maintenance costs. Locust disk, do not need manual cooling and are smart-grid ready.

Usability: Compatible with both Mac’s and PCs. This allows users to move files between the online and -line.
Bandwidth:  As opposed to emailing individuals directly it provides the possibility of sending links to recipients via email.
Ease of access: Saved files can be accessed from everyplace via an Internet connection.

Disaster mending: In the event of emergencies it provides a backup plan which comes in handy for businesses as well as individuals by providing a second copy of important files. The documents are stored in an isolated location and can be retrieved via an internet connection.

Cost Savings: Businesses, organizations, and individuals can often reduce yearly operating costs by using these online services; cloud storage costs are fairly affordable and convenient for storage and accessibility especially where many people need access to the information. Users can see other cost savings because it does not entail the in-house power to store information.

Disadvantages of Locust Storage

Usability: The drag/drop attribute can easily move documents permanently if one is not careful, for example from the original location to online location. It is recommended to do a copy /pate if the user wants to preserve the document’s original location in addition to moving a replica onto the cloud storage folder.

Bandwidth: Usually has a specific bandwidth size. If an organization or individual exceeds the given allowance, further charges could be incurred. However, some providers consent to limitless bandwidth. This is a factor that companies and other users ought to think about when sourcing cloud storage supplier.

Accessibility: It is bound solely on internet connectivity.

Data protection: Data cannot be 100% secure, issues of privacy still arise. The likelihood of private data being shared with other organizations or unauthorized individuals still makes some businesses uneasy.

Software:  In the event that the user required to access the information stored on multiple gadgets, he/she is obliged to download the application on all gadgets
JMeter and Locust Comparison Table

Take a look at this comparison table of JMeter and Locust features and abilities:

JMeter Locust
Operating System Any Any
Open Source Yes Yes
GUI Yes, with non-GUI mode available No
Execution Monitoring Console
File
Graphs
Desktop client
Custom plugins
Console
Web
Support of “Test as Code” Weak (Java) Strong (Python)
In-built Protocols Support HTTP
FTP
JDBC
SOAP
LDAP
TCP
JMS
SMTP
POP3
IMAP
HTTP
Integrated Host Monitoring  PerfMon No
Recording Functionality Yes No
Distributed Execution Yes Yes
Easy to use with VCS No Yes
Resources Consumption  More resources required Less resources required
Number of Concurrent Users Thousands, under restrictions Thousands
Ramp-up Flexibility Yes No
Test Results Analyzing Yes Yes

 

CONCLUSION

JMeter has been around for over 20 years; initially, its major use was load testing of Web and FTP applications.

Locust which is written in python has widely grown and spread in usage in the last 5 years. The main feature is that it allows one to write in python. In addition to its “test as code” attribute, Locust is extremely useful due to its fully event-based execution. Due to these highlighted points, Locust has a wide and fast-growing community, who keep growing daily.

 

 

There is no better tool between JMeter and Locust but if one prefers to use coding over UI tests creation and is strong with python they should choose Locust. Otherwise one may choose JMeter.

If one is not experienced in performance tests creation then a good option to start with is JMeter since it automatically directs one to the options you have in order to achieve testing goals.it just requires some few steps like navigating through the menu and you get the idea which configuration can be added using inbuilt configuration elements, the timeouts used to make script pauses .On the other hand, Locust offers only documentation and code examples based on Python expertise that will enable one to implement required load script.