見出し画像

AWSに触れてみる

こんばんは。

急に思い立ってAWSをやってみることに。
とは言っても、AWSが何かもよくわからないので、気の向くままに挑戦。

AWSとは

ググれば書いてあるので省略。
感想としては「で?」という感じ。なんでもできそうな半面、何から始めていいのか、さっぱり・・・

「AWS の開始方法」というものがあったので、ここから始めてみることに。

モジュール 1: ウェブアプリケーションを作成する

HTMLを作ってZipにしてAmplify コンソールにログイン、と。
その前にアカウント作っていないので、ここから新規登録。

登録時に住所やクレジットカードまで必要なのが、ちょっと嫌ですが、仕方ない。
こういうところ、Salesforceは簡単でよかったなと思う。。。

言われるがままにデプロイして、確認完了。

画像1

サーバを立てる作業を少しもしてないのにもうサーバが立ち上がり、アプリが乗っている状態になっていると。
これは確かに簡単。

ただ、私はインフラエンジニアではなく、サーバを立てる苦労はほとんど知らないので「へー」という程度。特に普段Salesforceを使っているので、あまり驚きはないというのが正直なところ。

モジュール 2: サーバーレス関数を構築する

「サーバレス関数」というタイトルなのに、読み進めると「Lambda 関数」になっている。サーバレス関数の中のLambda関数と思って良さそう。
「Lambda」は「ラムダ」と読むらしい。

「関数の作成」をしたら、10分くらい終わらず・・・
いったんキャンセルしてやり直したところ、数分で作成されました。

そしてまた言われるがままにテスト実行して成功。

画像2

JSONを送って、それを受け取ってレスポンスを返す、というのが確認できた模様。
これのどこが「サーバレス」だったのかはよくわからないけど・・・

モジュール 3: サーバーレス関数をウェブアプリケーションにリンクする

1つ、罠にかかってInternal Server Errorが発生。
リージョンはLambda関数を作成したところを選ばないとダメらしい。
特に手順には書いてない気がするのですが、Lambda関数の手順に「メモっておけ」とあったので、たぶんそういうこと。

画像3

成功するとこんな感じ。

画像4

モジュール 4: データテーブルを作成する

ここまで、モジュールごとにいちいちコンソールが違うというのが初心者にはとてもわかりづらい。慣れれば、これが使いやすいのかな?

DBを作成し、APIからのアクセス権を定義し、APIを実行すると、

画像5

え、、DBの項目も作成されている。なんで?
試しに関数にTestの行を1行追加して実行してみる。

    response = table.put_item(
       Item={
           'ID': name,
           'LatestGreetingTime':now,
           'Test':'aaa'
           })
          

画像6

DBの項目も追加された。すごいな。
使いようによっては便利なのかもしれない。(特に便利な用途は思いつかないけど)

モジュール 5: ウェブアプリケーションに対話性を追加する

これも言われるがままに実行し、成功。
アプリからAPIを呼び出せていることになるはず。

画像7

以上でお試し第一弾は終了。

まとめ

チュートリアル自体は非常に簡単で、何ができるのかざっくり体験できたのでとても良かった。

■良かった点
APIやDBを作るところがこんなに簡単に済むというのは素晴らしい。

■よくわからない点
アプリとAPIの棲み分けとか、ちょっと混乱している気がする。
例えばJavaアプリを作ったらその中にAPIを作るのと、AWSの関数としてAPIを作るのと、何が違うのか・・・もう少し使ってみないとまだ何もわからないな、という感じ。

また後日。。

いいなと思ったら応援しよう!