2017-01-28 16 views
-3

私は本当にクラウドに慣れていて、クラウドに自分のアプリケーションをデプロイして実行したいので、Amazon Web Services(AWS)を選択しました。Amazon Web Services(AWS)にPythonコードをデプロイして実行する

私のアプリやコード機能は、ウェブサイトを掻き集めて、AWSで作成されるデータベースに保存することです。

私のコードはPythonで書かれています。私の「システム」を行うことになって何

は次のとおりです。データベースは、私のアンドロイドがアクセスする

  • データベースにデータをこすり落とし
  • 引っかきウェブサイト
    • デプロイして実行し、私のPythonコードappを使用してデータを取得する

    これまでのところ、Amazon EC2インスタンスの作成方法を学習しました。

    どうすればこの問題を解決できますか?

  • +0

    [AmazoneのEC2インスタンスでコードを実行するにはどうすればいいですか?](http:// stackoverflow。com/questions/6030115/how-to-run-a-code-in-an-amazones-ec2-instance) – OzizLK

    +0

    代わりに、AWSラムダを使用して試してみてください。https://aws.amazon.com/lambda/ –

    +0

    AWSラムダはおそらく5分以上の実行が必要になるため、ウェブサイトのスクラップに最適な選択肢ではないでしょう。 @boneyflesh:コストを削減するために、EC2インスタンスが不要な場合は、必ずオフにしてください。あなたのアプリは、スクレイピング実行が終了したらすぐにマシンをシャットダウンすることができ、後でそれを再開することができます。 –

    答えて

    0

    AWSでEC2インスタンスを作成できる場合は、これが最初の手順です。作成するときは、処理できるOSまたは環境を選択してください。 WebサイトをスクラップするPythonスクリプトを実行することは、サーバーにとって非常に困難な作業ではないため、最初にT2マイクロを選択したいと思うかもしれません。それはfreeなので、試してみることができます。

    AWSのデフォルトAMI(Amazon Linux AMI 2016.09.1(HVM)、SSDボリュームタイプ)を選択した場合、EC2インスタンスの作成時に最初の画面でこれを選択しました)pythonは既にインストールされています。あなたのスクリプトを実行してください。

    データベースとしては、おそらくMySQLまたはPostgreSQLを使用します。これらのデータベースは、EC2インスタンスにインストールするか、Amazon RDSを使用してインストールすることができます。 RDSは、リレーショナルデータベース用のAWSデータベースサービスです。必要なデータベースを作成して起動するだけです。その後、RDSに書き込むようにPythonスクリプトを調整する必要があります。

    データベースをEC2インスタンスにインストールする場合は、インストールにEBS(Elastic Block Storage)を使用してEC2インスタンスに接続することを確認してください。これを行わないと、EC2インスタンスを終了するたびにすべてのデータが失われます。 EBSはEC2インスタンスにアタッチおよびデタッチすることができ、アタッチされたEC2インスタンスを終了するとデータは削除されません。がんばろう!

    (AWSを試してみるとちょっとしたヒントです:上記のようにサービスを使用すると、請求ステータスが毎回変わることはありませんが、私はRedshiftのインスタンスを終了するのを忘れて休暇を過ごした後、いつでももっと安全に感じることができます... ;-))

    +0

    これは面白いですが、私はこれで私が望むものを達成できるように感じます。しかし、私は本当にこのトピックについてのことを知っていないので、どのようにこれは動作しますか?私のEC2インスタンスに自分のコードをアップロードすれば、コード自体が実行されますか? (私がそれが願っていることをcuz thats) – Boneyflesh

    +0

    うん、これはあなたがすべきことです、@ Boneyflesh – Otterfinger

    0

    AWS Serverless Application Modelは、このすべてを非常に簡単にします。

    これはあなたの良いスタートを与える:Introducing Simplified Serverless Application Deployment and Management

    このモデルは簡単に、データベースを(あなたのコードから)ラムダ関数を作成し、それらを相互にアクセスを提供するために必要なロールを作成します。それはかなり甘いです。

    関連する問題