Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
クラウド最初の一歩
Search
jhashimoto
February 07, 2017
Programming
0
380
クラウド最初の一歩
クラウド初心者をターゲットにした社内勉強会のスライドです。
jhashimoto
February 07, 2017
Tweet
Share
More Decks by jhashimoto
See All by jhashimoto
初めてのAWS / The first AWS
jhashimoto
0
240
AWS Data Pipelineを本番投入してみた話
jhashimoto
1
1.1k
AWS Lambdaで始めるサーバーレスアーキテクチャ
jhashimoto
0
230
Amazon S3の紹介
jhashimoto
0
260
Other Decks in Programming
See All in Programming
生成AIコーディングとの向き合い方、AIと共創するという考え方 / How to deal with generative AI coding and the concept of co-creating with AI
seike460
PRO
1
320
deno-redisの紹介とJSRパッケージの運用について (toranoana.deno #21)
uki00a
0
120
Bytecode Manipulation 으로 생산성 높이기
bigstark
2
360
WindowInsetsだってテストしたい
ryunen344
1
190
Java on Azure で LangGraph!
kohei3110
0
160
型付きアクターモデルがもたらす分散シミュレーションの未来
piyo7
0
800
FormFlow - Build Stunning Multistep Forms
yceruto
1
190
無関心の谷
kanayannet
0
180
今ならAmazon ECSのサービス間通信をどう選ぶか / Selection of ECS Interservice Communication 2025
tkikuc
11
2.6k
実践ArchUnit ~実例による検証パターンの紹介~
ogiwarat
2
280
Go1.25からのGOMAXPROCS
kuro_kurorrr
1
770
コード書くの好きな人向けAIコーディング活用tips #orestudy
77web
3
320
Featured
See All Featured
Being A Developer After 40
akosma
90
590k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.9k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
48
5.4k
VelocityConf: Rendering Performance Case Studies
addyosmani
330
24k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
46
9.6k
Code Reviewing Like a Champion
maltzj
524
40k
4 Signs Your Business is Dying
shpigford
184
22k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
Making Projects Easy
brettharned
116
6.2k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
48
2.8k
Transcript
クラウド 最初の一歩 橋本 淳一 2017/02/03 1
はじめに 2
このセッションのターゲット まだクラウドを使ったことがない 人 クラウドをよく知らない人 3
このセッションのゴール 皆さんにクラウドを使ってみたいと思ってもらえるこ と 4
今日話すこと AWSだけでも情報は膨大です。 目的を持たずにやみくもに情報収集しても、つらいだけで効果が上 がりません。 そうならないように、クラウドを導入するメリットを中心にお話し します。 5
今日話さないこと AWSの個々のサービスの説 明 6
アジェンダ クラウド基礎知識 クラウドを使うメリッ ト まとめ 7
クラウド基礎知識 クラウドを使うメリッ ト まとめ 8
用語 インフラ “ITインフラとは、パソコンやサーバー、プリンタなどの各種ハー ドウェア、インターネットやLANなどのネットワーク、さらには データベースやOSのことを指します。” ITインフラの基礎知識 | 株 式会社プレオン(http://www.pleon.co.jp/fan_contents_02/) 9
オンプレミス “オンプレミス ( 英語: on-premises(オン・プレミシズ))[注 1] と は、 情報システムを使用者(通常は企業)自身が管理する設備内 に導入、設置して運用することをいう。”
https://ja.wikipedia.org/wiki/オンプレミス 10
クラウド “実際に処理が実行されるコンピュータおよびコンピュータ間のネ ットワークは、サービスを提供する事業者側に設置されており、 それらのコンピュータ本体およびネットワークの購入・管理運営 費用や蓄積されるデータの管理の手間は軽減される。このような 出来合いのサーバ群をクラウドと呼ぶ” https://ja.wikipedia.org/wiki/クラウドコンピューティング 11
利用形態 クラウドの利用形態は、3種類あります。 IaaS Infrastructure as a Service PaaS Platform as
a Service SaaS Software as a Service 12
サービス例 IaaS AWS EC2(仮想サーバ ー) PaaS AWS RDS(リレーショ ナルデータベース) SaaS
Salesforce 柔軟性と管理コストのトレ ードオフ オンプレミス > IaaS > PaaS > SaaS https://www.cloud-ace.jp/report/detail01/ 13
はじめに クラウド基礎知識 クラウドを使うメリッ ト まとめ 14
用語 アーキテクチャ “コンピュータ・アーキテクチャ(英: computer architecture) は、コンピュータ(特にハードウェア)における基本設計や設計 思想などを意味する。” https://ja.wikipedia.org/wiki/コンピュー タ・アーキテクチャ 15
機能要件 “機能要件とは、情報システムやソフトウェアの開発に際して定義 される要件のうち、機能に関するもの。” 非機能要件 “機能面以外の要件を「非機能要件」(non-functional requirement)と呼び、性能や信頼性、拡張性、運用性、セキュリ ティなどに関する要件が含まれる。” http://e-words.jp/w/機能 要件.html http://e-words.jp/w/機能要
件.html 16
オンプレミスとクラウドの比較 17
インフラ構築のスピード オンプレミス < クラウド 18
EC2インスタンスを作成する 19
EC2インスタンスを作成する 20
EC2インスタンスを作成する 21
開発者が書くコードの量 クラウド < オンプレミス オンプレミス フレームワークやライブラリなどの部品を組み合わせて、使用す る。 それ以外の部分はすべて開発者が書く。 クラウド クラウドのサービスを組み合わせて、システムを構築する。
開発者が書くのは、ビジネスロジックだけでよい。 開発者が書かなくてはいけないプログラムの量は、かなり減り ます。 22
自由度・柔軟性 クラウド < オンプレミス オンプレミス システム構成要素(OS、ミドルウェア、フレームワーク、ライブ ラリ、開発言語、etc.)は、好きなものを選べる。 自由度が高くて、柔軟性がある。 クラウド クラウドサービスを組み合わせて、システムを構築する。
クラウドサービスは便利な反面、オンプレミスの自由な開発と比 べると制約があります。 つまり、クラウドでは制約を前提にシステムを構築しなければな りません。 23
制約が生まれることのメリット オンプレミス 「自由度が高い」とは、見方を変えれば、選択肢が無数にあるこ とです。 すべての選択肢の中から最適なものを選び、機能要件、非機能要 件を満たせるアーキテクチャを自分で設計しなくてはならない。 つまり、自由度が高い反面、設計のコストが高く難しい。 24
制約が生まれることのメリット クラウド 制約があるので、自由度の高さと引き換えに選択肢を減らせま す。 制約がある中で、ベストなアーキテクチャを構築する方法は、 パターン化されています。 Amazonで”クラウド・デザインパターン”で検索 制約を前提とし、パターンを採用することで、開発者が悩まな ければいけないことがかなり減ります。 クラウドサービスの制約を積極的に受け入れれば、開発者が楽をし
て、システムの完成度を高めることができます。 AWS-CloudDesignPattern (http://aws.clouddesignpattern.org/index.php) 25
アーキテクチャ変更の容易性 オンプレミス < クラウド オンプレミス 一度決定したアーキテクチャを変更するのは、困難です。 書いてしまったコードを捨てることは、コスト面でも心理面で も痛みを伴います。 要件は変化します。アーキテクチャが要件の変化に追随できない と、プログラムで無理をして解決することになります。
26
アーキテクチャ変更の容易性 オンプレミス < クラウド クラウド 一度決定したアーキテクチャをためらわずに変更することができ ます。 なぜなら、クラウドサービスを使ったアーキテクチャは開発者が プログラムを書かずに実現されているからです。 つまり、クラウドならアーキテクチャを継続的に改善していくこ
とができます。 27
非機能要件実現の容易性 オンプレミス < クラウド オンプレミス アーキテクチャを決定するときには、機能要件・非機能要件とも に技術検証が終わっていなければいけません。 クラウド 非機能要件を後から作り込むことができます。 28
EC2インスタンスのスペックを上げる 29
EC2インスタンスのスペックを上げる 30
EC2インスタンスのスペックを上げる 31
はじめに クラウド基礎知識 クラウドを使うメリッ ト まとめ 32
まとめ オンプレミスとクラウドはトレードオフの関係にあります。特徴を 理解して要件に応じて使い分けましょう。 クラウドのサービスを使うと、 素早くインフラを構築できます。 クラウド・デザインパターンを採用することで、開発者が悩まな くてはいけないことが、かなり減ります。 開発者が書かなくてはいけないプログラムの量がかなり減りま す。 アーキテクチャを継続的に改善していくことができます。
つまり、開発者が楽になります。 クラウドとても楽しいです! 33
ご清聴ありがとうございました 34