Commit Graph

224 Commits

Author SHA1 Message Date
Olga MaciaszekSharma
abd6d178d0 Fix docs. Reformat. Fixes gh-1001. 2021-09-08 15:47:43 +02:00
huayaoyue6
d99a7a40c3 Fix property value
fix out of date property "spring.cloud.loadbalancer.repeat-health-check" to "spring.cloud.loadbalancer.health-check.repeat-health-check"
2021-09-08 15:38:15 +02:00
Tiffany
b41d197c78 Update spring-cloud-commons.adoc (#991) 2021-07-27 11:26:29 +02:00
Patrick Baumgartner
2a03867363 Fixing spring.cloud.loadbalancer.repeat-health-check boolean (#970) 2021-07-05 13:53:22 +02:00
Olga MaciaszekSharma
2e0db8e21e Add info on Request-based load-balancing support limitations. 2021-06-18 17:30:16 +02:00
buildmaster
6ed50fcbc7 Bumping versions 2021-04-28 08:46:28 +00:00
Olga MaciaszekSharma
dfe956ecb3 Merge remote-tracking branch 'origin/2.2.x' into main 2021-04-26 19:02:51 +02:00
Olga MaciaszekSharma
b56e755d0d Revert "Switch to GH actions."
This reverts commit 04ef589ad2.
2021-04-26 18:57:22 +02:00
Olga MaciaszekSharma
747fa53499 Merge remote-tracking branch 'origin/2.2.x' into main 2021-04-26 18:14:43 +02:00
Olga MaciaszekSharma
04ef589ad2 Switch to GH actions. 2021-04-26 18:05:26 +02:00
Olga MaciaszekSharma
172ef7fc04 Switch from master to main. 2021-04-26 17:56:48 +02:00
Ryan Baxter
2341cf6ffc Fixing broken documentation links 2021-04-21 17:18:11 -04:00
Olga Maciaszek-Sharma
ac7e8f922b Allow disabling load-balancing with property. (#940) 2021-04-01 16:42:34 +02:00
buildmaster
0c0aa00e2d Bumping versions 2021-03-16 16:05:38 +00:00
Olga MaciaszekSharma
cf21ea8a65 Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/_configprops.adoc
2021-03-15 20:04:44 +01:00
Olga MaciaszekSharma
9551cfb5c2 Add note on not using @Configuration with @LoadBalancerClient. Regenerate configprops. Fixes gh-922. 2021-03-15 20:03:05 +01:00
buildmaster
a375f9fa91 Bumping versions 2021-03-13 16:05:46 +00:00
spencergibb
9301e7e88c Merge branch '2.2.x' 2021-03-12 14:30:35 -05:00
bono007
ee2a6f168f Add probe method to DiscoveryClient (#789)
Add probe method to DiscoveryClient and optionally use in DiscoveryClientHealthIndicator.

Fixes gh-785

Co-authored-by: Spencer Gibb <sgibb@pivotal.io>
2021-03-12 14:24:37 -05:00
Olga MaciaszekSharma
5c0bc097fa Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/spring-cloud-commons.adoc
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/LoadBalancerAutoConfiguration.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/ExchangeFilterFunctionUtils.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/ReactorLoadBalancerClientAutoConfiguration.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/ReactorLoadBalancerExchangeFilterFunction.java
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/RetryableLoadBalancerExchangeFilterFunction.java
#	spring-cloud-commons/src/test/java/org/springframework/cloud/client/loadbalancer/reactive/RetryableLoadBalancerExchangeFilterFunctionIntegrationTests.java
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/config/BlockingLoadBalancerClientAutoConfiguration.java
2021-03-12 14:49:19 +01:00
Toshiaki Maki
eddaaac5cb Add LoadBalancerClientRequestTransformer to 2.2.x (#925) 2021-03-12 13:30:32 +01:00
Olga Maciaszek-Sharma
272365490a Add hint-based instance filtering (#923) 2021-03-12 12:55:44 +01:00
buildmaster
acdb17c3a7 Bumping versions 2021-03-09 16:05:30 +00:00
Olga Maciaszek-Sharma
d583addb37 Add service instance cookie mechanism for blocking load-balanced requests. (#918) 2021-03-09 10:14:30 +01:00
Ryan Baxter
5716143d64 Merge remote-tracking branch 'origin/2.2.x' 2021-02-22 13:48:23 -05:00
Ryan Baxter
d55b09b598 Adding the need for management.endpoint.env.post.enabled=true to the docs 2021-02-22 13:45:04 -05:00
buildmaster
c8d0e7f13d Going back to snapshots 2021-02-11 13:11:52 +00:00
buildmaster
d74cd35533 Update SNAPSHOT to 2.2.7.RELEASE 2021-02-11 13:09:01 +00:00
Olga Maciaszek-Sharma
5bfd4610de Backport retryable lb exchange filter function (#902) 2021-02-11 12:11:52 +01:00
Olga Maciaszek-Sharma
a3486e2d93 Fix property value. Fixes gh-875. 2021-01-07 11:55:29 +01:00
Olga Maciaszek-Sharma
c6bfc2d827 Merge remote-tracking branch 'origin/master' 2020-12-18 17:58:35 +01:00
Olga Maciaszek-Sharma
8125db910a Add missing LB properties to configuration-metadata. 2020-12-18 17:58:20 +01:00
Olga Maciaszek-Sharma
a40258394a Lb micrometer stats (#871)
* Add stats lifecycle bean. Add onStartRequest method to LoadBalancerLifecycle. Add loadbalancer.Request field to CompletionContext.

* Add TimedRequestContext interface. Make RetryableRequestContext extend RequestDataContext. Improve generating metrics. Add utility class for working with tags. Ensure tags are not null.

* Add separate meters depending on CompletionContext.Status.

* Modify registered metrics. Add adapter for BlockingLoadBalancerClient requests. Add autoconfiguration.

* Make new config conditional on MeterRegistry class.

* Rename lifecycle bean. Do not log request if 0 timestamp.

* Fix onStartRequest call arguments for BlockingLoadBalancerClient.

* Fix onStartRequest and onComplete calls for RetryLoadBalancerInterceptor.

* Only register timed request once. Add tests.

* Adjust tags logic. Add more tests.

* Add more tests.

* Refactor. Add javadocs.

* Refactor.

* Refactor.

* Retrieve client response data if possible in BlockingLoadBalancerClient.

* Refactor.

* Fix docs after review.

* Make previousServiceInstanceMutable.

* Change argument order for CompletionContext constructors. Remove duplicated start time setting.
2020-12-18 17:46:53 +01:00
Marcin Grzejszczak
1f0f750707 Moves classes from spring-cloud-security to spring-cloud-commons 2020-12-18 17:21:10 +01:00
Olga Maciaszek-Sharma
c04e4a2aed Merge remote-tracking branch 'origin/2.2.x' 2020-12-11 17:34:41 +01:00
Olga Maciaszek-Sharma
65201f8f61 Add RandomLoadBalancer, along with tests and docs. (#868)
# Conflicts:
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/RoundRobinLoadBalancer.java
2020-12-11 17:33:42 +01:00
Olga Maciaszek-Sharma
ddd370c57d Add function-based health check. Add restTemplate-based health-check beans to default config (#866)
* Switch to a function-based HealthCheckServiceInstanceListSupplier.

* Handle exception for restTemplate based function. Add default blocking health-check configuration.

* Add docs.
2020-12-11 17:20:57 +01:00
Olga Maciaszek-Sharma
8739f8c233 Fix adding cookies. Update docs. 2020-12-09 20:02:11 +01:00
Olga Maciaszek-Sharma
0f98419c47 Request based sticky session (#860)
* Implement first draft for sticky-session load-balancing.

* Make setting instance cookie opt-in.

* Add tests.

* Make adding request cookie opt-in.

* Add docs and javadocs.

* Add default configuration with blocking discovery client.

* Fix docs after review.
2020-12-07 13:08:06 +01:00
Olga Maciaszek-Sharma
2a1a50848f Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/spring-cloud-commons.adoc
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/annotation/LoadBalancerClientConfiguration.java
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/RoundRobinLoadBalancer.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/core/LoadBalancerTests.java
2020-12-04 18:57:33 +01:00
Olga Maciaszek-Sharma
843cb79649 Support same service instance preference (#862)
* Draft initial implementation.

* Rename default configuration property. Check previously chosen instance for equality.

* Verify previous service instance for null. Add tests.

* Add docs.

* Add javadocs.

* Fix javadocs after review.
2020-12-04 18:18:10 +01:00
Olga Maciaszek-Sharma
c65dfbca6b Merge remote-tracking branch 'origin/2.2.x'
# Conflicts:
#	docs/src/main/asciidoc/_configprops.adoc
#	spring-cloud-commons/src/main/java/org/springframework/cloud/client/loadbalancer/reactive/LoadBalancerProperties.java
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/core/HealthCheckServiceInstanceListSupplier.java
#	spring-cloud-loadbalancer/src/test/java/org/springframework/cloud/loadbalancer/core/HealthCheckServiceInstanceListSupplierTests.java
2020-12-01 11:31:55 +01:00
Olga Maciaszek-Sharma
cbedae2e82 Allow refetching instances for healthcheck (#855)
* Allow refetching instances by HealthCheckServiceInstanceListSupplier.

* Add docs and javadocs.

* Fix docs after review.
2020-12-01 11:14:14 +01:00
buildmaster
48d315fa5b Bumping versions 2020-11-19 16:05:15 +00:00
buildmaster
97189b4142 Bumping versions 2020-11-16 16:05:02 +00:00
Olga Maciaszek-Sharma
7f23cb852f Add Reactive retries for SC LoadBalancer (#847)
* Implement retry logic.

* Fix retrying on next instance when RetryExhausted in same instance.

* Fix retrying on next instance when RetryExhausted in same instance.

* Fix retrying on next instance when RetryExhausted in same instance.

* Move duplicated methods to utility class. Fix checkstyle.

* Fix test.

* Add more tests.

* Fix test.

* Add autoConfiguration.

* Refactor and add javadocs.

* Add javadocs.

* Use RetryAwareServiceInstanceListSupplier with reactive retries.

* Update properties.

* Fix the docs.

* Rename utility class.

* Verify interactions in order.
2020-11-12 11:49:33 +01:00
buildmaster
439c966bb8 Going back to snapshots 2020-11-09 09:32:25 +00:00
buildmaster
30bf7336c9 Update SNAPSHOT to 2.2.6.RELEASE 2020-11-09 09:26:11 +00:00
buildmaster
a09abe00a4 Bumping versions 2020-10-12 16:04:56 +00:00
Olga Maciaszek-Sharma
25c17082ee Avoid retrying on same instance (#834)
* cherry-pick switching to properties

* Pass information on previous ServiceInstance to RequestContext.

# Conflicts:
#	spring-cloud-loadbalancer/src/main/java/org/springframework/cloud/loadbalancer/blocking/retry/BlockingLoadBalancedRetryPolicy.java

* Add a RoundRobinLoadBalancer implementation that avoids same service instance while retrying.

* Wrap instances in ArrayList. Add tests.

* Enable AvoidPreviousInstanceRoundRobinLoadBalancer by default if SpringRetry on classpath.

* Fix failing tests. Add javadocs and author tags.

* Fix properties.

* Add documentation.

* Fix docs after review.

* Fix docs after review.

* Handle avoiding previous instance with ServiceInstanceListSupplier in place of LoadBalancer.

* Fix property name.

* Change spelling.
2020-09-29 19:36:54 +02:00