将来を見据えたウェブ・アプリケーションの構築:The Codestのエキスパート・チームによる洞察
The Codestが、最先端技術を駆使してスケーラブルでインタラクティブなウェブアプリケーションを作成し、あらゆるプラットフォームでシームレスなユーザー体験を提供することにどのように秀でているかをご覧ください。The Codestの専門知識がどのようにデジタルトランスフォーメーションとビジネス...
AWSラムダは、アマゾンがアマゾン・ウェブ・サービスの一部として提供するイベント駆動型のサーバーレス・コンピューティング・プラットフォームである。2014年11月に導入された。
素晴らしいと思いますか?Ruby開発者にとってはそうではない。2018年11月29日まで、Rubyはサーバーレス革命を起こすためにサポートされていなかった。しかしその後、Jetsが登場し、すべてが変わった。
ルビー・オン・ジェッツの公式ウェブサイトが誇らしげに言う:
「Ruby on Jetsを使えば、サーバーレス・サービスを簡単に作成、デプロイでき、最も美しい動的言語を使ってAWSサービスをシームレスに接着できる:Rubyです。APIを構築し、AWS Lambdaにデプロイするために必要なものがすべて含まれています。JetsはRubyのパワーを活用し、誰もがサーバーレスを楽しめるようにします"
実際、特にRailsやSinatraの経験がある人にとっては、Jetsでの作業は比較的簡単で快適なものになる。
それを証明するために、この記事ではシンプルなサーバーレス・アプリケーションを構築する。
準備はいいか?
これからやることは、とてもシンプルなJetsアプリを作ることだ。ルート、コントローラ、アクションの作成方法、AWS Lambdaへのデプロイ方法など、基本的な情報が得られるだろう。シンプルで簡単にするために、ランダムにChuck Norrisのジョークを返すエンドポイントを1つだけ使うことにする。
まず最初に、Jets gemをグローバルにインストールしよう。コンソールで
次に、新しいジェットを作成する。 プロジェクト と:
(-mode-apiと-no-databaseオプションは必須ではありません。ここではデータベースもビューも必要ないので、インストールを少しスピードアップするだけです)。
では、chuck-norris-jokesディレクトリを実行してください:
入場 ローカルホスト:8888
をブラウザで開くと、このように表示されるはずだ:
これが表示されたなら、おめでとう!
これからやることは、最初のジェッツ・コントローラーを作ることだ。
コンソールで次のように入力する:
これでJokesControllerが作成され、中にcreateというアクションが1つ入ります。デフォルトでは、Jetsはアクションのために "get "タイプのルートを作成するので、それを修正する必要があります。
で routes.rb ファイル変更 "ジョーク/作成 "を取得する への jokes'を投稿してください:「jokes#create".
Chuck Norrisのネタをフェッチするには、John Doe Apiを呼び出す必要がある。そして、取得したジョークを含むjsonで応答する。
これをローカルで実行して、期待どおりのレスポンスが返ってくるかテストすることができる。これから行うのは、ローカル・サーバに対して カール
.
(注意:サーバーがまだ稼動していることを確認してください)。
適切なポリシー(Jetsの公式ドキュメントで見つけることができる)を持つAWSアカウントを持っていれば、最後に必要なことは単に実行することだ:
これでアプリケーションがAWSにアップロードされる。
デプロイが完了すると、APIゲートウェイのエンドポイントが提供される(ほとんどの場合、コンソールの最後の行)。
さて、いよいよデプロイしたアプリのテストだ!
再度curlを使用してこれを行うことができるが、今度はlocalhostをAPIゲートウェイのエンドポイントに置き換える。
以上だ!Ruby on Jetsとサーバーレスの世界を簡単にご紹介しましたが、楽しんでいただけたでしょうか?
続きを読む