-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Description
[version]
nacos-sdk = { version = "0.5.2", features = ["default"] }
[question]
现象:nacos客户端实现了NamingEventListener,在使用过程中发现,注册到nacos-server的服务实例,在下线后,NamingEventListener 至少要1-2分钟才能收到事件。
诉求: 有没有好的方式,能尽快收到服务实例变更的事件。
备注: 从nacos-sdk日志的日志中nacos_sdk::naming::observable::service_info_observable 是很快(大概几秒)就收到变更事件。但是看了源代码发现是外部crate调用不了,只能nacos-sdk内部调用
[log]
2026-03-17 15:02:11.275 INFO nacos_sdk::naming::handler::naming_push_request_handler: 38: receive NotifySubscriberRequest from nacos server: NotifySubscriberRequest { service_info: ServiceInfo { name: "pile-cloud-order", group_name: "DEFAULT_GROUP", clusters: "", cache_millis: 10000, last_ref_time: 1773730931274, checksum: "", all_ips: Some(false), all_ips_3x: None, reach_protection_threshold: false, hosts: Some([]) }, headers: {}, request_id: Some("38"), namespace: Some("pile-cloud"), service_name: Some("pile-cloud-order"), group_name: Some("DEFAULT_GROUP") }
2026-03-17 15:02:11.276 WARN emit: nacos_sdk::naming::observable::service_info_observable: 201: empty or error push: ServiceInfo { name: "pile-cloud-order", group_name: "DEFAULT_GROUP", clusters: "", cache_millis: 10000, last_ref_time: 1773730931274, checksum: "", all_ips: Some(false), all_ips_3x: None, reach_protection_threshold: false, hosts: Some([]) }
rror push: ServiceInfo { name: "pile-cloud-order", group_name: "DEFAULT_GROUP", clusters: "pile-cloud", cache_millis: 10000, last_ref_time: 1773730967350, checksum: "", all_ips: Some(false), all_ips_3x: None, reach_protection_threshold: false, hosts: Some([]) }
2026-03-17 15:03:00.463 INFO nacos_sdk::naming::handler::naming_push_request_handler: 38: receive NotifySubscriberRequest from nacos server: NotifySubscriberRequest { service_info: ServiceInfo { name: "pile-cloud-order", group_na
me: "DEFAULT_GROUP", clusters: "", cache_millis: 10000, last_ref_time: 1773730980461, checksum: "", all_ips: Some(false), all_ips_3x: None, reach_protection_threshold: false, hosts: Some([ServiceInstance { instance_id: Some("192.1
68.91.1#6334"), ip: "192.168.91.1", port: 6334, weight: 1.0, healthy: true, enabled: true, ephemeral: true, cluster_name: Some("pile-cloud"), service_name: Some("DEFAULT_GROUP@@pile-cloud-order"), metadata: {} }]) }, headers: {}, request_id: Some("39"), namespace: Some("pile-cloud"), service_name: Some("pile-cloud-order"), group_name: Some("DEFAULT_GROUP") }
2026-03-17 15:03:00.463 INFO emit: nacos_sdk::naming::observable::service_info_observable: 303: new ips(1) service: DEFAULT_GROUP@@pile-cloud-order -> [{"instanceId":"192.168.91.1#6334","ip":"192.168.91.1","port":6334,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"pile-cloud","serviceName":"DEFAULT_GROUP@@pile-cloud-order","metadata":{}}]
2026-03-17 15:03:00.464 INFO emit: nacos_sdk::naming::observable::service_info_observable: 314: removed ips(1) service: DEFAULT_GROUP@@pile-cloud-order -> [{"instanceId":"192.168.91.1#7705","ip":"192.168.91.1","port":7705,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"pile-cloud","serviceName":"DEFAULT_GROUP@@pile-cloud-order","metadata":{}}]
2026-03-17 15:03:00.464 INFO emit: nacos_sdk::naming::observable::service_info_observable: 215: current ips:(1) service: DEFAULT_GROUP@@pile-cloud-order -> [{"instanceId":"192.168.91.1#6334","ip":"192.168.91.1","port":6334,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"pile-cloud","serviceName":"DEFAULT_GROUP@@pile-cloud-order","metadata":{}}]
2026-03-17 15:03:00.465 WARN nacos_sdk::naming::observable::service_info_observable: 79: the key "DEFAULT_GROUP@@pile-cloud-order" is not subscribed.
service: DEFAULT_GROUP@@pile-cloud-order@@pile-cloud -> [{"instanceId":"192.168.91.1#6334","ip":"192.168.91.1","port":6334,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"pile-cloud","serviceName":"DEFAULT_GROUP@@pile-cloud-order","metadata":{}}]
2026-03-17 15:03:47.415 INFO subscribe{client_id="naming:localhost:8848:pile-cloud:1"}:schedule_update{group_name="DEFAULT_GROUP" cluster="pile-cloud"}:emit: nacos_sdk::naming::observable::service_info_observable: 314: removed ip
s(1) service: DEFAULT_GROUP@@pile-cloud-order@@pile-cloud -> [{"instanceId":"192.168.91.1#7705","ip":"192.168.91.1","port":7705,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"pile-cloud","serviceName":"DEFAULT_GROUP@@pile-cloud-order","metadata":{}}]
2026-03-17 15:03:47.416 INFO subscribe{client_id="naming:localhost:8848:pile-cloud:1"}:schedule_update{group_name="DEFAULT_GROUP" cluster="pile-cloud"}:emit: nacos_sdk::naming::observable::service_info_observable: 215: current ip
s:(1) service: DEFAULT_GROUP@@pile-cloud-order@@pile-cloud -> [{"instanceId":"192.168.91.1#6334","ip":"192.168.91.1","port":6334,"weight":1.0,"healthy":true,"enabled":true,"ephemeral":true,"clusterName":"pile-cloud","serviceName":"DEFAULT_GROUP@@pile-cloud-order","metadata":{}}]
2026-03-17 15:03:47.416 INFO nacos_sdk::naming::observable::service_info_observable: 100: notify listener: "DEFAULT_GROUP@@pile-cloud-order@@pile-cloud", notify data: NamingChangeEvent { service_name: "pile-cloud-order", group_na
me: "DEFAULT_GROUP", clusters: "pile-cloud", instances: Some([ServiceInstance { instance_id: Some("192.168.91.1#6334"), ip: "192.168.91.1", port: 6334, weight: 1.0, healthy: true, enabled: true, ephemeral: true, cluster_name: Some("pile-cloud"), service_name: Some("DEFAULT_GROUP@@pile-cloud-order"), metadata: {} }]) }
2026-03-17 15:03:47.416 WARN subscribe{client_id="naming:localhost:8848:pile-cloud:1"}:schedule_update{group_name="DEFAULT_GROUP" cluster="pile-cloud"}:emit: common::load_balance: 39: [服务变更]:内容:Some([ServiceInstance { insta
nce_id: Some("192.168.91.1#6334"), ip: "192.168.91.1", port: 6334, weight: 1.0, healthy: true, enabled: true, ephemeral: true, cluster_name: Some("pile-cloud"), service_name: Some("DEFAULT_GROUP@@pile-cloud-order"), metadata: {} }])>>Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels