Browse Source

refactor: refine worker pool config and doc

worker pool is a buffer pool
the description hinted connection pool which is wrong.
Zaiming (Stone) Shi 3 years ago
parent
commit
479e191dcf

+ 15 - 12
apps/emqx_resource/i18n/emqx_resource_schema_i18n.conf

@@ -24,12 +24,13 @@ emqx_resource_schema {
 
   worker_pool_size {
     desc {
-      en: """Resource worker pool size."""
-      zh: """资源连接池大小。"""
+      en: """The number of buffer workers. Only applicable for egress type bridges.
+For bridges only have ingress direction data flow, it can be set to 0 otherwise must be greater than 0."""
+      zh: """缓存队列 worker 数量。仅对 egress 类型的桥接有意义。当桥接仅有 ingress 方向时,可设置为 0,否则必须大于 0)。"""
     }
     label {
-      en: """Worker Pool Size"""
-      zh: """资源连接池大小"""
+      en: """Buffer Pool Size"""
+      zh: """缓存池大小"""
     }
   }
 
@@ -101,12 +102,14 @@ emqx_resource_schema {
 
   enable_queue {
     desc {
-      en: """Queue mode enabled."""
-      zh: """启用队列模式。"""
+      en: """Enable disk buffer queue (only applicable for egress bridges).
+When Enabled, messages will be buffered on disk when the bridge connection is down.
+When disabled the messages are buffered in RAM only."""
+      zh: """启用磁盘缓存队列(仅对 egress 方向桥接有用)。"""
     }
     label {
-      en: """Enable queue"""
-      zh: """启用队列模式"""
+      en: """Enable disk buffer queue"""
+      zh: """启用磁盘缓存队列"""
     }
   }
 
@@ -145,12 +148,12 @@ emqx_resource_schema {
 
   max_queue_bytes {
     desc {
-      en: """Maximum queue storage."""
-      zh: """消息队列的最大长度。"""
+      en: """Maximum number of bytes to buffer for each buffer worker."""
+      zh: """每个缓存 worker 允许使用的最大字节数。"""
     }
     label {
-      en: """Queue max bytes"""
-      zh: """队列最大长度"""
+      en: """Max buffer queue size"""
+      zh: """缓存队列最大长度"""
     }
   }
 

+ 3 - 3
apps/emqx_resource/include/emqx_resource.hrl

@@ -43,15 +43,15 @@
 }.
 -type resource_group() :: binary().
 -type creation_opts() :: #{
-    %%======================================= Deprecated Opts:
+    %%======================================= Deprecated Opts BEGIN
     %% use health_check_interval instead
     health_check_timeout => integer(),
     %% use start_timeout instead
     wait_for_resource_ready => integer(),
     %% use auto_restart_interval instead
     auto_retry_interval => integer(),
-    %%======================================= Deprecated Opts End
-    worker_pool_size => pos_integer(),
+    %%======================================= Deprecated Opts END
+    worker_pool_size => non_neg_integer(),
     %% use `integer()` compatibility to release 5.0.0 bpapi
     health_check_interval => integer(),
     %% We can choose to block the return of emqx_resource:start until

+ 1 - 1
apps/emqx_resource/src/schema/emqx_resource_schema.erl

@@ -56,7 +56,7 @@ fields("creation_opts") ->
         {max_queue_bytes, fun max_queue_bytes/1}
     ].
 
-worker_pool_size(type) -> pos_integer();
+worker_pool_size(type) -> non_neg_integer();
 worker_pool_size(desc) -> ?DESC("worker_pool_size");
 worker_pool_size(default) -> ?WORKER_POOL_SIZE;
 worker_pool_size(required) -> false;