V1.03
クラウドアプリケーション
開発概要
株式会社名古屋ソフトウェアセンター
研修事業部 次長 林 広宣
(はやし ひろのり)
MCT、MCPD、OCJ-WC
株式会社名古屋ソフトウェアセンター
1
講座の概要
クラウドの種類
クラウドアプリケーション開発の範囲
クラウドプラットフォーム(プロバイダ)
開発環境
開発の例と管理ポータル(運用環境)
株式会社名古屋ソフトウェアセンター
2
第1章 クラウドの種類
SaaSタイプ
PaaSタイプ
IaaS/HaaSタイプ
完成したソフトウェ
ア
を提供
開発・実行環境とな
るプラットフォーム
を提供
仮想ハードディスク
を提供
アプリケーション
アプリケーション
OS & ミドルウェア
OS & ミドルウェア
OS & ミドルウェア
ハードウェア
ハードウェア
ハードウェア
ネットワーク
ネットワーク
ネットワーク
SaaS
PaaS
IaaS/HaaS
カスタマイズ
アプリケーション
株式会社名古屋ソフトウェアセンター
ユーザー企業側で準備するもの
事業者(Amazon/Google等)が提供するもの
3
クラウド環境全般の特徴
提供者が管理
可用性が高い(複数インスタンス)
ハードウェアの管理などが不要
アメリカとアジアに分散配置
スケーラビリティが高い
夏期はスケールアウト、冬季はスケールダウン
株式会社名古屋ソフトウェアセンター
4
Iaasの特徴
インターネット経由のハードウェアやイン
フラの提供。
サーバー仮想化やデスクトップ仮想化や
共有ディスクなど。
ユーザーが自分でOSなどを含めてシス
テム導入・構築できる。
Amazon.comのAmazon EC2など。
株式会社名古屋ソフトウェアセンター
5
Iaasをターゲットとした開発
OSの選択(Windows, Linux, etc)
データベースなどミドルウェアのインス
トール(MySQL、MS-SQLなど)
冗長化・可用性などの設計が必要
そのうえでアプリケーションを配置
自由度は高いが、構築が大変
株式会社名古屋ソフトウェアセンター
6
Paasの特徴
インターネット経由のアプリケーション実行用のプ
ラットフォームの提供。
仮想化されたアプリケーションサーバやデータベー
スなども提供される。
ユーザーが自分のアプリケーションを配置して運用
できる。
セールスフォース・ドットコムのForce.comプラットフォーム、
GoogleのGoogle App Engine、AppScale、マイクロソフトの
Windows Azure、Amazon.comのAmazon S3やAmazon
DynamoDBやAmazon SimpleDBなど。
株式会社名古屋ソフトウェアセンター
7
Paasでの開発
OS、DBなどはインストール済み
Webアプリケーション、Webサービスな
どを開発(天気予報、地図、株価など)
サービスを公開する場合は、API
(REST/JSON)仕様を公開する
クライアントの開発も必要な場合がある
株式会社名古屋ソフトウェアセンター
8
Saasの特徴
インターネット経由のソフトウェアパッケージ
の提供。
電子メール、グループウェア、CRMなど。
セールスフォース・ドットコムのSalesforce CRM、マ
イクロソフトのMicrosoft Online Services、Google
のGoogle Appsがある。
株式会社名古屋ソフトウェアセンター
9
Saasの例
ストレージ提供型
SkyDrive, iCloud, DropBox, EverNote
サービス提供型
Google+, Twitter, Facebook, Yahoo 等
既存のSNSやWebサイトが、開発者向けの
APIを提供している場合が多い
株式会社名古屋ソフトウェアセンター
10
Saasでの開発
必要な機能を必要な分だけサービスとして利
用できるようにしたWebサイト
主にストレージ提供型とサービス提供型があ
る
PaaS+(Webサービス and/or Webアプリ
ケーション)と考えればよい
REST/JSONのクライアント作成が主な作業
株式会社名古屋ソフトウェアセンター
11
第2章
クラウドアプリケーション開発の範囲
クラウド側(サーバー)アプリケーション
Webアプリケーション(http)
Webサービス(SOAP, REST, JSON)
クライアントアプリケーション
デスクトップ
スマートフォン、など
株式会社名古屋ソフトウェアセンター
12
Webアプリケーション
Paas上で、エンドユーザー向けに提供
自社サーバーあるいはデータセンターに
Webサイトを構築するのとほぼ同じ
メリットは、クラウドの特性の享受
可用性、拡張性、メンテナンスフリー
株式会社名古屋ソフトウェアセンター
13
Webサービス
Paas上で、クライアント開発者向けに提供
SOAP, REST, JSON形式を出力
クライアント言語は、Java, .NET, Ruby
など多くが対応
クライアントプラットフォームも、
Windows, UNIX/Linux, iOS, Android,
Windows Phone など多数
株式会社名古屋ソフトウェアセンター
14
Webサービスの標準規格
WS-I(Web Service Interoperability)
Organization が標準化
主に、SOAP関連のプロトコル
SOAP,
WSDL, UDDI
セキュリティ、トランザクション、暗号化など
株式会社名古屋ソフトウェアセンター
15
SOAP
XML形式で、オブジェクトのメソッドコー
ルを行う方式
SOAP対応のライブラリなどが必要
元来、Simple Object Access Protocol
の略だったが、現在は、SOAPは単体の
単語とされている。
WSDL, UDDIなどの関連プロトコル
株式会社名古屋ソフトウェアセンター
16
SOAPの例
<SOAP-ENV:Envelope xmlns:SOAPENV="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP-ENV:Body>
<getProductDetails xmlns="http://warehouse.example.com/ws">
<productId>827635</productId>
</getProductDetails>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
株式会社名古屋ソフトウェアセンター
17
REST
Representational State Transfer
SOAPよりも簡易なしくみ
通常のXML文書とほぼ同じ
SOAPよりも形式が自由
SOAPよりも少ないトラフィック
ブラウザだけでも試すことができる
株式会社名古屋ソフトウェアセンター
18
RESTの例
http://www.example.com/myrequest?userid=1234
<user>
<name>Jane User</name>
<gender>female</gender>
<location href="http://www.example.org/locations/us/ny/new_york_city">
New York City, NY, US
</location>
</user>
株式会社名古屋ソフトウェアセンター
19
JSON
JavaScript Object Notation
RESTをさらに簡略化したしくみ
RESTからXML形式を取り除いたもの
特殊な記号を使う
Ajaxなど利用範囲は広い
株式会社名古屋ソフトウェアセンター
20
JSONの例
http://www.example.com/myrequest?userid=1234
{"name": "John Smith", "age": 33}
株式会社名古屋ソフトウェアセンター
21
クライアントアプリケーション
Webサービスクライアント
SOAP or REST or JSON でやりとり
クライアント言語は、Java, .NET, Ruby
などを使用
クライアントプラットフォームも、
Windows, UNIX/Linux, iOS, Android,
Windows Phone など多数
株式会社名古屋ソフトウェアセンター
22
第3章
主なPaaSプラットフォーム
Amazon Web Services
Force.com(Salesforce.com)
富士通クラウドサービス
(FGCP/A5)
GMO クラウド Public
Google App Engine
IBM SmarterCloud Services
Nifty Cloud
NTTデータ BizXaaS
NTT コミュニケーションズ
Cloud n
Oracle Public Cloud
さくらのクラウド
Windows Azure
(IaaS機能を提供しているプロバイダも含む)
株式会社名古屋ソフトウェアセンター
23
Amazon Web Services(AWS)
2002年7月~
EC2
仮想サーバーの提供
DB
SimpleDB
DynamoDB
株式会社名古屋ソフトウェアセンター
24
Force.com
セールスフォース・ドットコム社
が運営
PaaSは、2007年から
Force.com Apex Code言
語を利用。(Javaライク)
Google App Engine、
Amazon Web Service、
Facebookなどとの連携も
サポート。
株式会社名古屋ソフトウェアセンター
25
Nifty Cloud
2010年1月~
IaaSも提供
VMWareを利用
国内サーバー
株式会社名古屋ソフトウェアセンター
26
GAE(Google App Engine)
2008年4月~
Python, Java, Go
BigTable(非リレーショナル)
列指向(行ではなく)
扱いにやや苦労する
株式会社名古屋ソフトウェアセンター
27
Windows Azure
2010年1月~
Windows Server
2008とHyper-Vをカ
スタマイズして実装
SQLデータベース
2012/6よりIaaSも
株式会社名古屋ソフトウェアセンター
28
第4章 開発環境
言語
Java,
Ruby, Python, VB/C#, Apex,
PHP,GOなど
ツール
Eclipse,
NetBeans, Visual Studioなど
これらにSDKをインストール
株式会社名古屋ソフトウェアセンター
29
Eclipse(GAEの例)
http://www.eclipse.org
必要なら日本語化(Pleiadesなど)
GAEプラグイン(SDK)のインストール
http://dl.google.com/eclipse/plugin/3.x
株式会社名古屋ソフトウェアセンター
30
GAEの場合
Google アカウントを取得
サービスで、Google App Engineを選択
あるいは次のサイトへ
https://appengine.google.com/start
https://developers.google.com/appengine/
株式会社名古屋ソフトウェアセンター
31
アプリケーションIDの作成
管理ポータルで、アプリケーションIDを
作成しておく。
↓
デプロイ時
に必要
株式会社名古屋ソフトウェアセンター
32
Visual Studio(Windows Azure)
Visual Web Developer Expressで可能
Windows Azure Toolkit(SDK)
株式会社名古屋ソフトウェアセンター
33
Windows Azureの場合
Windows Live IDを取得
MSDNのサイトで「クラウド」関連のページへ
あるいは次のサイトへ
http://www.windowsazure.com/ja-jp/
株式会社名古屋ソフトウェアセンター
34
第5章 開発例
EclipseでGAEのWebアプリケーション
Visual Studioで、Windows Azureの
Webアプリケーション
Webサービス
クライアント
株式会社名古屋ソフトウェアセンター
35
実習
株式会社名古屋ソフトウェアセンター
36
管理ポータル
GAEの管理ポータル
https://appengine.google.com/
Windows Azureの管理ポータル
(新)https://manage.windowsazure.com/
(旧)https://windows.azure.com/
株式会社名古屋ソフトウェアセンター
37
今回の資料の入手場所
http://www.nagoya-sc.co.jp/support/seminar
ソースコードなど
プレゼンテーションで使用した資料など
質問の回答(もしあれば)
3か月ほど経過後、削除します
株式会社名古屋ソフトウェアセンター
38
ありがとうございました。
株式会社名古屋ソフトウェアセンター
39
© Copyright 2026 ExpyDoc