How to set up load balance?

197 views
Skip to first unread message

Jack OE

unread,
Dec 21, 2023, 8:09:13 AM12/21/23
to DSpace Technical Support
Hi all,

I discovered on this page that Shannon Searle mentioned Cambridge has set up load balance for their servers:

"Shannon Searle:

Cambridge had some issues with slow connectors - they have a large self-hosted repository. They have a separate Angular interface for staff/students and another for public, a separate solr server and two backend tomcat servers with a round-robin  load balance"

How did they achieve load balance and how would I go about setting it up?

Any help is appreciated
Thanks

Jack

Agustina Martinez-Garcia

unread,
Dec 21, 2023, 10:13:05 AM12/21/23
to DSpace Technical Support
Hi Jack,

The information from the DCAT notes is not fully correct. This is the setup that we have:

- We have 3 frontend VMs, and load balancing is achieved through HAProxy
- We have a single VM for the backend (single tomcat)
- A separate VM for Solr

I hope that clarifies.

Best,
Agustina

Alan Orth

unread,
Jan 9, 2024, 2:27:59 AM1/9/24
to Agustina Martinez-Garcia, DSpace Technical Support
Dear Augustina,

This sounds very interesting. We have a large self-hosted repository with many users as well, and I'm thinking that we will need to do something similar in the future. I would love to hear more about your setup. In particular, how does load balancing handle authenticated users? I'm thinking through this now... maybe it's not an issue because Angular itself doesn't care about the session per se. Only the backend API and the client care about sessions.

Thanks,

--
All messages to this mailing list should adhere to the Code of Conduct: https://www.lyrasis.org/about/Pages/Code-of-Conduct.aspx
---
You received this message because you are subscribed to the Google Groups "DSpace Technical Support" group.
To unsubscribe from this group and stop receiving emails from it, send an email to dspace-tech...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/dspace-tech/3cb6f481-8192-430f-9eb9-85838c32e9e9n%40googlegroups.com.


--

Agustina Martinez-Garcia

unread,
Jan 9, 2024, 4:57:01 AM1/9/24
to Alan Orth, DSpace Technical Support

Hi Alan,

 

At the moment we haven’t had to use stick tables / sticky sessions to handle authentication. The way our front end load balancing works at the moment is by using IP redirection:

 

  • All external users are directed to a specific front end
  • We have another one for internal users only, e.g. our teams processing submissions
  • We have a list of whitelisted bots that are all directed to a third front end instance

 

Our limitation is now mostly with the backend, as we only have one at present, and we occasionally experience performance issues under very heavy traffic, but it is mostly OK.

 

We would love to investigate next how to achieve load balancing with multiple backend, but that one I guess becomes much trickier so I would love hear from other that have experience with it, or thoughts about it.

 

Best,

Agustina

Reply all
Reply to author
Forward
0 new messages