昨夜、Web アプリが停止し、白い画面がユーザーに返されました。根本的なケースを見つけるのにそれほど時間はかかりませんでした:PHP
メモリが不足していました。
JMS Serializer
問題を追跡した後、シリアル化ループの処理に失敗したと結論付けました。
オブジェクト(リスト)ProductGroup
の数を持つクラスがあります。Product
ここで、それぞれProduct
が所属するグループを指します。そのため、ユーザーが serialize を試みるとProductGroup
、それが実行され、(シリアル化されたばかりの)Product
にジャンプして戻ると、それぞれがシリアルProductGroup
化され、効果的にシリアル化ループが作成されます。
私はそれを修正することができましたが、プロパティを付け@Exclude
ましProduct::group
た。
ですから、問題は次のとおりです。シリアル化に関して別のオプションはありますか? JMS Serializer
ループを理解できない可能性はありますか?