PHP前端开发

Hyperf配置中心使用Etcd时,String类型配置无法获取的原因是什么?

百变鹏仔 1个月前 (12-15) #PHP
文章标签 原因

hyperf 配置中心配合 etcd 使用时无法获取 string 类型配置

在 hyperf 配置中心中,通过 etcd 驱动同步配置时,用户遇到了数值类型配置可以正常获取,但 string 类型配置却无法获取的问题。

经排查源码发现,hyperf 中的 etcd 驱动默认使用 json 作为数据格式进行序列化和反序列化。因此,string 类型配置需要以 json 格式存储在 etcd 中才能被正确获取。

例如,对于以下 string 类型配置:

/hb/app/mode = fast

需要将其存储为:

/hb/app/mode = "{"value":"fast"}"

通过使用 json 格式存储 string 类型配置,hyperf 的 etcd 驱动可以正确反序列化并提供给用户。