2013-12-17 14 views
5

私は休止状態でマルチテナントを読み、stackoverflowから投稿をいくつか読んでいますが、私が持っている要件には対応していないようです。私は1つのアプリケーションに複数の顧客がサービスを提供しているSAASベースのアプリケーションモデルに取り組んでおり、すべての顧客に対してテナントデータベース(postgresSql)の独立したインスタンスが存在します。このほかに、ユーザーを認証し、それが属するテナントデータベースを識別するために使用されるマスターデータベースもあります。このマスターデータベースには、テナントデータベースへの接続URLなどの情報が含まれていると考えられます。HibernateとSpringを使用してユーザーログインごとにテナントデータベースに接続

ユーザーがログインすると、私はmasterデータベースで認証します。接続URLのようなテナントデータベース情報を取得し、そのデータベースに接続し、それを介してすべてのユーザーの要求に対応します。

私は、アプリケーション開発中に静的になるhibernate設定ファイルに複数のsessionfactoriesを定義できるという事実を考慮して、代わりに私はsessionfactoriesを動的に作成したいと思います。マスターデータベースからの接続URLの情報。

また、masterデータベースとテナントデータベースのsessionfactoryを維持する必要があるシナリオもあります。これは、masterデータベースとテナントデータベースの両方にユーザーを追加する必要があるためですユーザー作成。

誰でもこの要件に対処できますか?

答えて

1

2つのセッションファクトリを定義します.1つはマスタdb用、もう1つは偽値で始まるdbsです。 thisは、実行時にデータソースを変更する方法をお手伝いします。

最後にスレッドローカルは、コール間でデータを保存するのに役立ちます。

希望します。

関連する問題