Java application scaling - existing IoC cluster systems?

Most people use some kind of IoC framework - Guice, Spring, you name it. Many of us also need to scale our applications, so they make life difficult for them with Terracotta, Glassfish / JBoss / insertyourfavouritehere clusters.

But is this really the way to go? Do you use any of the above?

Here are some ideas that we have currently implemented in a structure that has not yet been created, and I would like to see what you think about it, or maybe "this is a complete XY rip!"

  • replication of cluster objects - give it a name and whenever you do something (in any node), it will be replicated on such an object - with various guarantees.
  • to make transparent soft-loadbalancing - the simplest scenario: the method of the soothing method webservice is proxied to another node
  • view-only node injection: enter the proxy into an object named "and" and automatically call your calls to node

Would you use something like that? Is there a current, stable, ready-to-run program there?

+4
source share
1 answer

FWIW I work for a company that makes very large-scale web applications, and we tend not to use this form of object caching.

In fact, we strive to make our life easier by not storing anything in the session, and we are not caching anything transactional and should be read in the current state. Thus, your application is quite simple, easy to reason about and very easy to scale horizontally.

I believe that the rationale for using these object caches is mainly to reduce the load on the persistence storage and possibly reduce the latency. My suggestion is to work on scaling this backend regardless of the relatively dumb webapp. Most large sites do this by reading replicas and data. Take a look here: http://highscalability.com/livejournal-architecture . I remember how long I looked at it, and it was quite interesting. It is also well suited for architecture, which, as I see it, is used on sites with high traffic.

+2
source

Source: https://habr.com/ru/post/1304311/


All Articles