4

CXF を使用して複数の Web サービスを公開しているサーバーがあります。
XML シリアライゼーションには JAXB を使用します。
JAXB コンテキストには約 3000 個のクラスがあり、60 MB のメモリが必要ですが、これは私の環境には多すぎます。
Web サービス / XML シリアライゼーションを提供する軽量の代替手段はありますか? (他の実装)
フラグ com.sun.xml.bind.v2.runtime.JAXBContextImpl.fastBoot を使用してみましたが、メモリ使用量は大幅に変わりませんでした。
* システム全体に対して 1 つのコンテキストを既に保持しています

4

2 に答える 2

2

CXF は、XMLBeans、Aegis などの JAXB 以外のデータバインディングをサポートしています。データバインディングの交換は非常に簡単です。各データ バインディングを試して、どのバインディングが最も少ない量のメモリを消費するかを確認できます。

私の実験では、記憶はまったく問題になりませんでした。私はスループットにもっと関心がありました。XMLBeans は、要求と応答のマーシャリングとアンマーシャリングに関しては、JAXB よりもはるかに高速です。

于 2012-10-16T05:19:54.857 に答える
0

ここに同様の問題について話しているスレッドがあります。彼らは人気のあるシリアル化についていくつかの分析を行ったようです。

複雑なJavaオブジェクトをすばやくシリアル化/逆シリアル化する方法

于 2012-10-16T04:28:50.803 に答える