ASP.NET MVCアプリケーションをAmazon AWSに移動する


8

ASP.NET MVCアプリケーションを作成しましたが、開発サーバーからAmazon AWSに移動したいと思います。私の質問は、ASP.NETアプリケーションをAmazon AWSにどのように移行するのですか?これが私がこれまでに調査/発見したものです:

  • セッションはインスタンス間で機能しないため、DynamoDBまたはmemcachedを使用して状態を保存する必要があります。Amazon ElastiCloudを使用してセッション状態の問題を解決する方法として、Enyimなどのさまざまなクライアントを調べました。
  • Amazonには、SMTP電子メール用のWebサービスがあります。そのため、Amazon SESを介して送信するようにSMTPメールを送信するコードを作り直し、DNSレコードを変更して、受信メールを別のメールサーバーに転送する必要があります。
  • ユーザーIDを管理するためのSDK(Amazon IAM)があります。このWebサービスを使用するには、認証コードを変更する必要があります。

おそらく私が知らないもっと多くの点があるでしょう。では、MVCアプリをAWSに移行するにはどうすればよいですか?


1
あなたの研究を共有することはすべての人を助けます。何を試したか、なぜそれがニーズを満たさなかったかを教えてください。これは、時間をかけて自分自身を助けようとしたことを示しており、明白な答えを繰り返すことから私たちを救い、そして何よりも、それはあなたがより具体的で適切な答えを得るのに役立ちます。How to Ask
gnat

回答:


4

まず、サイトを1台のマシンから複数の(サイト内)サーバー、Azure、Rackspaceなどに移動するかどうかに関係なく、現在調査していることはほとんど同じです。

セッション状態になると、本番サイトは複数のインスタンスにまたがって実行される可能性が高いため、どのサーバーエンドポイントがヒットしたかに関係なくユーザーセッションをロードできるように、共有ストアでセッションデータを永続化する必要があります。

Dynamoを使用すると、巨大なスケールを処理できますが、比較的コストがかかる可能性があります。予想される(そして最終的には実際の)トラフィックワークロードに応じて、AWS Elasticacheなどの安価な形式のストレージで十分に対処できる場合があります(特にユーザーセッションが一時的な場合があるため)。

SMTPハンドラーを変更するのはかなり簡単です。

IAMは、AWSサービスへのユーザーのアクセスを制御するためのものです。

あなたが説明したのは、自分のユーザーアカウントのストレージとアクセスを管理したい(ASP.NETメンバーシップを介して?)-そのために、Amazon RDSのような永続的なリレーショナルストレージメカニズムです。

これの大部分を実行した他の多くの例があります-それをGoogleBingするだけです。

その他の考慮事項:

  1. あなたのサイトがスティッキーセッションを必要としないことを望みます:これはロードバランスを少しトリッキーにするかもしれません。
  2. シンプルなロードバランサー/プロキシを前にして、いくつかのローカルインスタンスで実行されているアプリをテストしましたか?これらのものをクラウド内よりもローカルでデバッグする方が簡単です。
  3. バックエンドデータベースの形式については言及していません... DBの移行はすでに組織化されていると思いますか?

ありがとう、ちょうど間に合いました!実際、次の2週間でアプリをAWSに移行しようとしています(計画段階で質問を作成しました)。これは、MySQLバックエンドを備えたASP.NETアプリです。SingalRはバックプレーンのRedisをサポートしているので、ほとんどすべてにSignalRを使用しているので、Elasticacheが必要だと思います。再度、感謝します!
arao6 2015年
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.