• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Performance requirement

 
Greenhorn
Posts: 7
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Hello everybody,

In my assignment I have as requirement for performance: "99 percent of all messages to be constructed and sent in three seconds
or less to the IP address of the API server".

How can I tackle this?

One way to improve performance is through cache. So , I was thinking to propose Coherence as L2 cache and Oracle TopLink Grid  between the EclipseLink JPA and Coherence.

Does it sounds good for you? It's not over-killing?

Another question regarding this requirement: If I give a specific H/W profile how can I prove that it will fulfill the performance requirement from above? Also over-sizing is bad.

Any advice is welcome. Thank you.

Stephan
 
Sheriff
Posts: 5555
326
IntelliJ IDE Python Java Linux
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

"99 percent of all messages to be constructed and sent in three seconds or less to the IP address of the API server"


There's a critical piece of information missing from this requirement. How many messages is "all messages"? Then what happens to the other 1%? Must they be sent later? Or can they be dropped?

Have you done any performance analysis on the current implementation of the system to determine where the bottleneck is? Or even if it fails the requirement at all?

Until you know exactly where the problem lies then you are not in a position to propose any solution.
 
Bartender
Posts: 3648
16
Android Mac OS X Firefox Browser Java
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator

Stefan Nicol wrote:
"99 percent of all messages to be constructed and sent in three seconds or less to the IP address of the API server".



Since it's an assignment, not real life project. Yet 3s requirement is reasonable, given you only mentioned outbound (one way).

Is caching a possible solution? Sure why not. But if I were you caching is not a very good solution. Hint: network and data

Stefan Nicol wrote:
If I give a specific H/W profile how can I prove that it will fulfill the performance requirement from above?



You don't whatever profile you say is just an estimate, even in real life when buying servers. Of course your app/DB server may need more CPU and RAM while web server minimal. It is the entire architecture or should I say infrastructure that determine whether the performance will be met. Remember servers/resources can be scalable.
 
reply
    Bookmark Topic Watch Topic
  • New Topic