Designing High Performance Web Architectures

Performance is not optional

Application performance is a critical factor in the success of a project, and a major indicator of software quality. It is even one of the essential criteria that determine user satisfaction. Despite this, performance is often addressed after completion of developments or when incidents arise – in which case the costs required to resolve discrepancies are thereby multiplied!

In addition, performance is often equated only with response times. We treat performance in a more general way: instead of just reducing response times, we seek to optimize the capacity of a system.

At leanovia, performance is taken into account in the design of the application to ensure capacity both initial and future (scalability), as well as resilience or fault tolerance (high availability).

Capacity of a system is:

  • the maximum sustainable throughput,
  • for a given workload,
  • while maintaining acceptable response times.
“Release It” (Michael Nygard)

LEANOVIA’s expertise

We can help you define the high capacity / high performance architecture of your next application by implementing best practices for design and development.

Our approach will first allow you to sustain the expected load, then scale out without impacting your users, and at the same time be able to modify your application while minimizing risks through proper management of technical debt.

We address all aspects of designing a web application, end-to-end:

 

Physical architecture: infrastructure design, clustering,

 

Software Architecture: decoupling components, asynchronous messaging,

 

Development: frameworks and libraries, reactive programming styles, implementation and optimization of ORM,

 

Front-end: optimization of static content (javascript, css, images) and network usage, caching.

Our consultants, all certified in Spring and Scrum, will accompany you in defining the architecture and developing your high performance website.