0

RailsアプリとSinatraアプリの間で少しのデータを共有しようとしています。このデータは、Railsアプリによって生成され、memcachedに保存されます。Sinatraアプリは、ユーザーがリクエストしたときにmemcachedサーバーにアクセスしてデータを取得できるようになります。

私の問題は、シナトラの端に来るデータは、通常、わずかに文字化けしたほとんどのオブジェクトの文字列であるということです。たとえば、次のようになります。

IN:{"data" => "data"}

OUT: "I" {"data" "data"}:EG "

Railsでデータを保存および取得しても、問題はありません。Sinatraでデータを保存および取得する場合、問題はありません。ハッシュ、ActiveRecordオブジェクト、配列、YAMLシリアル化オブジェクト、マーシャルシリアル化オブジェクトを保存および取得しようとしました。2つのアプリケーション間では何も機能しません。

両方のアプリケーションでデフォルトのgemmemcacheを使用しています。このgemはMarshalを使用して、memcachedサーバーに挿入されるすべてのデータをシリアル化するため、何らかの形で関連している可能性があると思います。

他に何かを見る必要がある場合は、他に何が役立つかわかりません。解決策、問題のデバッグの支援、または関連するmemcachedエクスペリエンスなど、アドバイスをいただければ幸いです。ありがとう。

4

0 に答える 0