0

複数のユーザーとその要求を処理する必要がある Java アプリケーションを開発しています。ユーザーを作成 (登録) したり、更新 (アバターの変更など) したり、自分のアカウントに情報を追加したり (起動の説明など) したりできます。

これを行うために、neo4j を使用することに決めました。これは、主に人間関係でのパフォーマンスが優れているためです (アプリケーションは「ソーシャル」です)。

私が理解したいこと、そしてあなたが答えを知っていると確信しているのは、neo4j でマルチスレッドを実装する方法です。

ここに私のソフトウェアアーキテクチャに関するちょっとした情報があります:

私はneo4jサーバーを持っています。次に、私のjavaApplicationには、サーバーと通信できるようにするneo4j jarがあります。アプリケーションはレイヤーに分割され、各レイヤーは次のレイヤーに含まれるライブラリです。つまり、レイヤーを書き直して同じインターフェイスを公開するだけで、他のレイヤーは影響を受けません。

問題は、MySql を使用すると、取得した接続のプールがあり、それを上位層で使用したことです。すべてが隠され、JDBC が並行性を処理してくれました。

ただし、neo4j では、並列処理を実装する方法がわかりません。neo4j から自動的に処理されますか? それは接続プールですか?

「接続」を作成する必要があること、およびすべてのリクエストで同じ接続を共有することを理解していると思います。そうですか?

それを行うためのベストプラクティスはありますか?

4

1 に答える 1

1

Java アプリケーションと組み込みモードでは、Neo4j はアプリケーション プロセスの一部として実行されます。スレッドを処理し、トラバーサル用に複数のスレッドを生成して、Neo4j をシングルトンとして扱うことができます。自動スレッド処理が必要な場合は、複数のスレッドを含む Web サーバーのような機能を提供する Neo4j サーバー (REST 経由) を使用できます。

于 2012-11-28T10:06:43.303 に答える