0

私は最近、自分のアーキテクチャをテストするためのWebページ(http://www.srtbox.com/ )を開発しました。詳細については、こちらをご覧ください。DBホスティング用のNoRM、MongoLab、またはMongoHQを使用。そして、私はNoRMで多くのエラーを抱えています。すべてNorm.BSON.BsonDeserializerクラスを使用します。1つ修正できましたが、接続でエラーが発生しました。エラー:

System.Net.Sockets.SocketException接続されたパーティが一定期間後に適切に応答しなかったために接続の試行が失敗したか、接続されたホストが応答しなかったために接続の確立に失敗しました

System.IO.IOException:トランスポート接続からデータを読み取れません:接続されたパーティが一定期間後に適切に応答しなかったために接続の試行が失敗したか、接続されたホストが応答しなかったために確立された接続が失敗しました。---> System.Net.Sockets.SocketException:接続されたパーティが一定期間後に適切に応答しなかったために接続の試行が失敗したか、接続されたホストがSystem.Net.Sockets.NetworkStreamで応答できなかったために接続の確立に失敗しました。 Read(Byte [] buffer、Int32 offset、Int32 size)---内部例外スタックトレースの終わり--- System.Net.Sockets.NetworkStream.Read(Byte [] buffer、Int32 offset、Int32 size)で。 Norm.BSON.BsonDeserializerのSystem.IO.BinaryReader.ReadBytes(Int32 count)のIO.BufferedStream.Read(Byte []配列、Int32オフセット、Int32カウント)。

真実は、このNoRMドライバーは本当に不安定に見えるということです...公式ドライバーはLinqサポートを提供しておらず、POCOオブジェクトを使用した1つの例は見つかりませんでした。誰かがNoSQLデータベースとasp.netで良い経験をしていますか?MongoDBのようにスケーラブルですか?RavenDBは良いオプションのようですが、MongoDBには、もちろん.Netがなくても、より多くのサクセスストーリーがあります。

したがって、大きな問題は、ASP.NetにどのNoSQLスケーラブルDBを推奨するかということです。サクセスストーリーはありますか?

PD:テストのために私のサイト( http://www.srtbox.com/ )にアクセスしていただければ幸いです。

4

1 に答える 1

1

これはネットワークエラーのように見えますが、ドライバの問題ではありません。データベースがローカルでない場合は、接続が不良であるか、ファイアウォールを正しく設定していなかった場合に、コードを変更するために別の方法で行うことができることはあまりありません。単一の接続を長時間開いたままにしようとすると、接続エラーが発生する可能性もあります。

利用可能なほとんどのNoSQLデータベースは.NETでうまく機能するため、.NETの互換性ではなく、機能要件に基づいて選択できます。ただし、SQLのように機能することや、多くの例があることを期待するべきではありません。それらのほとんどは主に他のプラットフォームで使用されており、クエリの実行方法がすべて異なるため、LINQが常に適切であるとは限りません。

また、POCOとはどういう意味ですか?シリアル化属性はクラスを複雑に見せることができますが、それらは単なる通常のオブジェクトであり、通常のORMから取得する遅延ロードされた自己更新オブジェクトではありません。

于 2011-06-24T02:27:41.260 に答える