Version of dependencies to Spring Cloud projects in one microservice network - spring

Question regarding correct set up of microservice infrastructure with Spring Cloud projects. Let's assume there are service discovery, Gateway, config service and some custom service. All of them have dependecy to Spring Cloud projects of version Camden.
And it is necessary to upgrade one of them (let say Gateway) to version Edware.
Should the rest of microservice also be upgraded to version Edware or can safety stay with Camden?

By looking at release notes of Edgware.SR3, seems like there are couple of fixes in config but thing to notice is Eureka is moved to 1.7.2
Not sure which Camden release you are on but supposedly, if you are on Camden.SR7 and planning to migrate to Edgware.M1, there are many releases in between which you have to keep track of and changes that occured in between.
You can find the release dates & sequence here
Other than that, there are no more changes so far(atleast not in the release document) that could affect your discussed architecture.
Best bet would be to try and test.

Related

Opentelemetry agent vs spring cloud sleuth

I’m looking for some distributed tracing technologies for our spring boot services, in the internet, I see we have 2 popular choices I.e opentelemetry agent and spring cloud sleuth.
I see both of the them have good integration support, I’m confused to which one to go for, please give me some suggestions
As of today, you can find the following announcement on the Sleuth's Spring page:
Spring Cloud Sleuth’s last minor version is 3.1. You can check the 3.1.x branch for the latest commits. The core of this project got moved to Micrometer Tracing project and the instrumentations will be moved to Micrometer and all respective projects (no longer all instrumentations will be done in a single repository).
Additionally, sleuth is not playing nicely when trying to integrate tracing with other java-but-not-spring-exclusive libraries. To afford any such implementation you would need to configure Sleuth to use the open-telemetry tracer.
Thus, my advice would be to go for open-telemetry, unless you have an exclusive reason not to do that.
As for my current approach, I was introducing otel into an established project that is due for a Spring Boot 3 migration next year. I thus opted to use non-sleuth Spring otel libraries to avoid coupling with Sleuth in this short period.
I am not sure if that's a good approach, but with a lack of proper Spring 2 -> 3 migration, this way will not be a blocker until you can migrate other deps over

Why is Spring-Cloud-GCP no longer part of the Spring Cloud release train?

Why is Spring-Cloud-GCP no longer part of the Spring Cloud release train while the AWS one is?
Neither is part of the Spring Cloud release train anymore. See: https://spring.io/blog/2019/07/24/simplifying-the-spring-cloud-release-train

Spring Cloud Data Flow Server for OpenShift

Need to setup Spring Cloud Data Flow Server on Openshift. Is there any reference or official docker image that can be used?
The Spring-team do not officially build, maintain, or release the SCDF implementation for Openshift; however, we have a community implementation developed by ABSA in South Africa.
More details about the implementation here.
Just checking if SCDF is now officially supported on OpenShift since its been over one year since your last comment above.. we are planning to use SCDF in our project and OpenShift is one of the deployment options in front of us. But if SCDF is still not officially supported then we have to reevaluate our options. Can you please confirm.

spring cloud three releases difference Angel, Brixton and Camden

I see there are three product lines on spring cloud. I am a newer of spring cloud and want to add to my project, which product line should I use?
Take a look at the versions of dependencies towards the bottom of the Spring Cloud project page.
You'll want to use the most current version for the most part since they are all marked GA, but also make sure they are compatible with whatever else you are using in your project.
So for example if you are using Spring Boot 1.2 then go with Angel, 1.3 then Brixton, 1.4+ then Camden is probably your best bet. Even then you can always get things working by resolving dependency conflicts yourself.
If its a brand new project, just go with Camden and call it a day.

Does Spring Boot support Hot Deployments in Production environments?

Can we do Hot deployments (updating running code) in Spring Boot applications running outside the IDE.
I see that "spring-boot-devtools" is mainly used when developers work through code changes in their IDE but, am looking for hot deployments in Stage or Production environments.
This 'Hot Deployment' feature was shown as one of the highlight in OSGi when compared with Spring Boot based Microservices. Hence am trying to clarify if such a facility is offered by Spring Boot.

Resources