Java on Azure
Upcoming SlideShare
Loading in...5
×
 

Java on Azure

on

  • 2,942 views

 

Statistics

Views

Total Views
2,942
Views on SlideShare
2,916
Embed Views
26

Actions

Likes
2
Downloads
22
Comments
0

2 Embeds 26

http://jazug.jp 14
http://r.jazug.jp 12

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Java on Azure Java on Azure Presentation Transcript

  • JavaonAzureTomcat StarterKit +WindowsAzure4jでクラウド開発
    WINGSプロジェクト 山田祥寛yoshihiro@wings.msn.tohttp://www.wings.msn.to/
  • JavaサーブレットをAzureで動かすには?
    Javaアプリからストレージサービスにアクセスする方法
    結局、JavaonAzureってどうなの?
    余談: 明日のLTではPHPonAzureをやります!
    アジェンダ
  • Starter Kit for deploying Tomcat-based Java solutions on Windows Azure (http://code.msdn.microsoft.com/azuretomcat )
    JSP&サーブレットコンテナTomcatをAzureパッケージに組み込むためのアクセラレータ
    Windows Azure Tomcat Solution Acceleratorもあるけど、 こちらは古いものなので、使わない
    .warファイルをブロブから動的に組み込めるので、再デプロイが容易に
    事前に必要なもの
    Tomcat5.5以上、JRE5以上(今回は、Tomcat6.0& JRE6を利用)
    意外と簡単にできます
    JavaサーブレットをAzureで動かすには?
  • Tomcat起動のためのWorkerロールを作成&ビルド
    Tomcat、JREの組み込み
    Windows AzureSDK
    CommandPromptで実行
    TomcatはWindowsZip版を。ServicesInstaller版では不可(??)
    >C:DataTomcatAcceleratorBuildme.cmd
    Please enter the path for tomcat binaries: C:apache-tomcat-6.0.29

    Please enter the path for JRE binaries : C:Program Files (x86)Javajre6
  • .warファイルをブロブにアップロード(AzureMMC等)
    接続文字列、.warファイルの場所を設定
    これ以降はVisualStudioの操作で可能
    .warファイルの情報を設定
  • 通常のデバッグ実行で起動可能
    接続文字列などの情報を設定していない場合はエラー
    ブラウザそのものは自動で起動しないので要注意
    Tomcatを開発ファブリックで実行
  • WindowsAzureforJava(WindowsAzure4J)を利用しよう!
    Eclipseプラグインとして、[インストール] ウィンドウから導入できる
    http://www.windowsazure4e.org/update
    Azureマネージライブラリからストレージライブラリだけを抜き出した感じのライブラリ-> いわゆる開発支援機能はほとんどない
    診断系、セッション管理には未対応 (?)
    JavaでAzureアプリを開発するには?
  • ストレージサービスへのアクセス機能
    ブロブ、キュー、テーブルの参照、編集などは一通り行える
    VisualStudioAzureTools1.2よりは高機能
    StorageExplorer
  • 普通にJavaプロジェクトを生成したうえで、必要なライブラリにビルドパスを通す
    ECLIPSE_HOMEpluginsorg.soyatec.windows.azure.java_1.0.0.201002091324libsのすべての.jarファイル
    ECLIPSE_HOMEpluginsorg.soyatec.windows.azure.java_1.0.0.201002091324フォルダそのものにも
    自動ではライブラリは組み込まれないので要注意
    Windows4Jを利用するには?
  • ブロブストレージへのアクセス
    BlobStoragecli = BlobStorage.create(
    URI.create("blob.core.windows.net"),
    false,
    “wings”, “***********************************“
    );
    cli.setRetryPolicy(RetryPolicies.retryN(1, TimeSpan.fromSeconds(5)));
    BlobContainercont = cli.getBlobContainer("javatest");
    if (!cont.doesContainerExist()) {
    cont.createContainer();cont.setContainerAccessControl(ContainerAccessControl.Public);
    }
    BlobPropertiesprops = new BlobProperties("test");
    props.setContentType("image/jpeg");
    BlobContentsblob = new BlobContents(
    new FileStream("c:/RIMG0001.JPG"));
    cont.createBlob(props, blob, true);
  • public class Message extends TableStorageEntity {
    private String name;
    private String url;
    private String body;
    public Message(String partitionKey, String rowKey){
    super(partitionKey, rowKey);
    }
    public String getName() {
    return name;
    }
    public void setName(String name) {
    this.name = name;
    }

    }
    テーブルストレージへのアクセス
    TableStoragecli= TableStorage.create (
    URI.create("table.core.windows.net"),
    false,
    "wings",
    “**************************"
    );
    CloudTable table = cli.getWindowsAzureTable("Message");
    if(!table.doesTableExist()){ table.createTable(); }
    Message msg = new Message("Java", "7");
    msg.setName("山田");
    msg.setUrl("http://www.wings.msn.to/");
    msg.setBody("こんにちは!");
    table.insertEntity(msg);
    List<TableStorageEntity> list = table.retrieveEntities(
    Query.select().eq("name", "Yamada"));
  • TomcatをAzureで動作するのは比較的簡単
    ライブラリもそれなりにそろっている
    でも、現時点ではPHPよりは開発しにくい…かも?
    まとめ?
  • WindowsAzure実践クラウドプログラミング forC#/VisualBasic/PHP(秀和システム)
    こんな文献もよろしくお願いします