SQL Serverデータベースを使用してキャッシュされたオブジェクトを格納するカスタマイズされたキャッシュソリューションを開発しています。アプリケーションのホスティング環境はmemcachedやappファブリックなどの「メモリ内」キャッシュを提供しないため、SQL Serverデータベースを使用する必要があります。シリアル化されたオブジェクトをSQL Serverデータベースに格納するために使用するシリアル化形式
キャッシュされたオブジェクトのほとんどは単純な型(int、string、datesなど)ですが、DataSet
、DataTable
、ジェネリックコレクション、カスタムクラスなどのより複雑な型も格納する必要があります。
私は.NETのネイティブなシリアライゼーションとデシリアライズの経験はほとんどありませんが、オブジェクトをある種のフォーム(バイナリ、XML、JSONなど)にシリアル化してデータベースに格納し、私たちはそれをデータベースから取り出します。私は、「何らかの形」が何であるべきかについて専門家の意見を持っていたいと思います。
JSON.NETを使用して、さまざまなAJAXリクエストに対してJSONにデータをシリアル化しています。私の最初の考えは、キャッシュされたデータをJSONにシリアル化してデータベースに格納することでした。しかし、パフォーマンスとデータの完全性のために何が最善であろうといくつかの意見を出したいと思っていました。
ASP.NETには[組み込みのキャッシュサポート](http://msdn.microsoft.com/en-us/library/xsbfdd8c(v=vs.100).aspx)があります。あなたはそれを試しましたか? – Andomar
@Andomar - サイトが存在するホスティング環境では、負荷分散のためのラウンドロビンタイプの構成を使用し、ホストはAppFabricをサポートしていないか、あらゆる種類のメモリキャッシュを提供しています。状況は多かれ少なかれ、私たちが持っているものを最大限活用するという点で、開発者とホスティング環境との対比です。 –