1

私はHibernateを使用してJavaアプリケーションに取り組んでいます。それに応じてスケーリングできるように、 Elastic Beanstalk(Amazon Web Services)にデプロイしたいと思います。

RDSは私が使いたいデータベースです。

ただし、ElasticBeanstalkに構成設定を与える方法がわかりません。どうやら、AMIを作成したり、新しいサーバーごとにこのAMIを使用したりすることなく(自動スケーリング時に)可能になりました。

私が使う :

  • hibernate.cfg.xml
  • server.xml(hibernate.cfg.xmlへのリンク)

しかし、私は簡単にスケーリングしたいので、それらのファイルを入力するための「EC2インスタンスの手動構成」はありません。では、2つのファイルなしでこれらの設定をアプリケーションに与えるにはどうすればよいですか?

これらの情報を使用してElasticBeanstalkにデプロイする方法は?

4

2 に答える 2

2

Amazon Relational Database Service (RDS) は、クラウドにリレーショナル データベースをセットアップするための Web サービスです。RDS は、MySQL、Oracle、SqlServer などのリレーショナル データベース エンジンをサポートしています。MySQL の場合、以下のように hibernate.cfg.xml を変更します

<session-factory>
    <property name="dialect">org.hibernate.dialect.MySQLInnoDBDialect</property>
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property
name="connection.url">jdbc:mysql://my_sports_entertainment_db_url/news</property>
    <property name="connection.username">my_username</property>
    <property name="connection.password">my_password</property>
  </session-factory>

また、アプリケーションへの影響を最小限に抑えて MySQL から Amazon RDS に「切り替える」方法も確認してください。

于 2012-12-29T15:54:16.767 に答える
0

これを行う方法はわかりますが、きれいではありません。

インスタンス構成ファイルには、コンテナ コマンドを含めることができます。これらは、コンテナーとアプリケーションがインストールされた後、アプリケーションが開始される前に実行されます。この時点で、Tomcatcontext.xmlファイルを編集してデータソースを追加できます。追加する必要があるテキストは、通常のデータソース構成です。あなたの問題は、スクリプトからそれをしなければならないことです。最も簡単な方法は、構成を記述してアプリケーションと共に配信し、コンテナ コマンドを使用して強力なsedを適用してcontext.xml.

作成する必要がある実際の構成には、RDS のホスト名、ユーザー名、パスワードなどを含める必要があるという別の問題がありますが、これらは開発中にはありません。AWS はこれらをシステム プロパティを通じて Java に公開するため、情報はマシンのどこかにある必要があります。見つけることができれば、 にスプライスするときに構成に混ぜることができますcontext.xml

私が言ったように、これは可能かもしれませんが、きれいではありません。それはハックのように感じます。これを行うためのより良い方法があるはずです。

于 2012-12-29T19:38:00.737 に答える