From d040f3202d40808e187d7d36521e391cb4d49f54 Mon Sep 17 00:00:00 2001 From: watermelo <80680489@qq.com> Date: Wed, 3 Jun 2020 13:22:01 +0800 Subject: [PATCH 1/3] Add: add comments for cluster directory --- cluster/cluster.go | 3 ++- cluster/cluster_impl/available_cluster.go | 4 +++- cluster/cluster_impl/available_cluster_invoker.go | 2 +- cluster/cluster_impl/broadcast_cluster.go | 5 ++++- cluster/cluster_impl/failback_cluster.go | 5 ++++- cluster/cluster_impl/failfast_cluster.go | 5 ++++- cluster/cluster_impl/failover_cluster.go | 6 +++++- cluster/cluster_impl/failsafe_cluster.go | 4 +++- cluster/cluster_impl/forking_cluster.go | 5 ++++- cluster/cluster_impl/mock_cluster.go | 6 +++++- cluster/cluster_impl/registry_aware_cluster.go | 2 +- cluster/loadbalance/consistent_hash.go | 2 ++ cluster/loadbalance/least_active.go | 5 +++-- cluster/loadbalance/random.go | 4 +++- cluster/loadbalance/round_robin.go | 4 +++- cluster/loadbalance/util.go | 2 +- 16 files changed, 48 insertions(+), 16 deletions(-) diff --git a/cluster/cluster.go b/cluster/cluster.go index 617ce5ebf0..7713a7bb90 100644 --- a/cluster/cluster.go +++ b/cluster/cluster.go @@ -21,7 +21,8 @@ import ( "github.com/apache/dubbo-go/protocol" ) -// Cluster ... +// Cluster +//Extension - Cluster type Cluster interface { Join(Directory) protocol.Invoker } diff --git a/cluster/cluster_impl/available_cluster.go b/cluster/cluster_impl/available_cluster.go index e041d91edb..9c40b47ea2 100644 --- a/cluster/cluster_impl/available_cluster.go +++ b/cluster/cluster_impl/available_cluster.go @@ -31,7 +31,9 @@ func init() { extension.SetCluster(available, NewAvailableCluster) } -// NewAvailableCluster ... +// NewAvailableCluster returns cluster instance +// +// Obtain available service providers func NewAvailableCluster() cluster.Cluster { return &availableCluster{} } diff --git a/cluster/cluster_impl/available_cluster_invoker.go b/cluster/cluster_impl/available_cluster_invoker.go index e69f8b9f47..bb13805568 100644 --- a/cluster/cluster_impl/available_cluster_invoker.go +++ b/cluster/cluster_impl/available_cluster_invoker.go @@ -35,7 +35,7 @@ type availableClusterInvoker struct { baseClusterInvoker } -// NewAvailableClusterInvoker ... +// NewAvailableClusterInvoker returns cluster invoker instance func NewAvailableClusterInvoker(directory cluster.Directory) protocol.Invoker { return &availableClusterInvoker{ baseClusterInvoker: newBaseClusterInvoker(directory), diff --git a/cluster/cluster_impl/broadcast_cluster.go b/cluster/cluster_impl/broadcast_cluster.go index a1692e96c5..581151f616 100644 --- a/cluster/cluster_impl/broadcast_cluster.go +++ b/cluster/cluster_impl/broadcast_cluster.go @@ -31,7 +31,10 @@ func init() { extension.SetCluster(broadcast, NewBroadcastCluster) } -// NewBroadcastCluster ... +// NewBroadcastCluster returns broadcast cluster instance +// +// Calling all providers broadcast, one by one call, any error is reported. +// It is usually used to notify all providers to update local resource information such as caches or logs. func NewBroadcastCluster() cluster.Cluster { return &broadcastCluster{} } diff --git a/cluster/cluster_impl/failback_cluster.go b/cluster/cluster_impl/failback_cluster.go index 7657357168..ebad70c84b 100644 --- a/cluster/cluster_impl/failback_cluster.go +++ b/cluster/cluster_impl/failback_cluster.go @@ -31,7 +31,10 @@ func init() { extension.SetCluster(failback, NewFailbackCluster) } -// NewFailbackCluster ... +// NewFailbackCluster returns failback cluster instance +// +// Failure automatically restored, failed to record the background request, +// regular retransmission. Usually used for message notification operations. func NewFailbackCluster() cluster.Cluster { return &failbackCluster{} } diff --git a/cluster/cluster_impl/failfast_cluster.go b/cluster/cluster_impl/failfast_cluster.go index 1e85485f71..8d8177b7c7 100644 --- a/cluster/cluster_impl/failfast_cluster.go +++ b/cluster/cluster_impl/failfast_cluster.go @@ -31,7 +31,10 @@ func init() { extension.SetCluster(failfast, NewFailFastCluster) } -// NewFailFastCluster ... +// NewFailFastCluster returns failfast cluster instance +// +// Fast failure, only made a call, failure immediately error. Usually used for non-idempotent write operations, +// such as adding records. func NewFailFastCluster() cluster.Cluster { return &failfastCluster{} } diff --git a/cluster/cluster_impl/failover_cluster.go b/cluster/cluster_impl/failover_cluster.go index b16be3bafd..6c32a8c256 100644 --- a/cluster/cluster_impl/failover_cluster.go +++ b/cluster/cluster_impl/failover_cluster.go @@ -31,7 +31,11 @@ func init() { extension.SetCluster(name, NewFailoverCluster) } -// NewFailoverCluster ... +// NewFailoverCluster returns failover cluster instance +// +// Failure automatically switch, when there is failure, +// retry the other server (default). Usually used for read operations, +// but retries can result in longer delays. func NewFailoverCluster() cluster.Cluster { return &failoverCluster{} } diff --git a/cluster/cluster_impl/failsafe_cluster.go b/cluster/cluster_impl/failsafe_cluster.go index 177d24a585..e88690f0ae 100644 --- a/cluster/cluster_impl/failsafe_cluster.go +++ b/cluster/cluster_impl/failsafe_cluster.go @@ -31,7 +31,9 @@ func init() { extension.SetCluster(failsafe, NewFailsafeCluster) } -// NewFailsafeCluster ... +// NewFailsafeCluster returns failsafe cluster instance +// +// Failure of security, anomalies, directly ignored. Usually used to write audit logs and other operations. func NewFailsafeCluster() cluster.Cluster { return &failsafeCluster{} } diff --git a/cluster/cluster_impl/forking_cluster.go b/cluster/cluster_impl/forking_cluster.go index a6f7a7b454..720f8d1187 100644 --- a/cluster/cluster_impl/forking_cluster.go +++ b/cluster/cluster_impl/forking_cluster.go @@ -31,7 +31,10 @@ func init() { extension.SetCluster(forking, NewForkingCluster) } -// NewForkingCluster ... +// NewForkingCluster returns forking cluster instance +// +// Multiple servers are invoked in parallel, returning as soon as one succeeds. +// Usually used for real-time demanding read operations, but need to waste more service resources. func NewForkingCluster() cluster.Cluster { return &forkingCluster{} } diff --git a/cluster/cluster_impl/mock_cluster.go b/cluster/cluster_impl/mock_cluster.go index 943c2add68..6ad75cf1bc 100644 --- a/cluster/cluster_impl/mock_cluster.go +++ b/cluster/cluster_impl/mock_cluster.go @@ -24,7 +24,11 @@ import ( type mockCluster struct{} -// NewMockCluster ... +// NewMockCluster returns mock cluster instance +// +// Mock cluster is usually used for service degradation, such as an authentication service. +// When the service provider is completely hung up, the client does not throw an exception, +// but returns the authorization failure through the Mock data. func NewMockCluster() cluster.Cluster { return &mockCluster{} } diff --git a/cluster/cluster_impl/registry_aware_cluster.go b/cluster/cluster_impl/registry_aware_cluster.go index 079b688da6..58618951ac 100644 --- a/cluster/cluster_impl/registry_aware_cluster.go +++ b/cluster/cluster_impl/registry_aware_cluster.go @@ -29,7 +29,7 @@ func init() { extension.SetCluster("registryAware", NewRegistryAwareCluster) } -// NewRegistryAwareCluster ... +// NewRegistryAwareCluster returns registry aware cluster instance func NewRegistryAwareCluster() cluster.Cluster { return ®istryAwareCluster{} } diff --git a/cluster/loadbalance/consistent_hash.go b/cluster/loadbalance/consistent_hash.go index 492434431f..84fbb268c7 100644 --- a/cluster/loadbalance/consistent_hash.go +++ b/cluster/loadbalance/consistent_hash.go @@ -60,6 +60,8 @@ type ConsistentHashLoadBalance struct { } // NewConsistentHashLoadBalance creates NewConsistentHashLoadBalance +// +// The same parameters of the request is always sent to the same provider. func NewConsistentHashLoadBalance() cluster.LoadBalance { return &ConsistentHashLoadBalance{} } diff --git a/cluster/loadbalance/least_active.go b/cluster/loadbalance/least_active.go index e7c41aac93..7eff05bd1c 100644 --- a/cluster/loadbalance/least_active.go +++ b/cluster/loadbalance/least_active.go @@ -28,7 +28,6 @@ import ( ) const ( - // LeastActive ... LeastActive = "leastactive" ) @@ -39,7 +38,9 @@ func init() { type leastActiveLoadBalance struct { } -// NewLeastActiveLoadBalance ... +// NewLeastActiveLoadBalance returns least active load balance +// +// A random mechanism based on actives, actives means the num of requests a consumer have sent but not return yet func NewLeastActiveLoadBalance() cluster.LoadBalance { return &leastActiveLoadBalance{} } diff --git a/cluster/loadbalance/random.go b/cluster/loadbalance/random.go index 56f13631b6..d5a8471e80 100644 --- a/cluster/loadbalance/random.go +++ b/cluster/loadbalance/random.go @@ -38,7 +38,9 @@ func init() { type randomLoadBalance struct { } -// NewRandomLoadBalance ... +// NewRandomLoadBalance returns random load balance instance +// +// Set random probabilities by weight, the request sent to provider is random func NewRandomLoadBalance() cluster.LoadBalance { return &randomLoadBalance{} } diff --git a/cluster/loadbalance/round_robin.go b/cluster/loadbalance/round_robin.go index 4d03999967..587e059b37 100644 --- a/cluster/loadbalance/round_robin.go +++ b/cluster/loadbalance/round_robin.go @@ -52,7 +52,9 @@ func init() { type roundRobinLoadBalance struct{} -// NewRoundRobinLoadBalance ... +// NewRoundRobinLoadBalance returns round robin load balance +// +// Use the weight's common advisory to determine round robin ratio func NewRoundRobinLoadBalance() cluster.LoadBalance { return &roundRobinLoadBalance{} } diff --git a/cluster/loadbalance/util.go b/cluster/loadbalance/util.go index 9f36ad9379..b6c013852b 100644 --- a/cluster/loadbalance/util.go +++ b/cluster/loadbalance/util.go @@ -26,7 +26,7 @@ import ( "github.com/apache/dubbo-go/protocol" ) -// GetWeight ... +// GetWeight gets weight for load balance strategy func GetWeight(invoker protocol.Invoker, invocation protocol.Invocation) int64 { url := invoker.GetUrl() weight := url.GetMethodParamInt64(invocation.MethodName(), constant.WEIGHT_KEY, constant.DEFAULT_WEIGHT) From 5ee57b118655a2075d3ec1cb4d2eb4439b71723b Mon Sep 17 00:00:00 2001 From: watermelo <80680489@qq.com> Date: Thu, 4 Jun 2020 00:33:46 +0800 Subject: [PATCH 2/3] Mod: update cluster comments after review --- cluster/cluster.go | 2 +- cluster/cluster_impl/available_cluster.go | 2 +- cluster/cluster_impl/broadcast_cluster.go | 4 ++-- cluster/cluster_impl/failback_cluster.go | 2 +- cluster/cluster_impl/failfast_cluster.go | 2 +- cluster/cluster_impl/failover_cluster.go | 2 +- cluster/cluster_impl/failsafe_cluster.go | 5 +++-- cluster/cluster_impl/forking_cluster.go | 4 ++-- cluster/cluster_impl/mock_cluster.go | 4 ++-- cluster/cluster_impl/registry_aware_cluster.go | 2 +- cluster/directory.go | 2 +- cluster/loadbalance.go | 2 +- cluster/loadbalance/least_active.go | 5 +++-- cluster/loadbalance/random.go | 4 ++-- 14 files changed, 22 insertions(+), 20 deletions(-) diff --git a/cluster/cluster.go b/cluster/cluster.go index 7713a7bb90..7a0df4c0a2 100644 --- a/cluster/cluster.go +++ b/cluster/cluster.go @@ -22,7 +22,7 @@ import ( ) // Cluster -//Extension - Cluster +// Extension - Cluster type Cluster interface { Join(Directory) protocol.Invoker } diff --git a/cluster/cluster_impl/available_cluster.go b/cluster/cluster_impl/available_cluster.go index 9c40b47ea2..b70a97fad2 100644 --- a/cluster/cluster_impl/available_cluster.go +++ b/cluster/cluster_impl/available_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(available, NewAvailableCluster) } -// NewAvailableCluster returns cluster instance +// NewAvailableCluster returns a cluster instance // // Obtain available service providers func NewAvailableCluster() cluster.Cluster { diff --git a/cluster/cluster_impl/broadcast_cluster.go b/cluster/cluster_impl/broadcast_cluster.go index 581151f616..ba454af6a8 100644 --- a/cluster/cluster_impl/broadcast_cluster.go +++ b/cluster/cluster_impl/broadcast_cluster.go @@ -31,9 +31,9 @@ func init() { extension.SetCluster(broadcast, NewBroadcastCluster) } -// NewBroadcastCluster returns broadcast cluster instance +// NewBroadcastCluster returns a broadcast cluster instance. // -// Calling all providers broadcast, one by one call, any error is reported. +// Calling all providers' broadcast one by one. All errors will be reported. // It is usually used to notify all providers to update local resource information such as caches or logs. func NewBroadcastCluster() cluster.Cluster { return &broadcastCluster{} diff --git a/cluster/cluster_impl/failback_cluster.go b/cluster/cluster_impl/failback_cluster.go index ebad70c84b..432e33122c 100644 --- a/cluster/cluster_impl/failback_cluster.go +++ b/cluster/cluster_impl/failback_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(failback, NewFailbackCluster) } -// NewFailbackCluster returns failback cluster instance +// NewFailbackCluster returns a failback cluster instance // // Failure automatically restored, failed to record the background request, // regular retransmission. Usually used for message notification operations. diff --git a/cluster/cluster_impl/failfast_cluster.go b/cluster/cluster_impl/failfast_cluster.go index 8d8177b7c7..ac9ec6b821 100644 --- a/cluster/cluster_impl/failfast_cluster.go +++ b/cluster/cluster_impl/failfast_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(failfast, NewFailFastCluster) } -// NewFailFastCluster returns failfast cluster instance +// NewFailFastCluster returns a failfast cluster instance. // // Fast failure, only made a call, failure immediately error. Usually used for non-idempotent write operations, // such as adding records. diff --git a/cluster/cluster_impl/failover_cluster.go b/cluster/cluster_impl/failover_cluster.go index 6c32a8c256..9c30c025b8 100644 --- a/cluster/cluster_impl/failover_cluster.go +++ b/cluster/cluster_impl/failover_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(name, NewFailoverCluster) } -// NewFailoverCluster returns failover cluster instance +// NewFailoverCluster returns a failover cluster instance // // Failure automatically switch, when there is failure, // retry the other server (default). Usually used for read operations, diff --git a/cluster/cluster_impl/failsafe_cluster.go b/cluster/cluster_impl/failsafe_cluster.go index e88690f0ae..f708b7fb91 100644 --- a/cluster/cluster_impl/failsafe_cluster.go +++ b/cluster/cluster_impl/failsafe_cluster.go @@ -31,9 +31,10 @@ func init() { extension.SetCluster(failsafe, NewFailsafeCluster) } -// NewFailsafeCluster returns failsafe cluster instance +// NewFailsafeCluster returns a failsafe cluster instance. // -// Failure of security, anomalies, directly ignored. Usually used to write audit logs and other operations. +// Failure of security, anomalies, directly ignored. Usually it is +// used to write audit logs and other operations. func NewFailsafeCluster() cluster.Cluster { return &failsafeCluster{} } diff --git a/cluster/cluster_impl/forking_cluster.go b/cluster/cluster_impl/forking_cluster.go index 720f8d1187..0e6cd26882 100644 --- a/cluster/cluster_impl/forking_cluster.go +++ b/cluster/cluster_impl/forking_cluster.go @@ -31,10 +31,10 @@ func init() { extension.SetCluster(forking, NewForkingCluster) } -// NewForkingCluster returns forking cluster instance +// NewForkingCluster returns a forking cluster instance. // // Multiple servers are invoked in parallel, returning as soon as one succeeds. -// Usually used for real-time demanding read operations, but need to waste more service resources. +// Usually it is used for real-time demanding read operations while wasting more service resources. func NewForkingCluster() cluster.Cluster { return &forkingCluster{} } diff --git a/cluster/cluster_impl/mock_cluster.go b/cluster/cluster_impl/mock_cluster.go index 6ad75cf1bc..d887cfb45b 100644 --- a/cluster/cluster_impl/mock_cluster.go +++ b/cluster/cluster_impl/mock_cluster.go @@ -24,11 +24,11 @@ import ( type mockCluster struct{} -// NewMockCluster returns mock cluster instance +// NewMockCluster returns a mock cluster instance. // // Mock cluster is usually used for service degradation, such as an authentication service. // When the service provider is completely hung up, the client does not throw an exception, -// but returns the authorization failure through the Mock data. +// return an authorization failure through the Mock data instead. func NewMockCluster() cluster.Cluster { return &mockCluster{} } diff --git a/cluster/cluster_impl/registry_aware_cluster.go b/cluster/cluster_impl/registry_aware_cluster.go index 58618951ac..fcefa52862 100644 --- a/cluster/cluster_impl/registry_aware_cluster.go +++ b/cluster/cluster_impl/registry_aware_cluster.go @@ -29,7 +29,7 @@ func init() { extension.SetCluster("registryAware", NewRegistryAwareCluster) } -// NewRegistryAwareCluster returns registry aware cluster instance +// NewRegistryAwareCluster returns a registry aware cluster instance func NewRegistryAwareCluster() cluster.Cluster { return ®istryAwareCluster{} } diff --git a/cluster/directory.go b/cluster/directory.go index 5a03b3a449..37f0c32829 100644 --- a/cluster/directory.go +++ b/cluster/directory.go @@ -23,7 +23,7 @@ import ( ) // Directory -//Extension - Directory +// Extension - Directory type Directory interface { common.Node List(invocation protocol.Invocation) []protocol.Invoker diff --git a/cluster/loadbalance.go b/cluster/loadbalance.go index fb3641a773..a5b344a495 100644 --- a/cluster/loadbalance.go +++ b/cluster/loadbalance.go @@ -22,7 +22,7 @@ import ( ) // LoadBalance -//Extension - LoadBalance +// Extension - LoadBalance type LoadBalance interface { Select([]protocol.Invoker, protocol.Invocation) protocol.Invoker } diff --git a/cluster/loadbalance/least_active.go b/cluster/loadbalance/least_active.go index 7eff05bd1c..37ad91c3ed 100644 --- a/cluster/loadbalance/least_active.go +++ b/cluster/loadbalance/least_active.go @@ -28,6 +28,7 @@ import ( ) const ( + // LeastActive is used to set the load balance extension LeastActive = "leastactive" ) @@ -38,9 +39,9 @@ func init() { type leastActiveLoadBalance struct { } -// NewLeastActiveLoadBalance returns least active load balance +// NewLeastActiveLoadBalance returns a least active load balance. // -// A random mechanism based on actives, actives means the num of requests a consumer have sent but not return yet +// A random mechanism based on actives, actives means the number of a consumer's requests have been sent to provider but not yet got response. func NewLeastActiveLoadBalance() cluster.LoadBalance { return &leastActiveLoadBalance{} } diff --git a/cluster/loadbalance/random.go b/cluster/loadbalance/random.go index d5a8471e80..cdde1b41fb 100644 --- a/cluster/loadbalance/random.go +++ b/cluster/loadbalance/random.go @@ -38,9 +38,9 @@ func init() { type randomLoadBalance struct { } -// NewRandomLoadBalance returns random load balance instance +// NewRandomLoadBalance returns a random load balance instance. // -// Set random probabilities by weight, the request sent to provider is random +// Set random probabilities by weight, and the request will be sent to provider randomly. func NewRandomLoadBalance() cluster.LoadBalance { return &randomLoadBalance{} } From 87c0373f6785fa7d0cba7ba76cf8e7549a470661 Mon Sep 17 00:00:00 2001 From: watermelo <80680489@qq.com> Date: Thu, 4 Jun 2020 00:33:46 +0800 Subject: [PATCH 3/3] Mod: update cluster comments after review --- cluster/cluster.go | 2 +- cluster/cluster_impl/available_cluster.go | 2 +- cluster/cluster_impl/available_cluster_invoker.go | 2 +- cluster/cluster_impl/broadcast_cluster.go | 4 ++-- cluster/cluster_impl/failback_cluster.go | 2 +- cluster/cluster_impl/failfast_cluster.go | 2 +- cluster/cluster_impl/failover_cluster.go | 4 ++-- cluster/cluster_impl/failsafe_cluster.go | 5 +++-- cluster/cluster_impl/forking_cluster.go | 4 ++-- cluster/cluster_impl/mock_cluster.go | 4 ++-- cluster/cluster_impl/registry_aware_cluster.go | 2 +- cluster/directory.go | 2 +- cluster/loadbalance.go | 2 +- cluster/loadbalance/least_active.go | 5 +++-- cluster/loadbalance/random.go | 4 ++-- cluster/loadbalance/round_robin.go | 2 +- 16 files changed, 25 insertions(+), 23 deletions(-) diff --git a/cluster/cluster.go b/cluster/cluster.go index 7713a7bb90..7a0df4c0a2 100644 --- a/cluster/cluster.go +++ b/cluster/cluster.go @@ -22,7 +22,7 @@ import ( ) // Cluster -//Extension - Cluster +// Extension - Cluster type Cluster interface { Join(Directory) protocol.Invoker } diff --git a/cluster/cluster_impl/available_cluster.go b/cluster/cluster_impl/available_cluster.go index 9c40b47ea2..b70a97fad2 100644 --- a/cluster/cluster_impl/available_cluster.go +++ b/cluster/cluster_impl/available_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(available, NewAvailableCluster) } -// NewAvailableCluster returns cluster instance +// NewAvailableCluster returns a cluster instance // // Obtain available service providers func NewAvailableCluster() cluster.Cluster { diff --git a/cluster/cluster_impl/available_cluster_invoker.go b/cluster/cluster_impl/available_cluster_invoker.go index bb13805568..39a892379d 100644 --- a/cluster/cluster_impl/available_cluster_invoker.go +++ b/cluster/cluster_impl/available_cluster_invoker.go @@ -35,7 +35,7 @@ type availableClusterInvoker struct { baseClusterInvoker } -// NewAvailableClusterInvoker returns cluster invoker instance +// NewAvailableClusterInvoker returns a cluster invoker instance func NewAvailableClusterInvoker(directory cluster.Directory) protocol.Invoker { return &availableClusterInvoker{ baseClusterInvoker: newBaseClusterInvoker(directory), diff --git a/cluster/cluster_impl/broadcast_cluster.go b/cluster/cluster_impl/broadcast_cluster.go index 581151f616..ba454af6a8 100644 --- a/cluster/cluster_impl/broadcast_cluster.go +++ b/cluster/cluster_impl/broadcast_cluster.go @@ -31,9 +31,9 @@ func init() { extension.SetCluster(broadcast, NewBroadcastCluster) } -// NewBroadcastCluster returns broadcast cluster instance +// NewBroadcastCluster returns a broadcast cluster instance. // -// Calling all providers broadcast, one by one call, any error is reported. +// Calling all providers' broadcast one by one. All errors will be reported. // It is usually used to notify all providers to update local resource information such as caches or logs. func NewBroadcastCluster() cluster.Cluster { return &broadcastCluster{} diff --git a/cluster/cluster_impl/failback_cluster.go b/cluster/cluster_impl/failback_cluster.go index ebad70c84b..432e33122c 100644 --- a/cluster/cluster_impl/failback_cluster.go +++ b/cluster/cluster_impl/failback_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(failback, NewFailbackCluster) } -// NewFailbackCluster returns failback cluster instance +// NewFailbackCluster returns a failback cluster instance // // Failure automatically restored, failed to record the background request, // regular retransmission. Usually used for message notification operations. diff --git a/cluster/cluster_impl/failfast_cluster.go b/cluster/cluster_impl/failfast_cluster.go index 8d8177b7c7..ac9ec6b821 100644 --- a/cluster/cluster_impl/failfast_cluster.go +++ b/cluster/cluster_impl/failfast_cluster.go @@ -31,7 +31,7 @@ func init() { extension.SetCluster(failfast, NewFailFastCluster) } -// NewFailFastCluster returns failfast cluster instance +// NewFailFastCluster returns a failfast cluster instance. // // Fast failure, only made a call, failure immediately error. Usually used for non-idempotent write operations, // such as adding records. diff --git a/cluster/cluster_impl/failover_cluster.go b/cluster/cluster_impl/failover_cluster.go index 6c32a8c256..d30a743e03 100644 --- a/cluster/cluster_impl/failover_cluster.go +++ b/cluster/cluster_impl/failover_cluster.go @@ -31,9 +31,9 @@ func init() { extension.SetCluster(name, NewFailoverCluster) } -// NewFailoverCluster returns failover cluster instance +// NewFailoverCluster returns a failover cluster instance // -// Failure automatically switch, when there is failure, +// Failure automatically switch, when there is a failure, // retry the other server (default). Usually used for read operations, // but retries can result in longer delays. func NewFailoverCluster() cluster.Cluster { diff --git a/cluster/cluster_impl/failsafe_cluster.go b/cluster/cluster_impl/failsafe_cluster.go index e88690f0ae..f708b7fb91 100644 --- a/cluster/cluster_impl/failsafe_cluster.go +++ b/cluster/cluster_impl/failsafe_cluster.go @@ -31,9 +31,10 @@ func init() { extension.SetCluster(failsafe, NewFailsafeCluster) } -// NewFailsafeCluster returns failsafe cluster instance +// NewFailsafeCluster returns a failsafe cluster instance. // -// Failure of security, anomalies, directly ignored. Usually used to write audit logs and other operations. +// Failure of security, anomalies, directly ignored. Usually it is +// used to write audit logs and other operations. func NewFailsafeCluster() cluster.Cluster { return &failsafeCluster{} } diff --git a/cluster/cluster_impl/forking_cluster.go b/cluster/cluster_impl/forking_cluster.go index 720f8d1187..0e6cd26882 100644 --- a/cluster/cluster_impl/forking_cluster.go +++ b/cluster/cluster_impl/forking_cluster.go @@ -31,10 +31,10 @@ func init() { extension.SetCluster(forking, NewForkingCluster) } -// NewForkingCluster returns forking cluster instance +// NewForkingCluster returns a forking cluster instance. // // Multiple servers are invoked in parallel, returning as soon as one succeeds. -// Usually used for real-time demanding read operations, but need to waste more service resources. +// Usually it is used for real-time demanding read operations while wasting more service resources. func NewForkingCluster() cluster.Cluster { return &forkingCluster{} } diff --git a/cluster/cluster_impl/mock_cluster.go b/cluster/cluster_impl/mock_cluster.go index 6ad75cf1bc..d887cfb45b 100644 --- a/cluster/cluster_impl/mock_cluster.go +++ b/cluster/cluster_impl/mock_cluster.go @@ -24,11 +24,11 @@ import ( type mockCluster struct{} -// NewMockCluster returns mock cluster instance +// NewMockCluster returns a mock cluster instance. // // Mock cluster is usually used for service degradation, such as an authentication service. // When the service provider is completely hung up, the client does not throw an exception, -// but returns the authorization failure through the Mock data. +// return an authorization failure through the Mock data instead. func NewMockCluster() cluster.Cluster { return &mockCluster{} } diff --git a/cluster/cluster_impl/registry_aware_cluster.go b/cluster/cluster_impl/registry_aware_cluster.go index 58618951ac..fcefa52862 100644 --- a/cluster/cluster_impl/registry_aware_cluster.go +++ b/cluster/cluster_impl/registry_aware_cluster.go @@ -29,7 +29,7 @@ func init() { extension.SetCluster("registryAware", NewRegistryAwareCluster) } -// NewRegistryAwareCluster returns registry aware cluster instance +// NewRegistryAwareCluster returns a registry aware cluster instance func NewRegistryAwareCluster() cluster.Cluster { return ®istryAwareCluster{} } diff --git a/cluster/directory.go b/cluster/directory.go index 5a03b3a449..37f0c32829 100644 --- a/cluster/directory.go +++ b/cluster/directory.go @@ -23,7 +23,7 @@ import ( ) // Directory -//Extension - Directory +// Extension - Directory type Directory interface { common.Node List(invocation protocol.Invocation) []protocol.Invoker diff --git a/cluster/loadbalance.go b/cluster/loadbalance.go index fb3641a773..a5b344a495 100644 --- a/cluster/loadbalance.go +++ b/cluster/loadbalance.go @@ -22,7 +22,7 @@ import ( ) // LoadBalance -//Extension - LoadBalance +// Extension - LoadBalance type LoadBalance interface { Select([]protocol.Invoker, protocol.Invocation) protocol.Invoker } diff --git a/cluster/loadbalance/least_active.go b/cluster/loadbalance/least_active.go index 7eff05bd1c..37ad91c3ed 100644 --- a/cluster/loadbalance/least_active.go +++ b/cluster/loadbalance/least_active.go @@ -28,6 +28,7 @@ import ( ) const ( + // LeastActive is used to set the load balance extension LeastActive = "leastactive" ) @@ -38,9 +39,9 @@ func init() { type leastActiveLoadBalance struct { } -// NewLeastActiveLoadBalance returns least active load balance +// NewLeastActiveLoadBalance returns a least active load balance. // -// A random mechanism based on actives, actives means the num of requests a consumer have sent but not return yet +// A random mechanism based on actives, actives means the number of a consumer's requests have been sent to provider but not yet got response. func NewLeastActiveLoadBalance() cluster.LoadBalance { return &leastActiveLoadBalance{} } diff --git a/cluster/loadbalance/random.go b/cluster/loadbalance/random.go index d5a8471e80..cdde1b41fb 100644 --- a/cluster/loadbalance/random.go +++ b/cluster/loadbalance/random.go @@ -38,9 +38,9 @@ func init() { type randomLoadBalance struct { } -// NewRandomLoadBalance returns random load balance instance +// NewRandomLoadBalance returns a random load balance instance. // -// Set random probabilities by weight, the request sent to provider is random +// Set random probabilities by weight, and the request will be sent to provider randomly. func NewRandomLoadBalance() cluster.LoadBalance { return &randomLoadBalance{} } diff --git a/cluster/loadbalance/round_robin.go b/cluster/loadbalance/round_robin.go index 587e059b37..c44b239dbc 100644 --- a/cluster/loadbalance/round_robin.go +++ b/cluster/loadbalance/round_robin.go @@ -52,7 +52,7 @@ func init() { type roundRobinLoadBalance struct{} -// NewRoundRobinLoadBalance returns round robin load balance +// NewRoundRobinLoadBalance returns a round robin load balance // // Use the weight's common advisory to determine round robin ratio func NewRoundRobinLoadBalance() cluster.LoadBalance {