These are chat archives for spring-cloud/spring-cloud

24th
Sep 2018
Knut Schleßelmann
@kschlesselmann
Sep 24 2018 05:13

@spencergibb With

dependencyManagement {
    imports {
        mavenBom ':spring-cloud-Dependencies:Finchley.SR1'
    }
}

I'm still stuck on Spring Boot 2.0.3

Dieter Hubau
@Turbots
Sep 24 2018 06:45
@reliveyy have a look at the https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/web/servlet/i18n/AcceptHeaderLocaleResolver.html
it also fetches the Locale from the accept-language header so I think that is a good way of doing it
CH4:D
@chad_d_stud_twitter
Sep 24 2018 08:11
what’s the best practice for updating multiple redundant services in a eureka cluster? do you guys update one at a time or upgrade the entire set of services?
Knut Schleßelmann
@kschlesselmann
Sep 24 2018 08:19
@spencergibb Nevermind … you've included an upper case Dependencies … gradle didn't resovle the deps. Now everything is allright! :-)
Marcos Barbero
@marcosbarbero
Sep 24 2018 10:56
@chad_d_stud_twitter well, the answer for that question will always be it depends
You can do both, either one by one or the whole thing, the real question here is can you guarantee a zero downtime when you pick the second?
One use case I'd before was with a service that had a legal business rule attached to it where once it was changed all of its instances had to be deployed at once avoiding different rules applied at the same time. In this particular case I couldn't use a one by one approach but everything at one time.
And again, the answer is it depends on your use case (as usual :smile: )
CH4:D
@chad_d_stud_twitter
Sep 24 2018 10:57
is there a way to automate the former?
like on an ECS cluster in aws
gradually update each instance to prevent interruption
my manager is under the belief that i need a queue to hold all incoming connections while the services are being updated. he doesn’t understand the concept of the service registry’s HA feature
if multiple instances are accomodating those requests, we don’t have to worry about down times as each instance is being replaced
Marcos Barbero
@marcosbarbero
Sep 24 2018 11:09
you can achieve that by implementing a circuit breaker pattern, or retry policy, the idea of implementing a queue is not completely wrong but you should be building an async/event driven API
CH4:D
@chad_d_stud_twitter
Sep 24 2018 13:15
i’m all for event driven communication but maintaining an MQ system is a little to much for me to maintain on top of a cluster of services.
async is the way to go but i understand there are no async rdbms drivers at the moment especially with mysql/mariadb
we’re not investing too much on it though since NoSQL is further down the road
Marcos Barbero
@marcosbarbero
Sep 24 2018 13:50
Having a full asynchronous API has its tradeoffs, it always depends on the use case
The database communication can be solved with different approaches other than directly depending on the rdbms to be asynchronous and it usually means you should rely on a queue, streamer or such