Link to home
Start Free TrialLog in
Avatar of Joseph Jean pierre
Joseph Jean pierreFlag for India

asked on

Best open source tools to performance tune front end and back end application in java technology

I need to performance tune front end application running in node js ,d3 js , html , javascript , css with express server and  with back end in war file  done in sbt deployed on tomcat using spark scala mongdb hive kafka mysql hadoop. Let me know the best tools to monitor and performance tune the app for speed , good response etc., Thank you in advance.
Avatar of Noah
Noah
Flag of Singapore image

Hi there! :)

I think something which might suit your needs is the "Apache JMeter application". You may refer to the link below for more information. Otherwise, your solution should look similar or provide similar functions also capable in "Apache JMeter application".

The Apache JMeter application is open source software. It is a pure Java application designed to load test an application and measure its performance.

Reference: https://jmeter.apache.org/
You're talking about many technologies + there's only ever one performance bottleneck disk i/o + usually only write i/o as read i/o normally comes from file buffers managed in Kernel memory or database buffers managed by the database daemon, like MariaDB/MySQL.

So performance tuning occurs like this.

1) Database design must be done by someone who understands how to design high speed, scalable database systems.

2) If system is swapping (check top), add memory till swapping stops.

3) If MariaDB/MySQL requires more memory or tuning (use mysqltuner), then add more memory + roll in tuning suggested by mysqltuner.

4) If you aren't using database replication, disable replication completely (normally a huge speed increase).

5) If you have UPS units attached to your machine hardware, tune MariaDB/MySQL to use aggressive caching.

6) Enable logging of missing indexes + slow queries, then fix all reported problems.

Tip: Tech like Javascript runs at memory speed. Databases performance throttles by disk writes. The other questions your asking, like hadoop have completely different answers. Best to open one question/technology where you have a question, then provide an example of your code + specific slow down you're trying to fix.

Tip: Using complex tech like MariaDB/MySQL/HADoop require correct initial design. When data structures related to these are designed poorly, performance will circle the drain quickly + the only real fix is a redesign. Best focus on correct design in the beginning.
Hi,

You can try Monit https://mmonit.com/
Here is the documentation https://mmonit.com/documentation/
Client side :
Chrome Dev Tools to get performance, especially the "Perfomance tab" :
https://developers.google.com/web/tools/chrome-devtools/rendering-tools/

Server side :
Sematex which is Open Source.
https://sematext.com/blog/nodejs-open-source-monitoring-tools/

If you deploy your NodeJS application on Heroku, they provide a lot of interesting add-ons :
https://elements.heroku.com/addons (click on Monitoring and also on Metrics and Analytics links on the left menu)
This question needs an answer!
Become an EE member today
7 DAY FREE TRIAL
Members can start a 7-Day Free trial then enjoy unlimited access to the platform.
View membership options
or
Learn why we charge membership fees
We get it - no one likes a content blocker. Take one extra minute and find out why we block content.