java - How to improve the performance of Client-Server Architecture Application? -


We have a product built on client-server architecture.

  • Server - RMI
  • Java Database - Oracle
  • Customers are located on different parts of the world, but Java Server & amp; The Oracle database is located on the same machine in Sweden. Because of this there is a lot of network latency. Customers in remote locations have terrible performance. The application is used for processing files with more than 50 MB size. In general, more than 1000 network calls are required for each operation.

    Based on your experience, how do you deal with this problem and improve performance?

    EDIT: To answer some questions

    1. Files are not included in the data part to process and update actual business data .
    2. Some network calls can be batch but this will require key refactoring of code. This is a very old application that was written back in 2001. And the design of the application is such that the server keeps all the services and they are reusable throughout the code and the business logic is written on the client side. Therefore, this business logic calls the server several times and therefore the astronomical figure.

    -Snehal

    Reduce the number of round trips

    The journey of 1000 rounds for the same operation is a celestial shape. Any method you should not see those numbers.

    If you have problems with 50 MB files, in that case, you will either need to make the transfer more efficient (only need to transfer delta between two identical files?), Or any kind of caching Employ

    Van Traffic is killing your app, and it seems that you have major refactoring to do.


    Comments

    Popular posts from this blog

    python - Overriding the save method in Django ModelForm -

    html - CSS autoheight, but fit content to height of div -

    qt - How to prevent QAudioInput from automatically boosting the master volume to 100%? -