0

在我最近的项目中。我应该在 Java 应用程序和 Php 应用程序之间共享 memcached 中的一些数据对象。使用 Protobuf 处理序列化/反序列化过程。

但是当我在Java应用程序中将Protobuf的Data对象序列化写入Memcached时,Php应用程序使用Memcached->get()获取缓存的Data对象,然后使用PB4PHP反序列化Data对象。发生错误,是 Memcached->get() 反序列化错误。像这样:

Memcached->get() 无法反序列化数据。

我认为 Php memcached 库的方法 Memcached->get() 有一个默认的序列化过程。所以他们不能反序列化 Protobuf 字节流。

有谁知道如何使它工作。

4

1 回答 1

0

php和java中对象的存储方式是不同的。尝试使用 JSON 或 XML 等常见格式存储它们,而不是简单的序列化。在获取时,再次将其转换为 Java 或 PHP。我会建议使用 JSON。

于 2012-08-13T09:00:56.797 回答