golang 动态更新kafka metadata (sarama)

 

1. 从截图中可以看到当方法调用的顺序

NewClient --> *client.backgroundMetadataUpdater --> *client.refreshMetadata --> *client.RefreshMetadata

--> *client.tryFreshMetada --> *client.updateMetadata

golang 动态更新kafka metadata (sarama)

 

2. 从以下代码中可以看到定义了一个定时器(NewTicker) 去刷新Metadata,  刷新间隔的时间根据client.conf.Metadata.RefreshFrequency来决定

golang 动态更新kafka metadata (sarama)