サービスの監視と診断の重要性

このポストは、4 月 27 日に投稿された Service Monitoring and Diagnostics の翻訳です。 企業の多くは、業務にソフトウェアを利用しています。そしてこのソフトウェアこそが、業務の推進力となっています。企業の良し悪しは、そのシステムを形成するコードに左右されるといっても過言ではありません。それは銀行であっても、町の本屋であっても同じことです。システムがダウンしたり、パフォーマンスが低下すれば、損失はそのときだけでなく、顧客を失うなど先々にまで影響が及ぶことになります。顧客が Web サイトを利用しているときに問題が発生したら、企業はそのことを即座に把握し、他の大勢の顧客が気付く前に原因を特定して問題を修正する必要があります。 これは、単なる可用性だけの問題ではありません。確かに、サイトのダウンは非常に深刻な問題で、SLA では一般的に 99.999% の可用性 (英語) が要求されます。しかし、応答性も問題になります。Amazon では 1 秒間のパフォーマンス低下で 16 億ドルの損失が発生し、Google では 0.4 秒のパフォーマンス低下で 800 万回のクエリを損失するというある調査結果 (英語) が出ています。こうしたサイトでは、データセンターの冗長性確保、コンテンツ配信ネットワーク、非同期レンダリングといったあらゆる戦略を駆使して、高レベルの応答性維持に努めています。 メトリックを高レベルに維持するためには、常時計測することが必要になります。その鍵となるのがテレメトリです。テレメトリとはアプリのパフォーマンスに関するデータを収集したもので、分析ツールによってアプリの実行状況やユーザーによるアプリの利用方法がさまざまな種類の図表で示されます。これを利用することで、特定のインシデントを詳細に調査することが可能になります。また、アラートを設定すれば、アプリが大量の例外をスローした場合や実行速度が低下した場合、存在が確認できなくなった場合などにすぐに対処することもできます。 通常の CRUD (英語) アプリケーションの監視には、主に次の 2 種類のシナリオがあります。 可用性 稼働状況: 顧客がサービスにアクセスできない場合、企業はすぐに対処する必要があります。 信頼性: パイプラインの中でデータ損失がないかを確認します。 可用性は公開されている SLA に影響し、エンド ユーザーのエクスペリエンスに影響します。そして、「代金をちゃんと支払っているのにシステムがダウンした。支払った代金はどうなるのか?」、「システムがダウンしていてチケットが取れない」などのクレームにつながります。 パフォーマンス 応答性: ユーザーがサイトを使用 (検索、読み込み) できるようになるまでに要した時間を確認します。 レイテンシ: ユーザーの要求からデータの処理や格納 (作成、更新、削除) までのラウンド…


マイクロソフトと Java – Java 開発者向けの各種クラウド リソースのご紹介

このポストは、4 月 10 日に投稿された Java at Microsoft – A great selection of cloud options for Java developers の翻訳です。 現在 Java を使っているけれど Microsoft Azure に関しては何から手を付けてよいかわからないという方、また、既に Azure を利用中で手元の Java アプリケーションをさらにレベル アップさせたいと考えている方は、ぜひこのブログ記事をお読みください。 Microsoft Azure では、クラウドを利用する Java 開発者様向けのリソースを多数ご用意しています。ここでは、現在マイクロソフトが提供中のリソースをまとめてご紹介したいと思います。 Java 開発者ツール Azure Cloud Services へのアクセスには、Java 用 Azure SDK をご利用ください。この SDK は Windows、Mac、Linux で実行可能です。オープン ソースとなっており、GitHub (英語) からダウンロードできます。 Eclipse で開発を行っている方は、Windows、Mac、または Linux 上の…


Application Insights SDK for Java の概要

このポストは、3 月 9 日に投稿された Introducing the Application Insights SDK for Java の翻訳です。 Java Web アプリケーションを公開する場合、ユーザーがそのアプリケーションをどのように使用しているか、アプリケーションがどのように動作しているかを明確に把握する必要があります。将来を見据えて最も効果的な計画を立てるためには、ユーザーがどのような機能を気に入っているのか、どのようなパターンで利用しているのか、またどのようなことで困難さを感じているのかなど、ユーザーの利用状況を十分に理解することが欠かせません。また、応答速度や高負荷時のパフォーマンスの変化など、アプリケーションのパフォーマンスが十分に保たれているかどうかも把握する必要があります。さらに、パフォーマンスの低下や例外の発生時にすぐさま通知が届くように設定したり、問題を診断する際に高度なフィルターや検索機能を使用してイベント トレースを調査したりできると便利です。 Visual Studio Application Insights を使用すれば、強力な利用状況分析、パフォーマンス監視、診断分析によって、そうしたアプリケーションに関するあらゆる情報を把握できます。Application Insights を使用するには、アプリケーションに SDK を追加します。Application Insights の Web ポータルに利用統計情報が送信され、メトリックやイベントを詳細に分析したり、必要なアラートを構成したりできるようになります。 利用統計情報は、サーバーや Web ページ、Windows Phone や Windows ストア アプリといったさまざまなクライアント アプリケーションから送信できます。使用する API は各プラットフォームで共通です。また、定期的に Web サイトに ping を送信する Web テスト サービスもあり、サイトが稼働していることや良好に応答していることを確認できます。 マイクロソフトは、先日開催された EclipseCon (英語) で Application Insights SDK for…

1

Java 用 Azure 管理ライブラリの利用開始

このポストは、9 月 15 日に投稿された Getting Started with Azure Management Libraries for Java の翻訳です。 Microsoft Azure SDK for Java のバージョン 0.5.0 のリリースに併せて、Java SDK でのサービス管理機能が新たにサポートされました。サービス管理に関しては既に Azure SDK for .NET (英語) や Azure SDK for Node.js (英語) でリッチな機能が提供されていますが、Java SDK としては新機能となります。.NET や Node.js の SDK およびストレージ チームの Java SDK (英語) と同様に、サービス管理用の Java SDK も GitHub のオープン ソース (英語) コードです。この記事では、Java…


Azure Web サイトで Java をサポート

このポストは、4 月 4 日に投稿された Java on Azure Web Sites の翻訳です。 編集メモ: 今回は、Windows Azure Web サイト チームでプログラム マネージャーを務める Chris Compy による記事をご紹介します。 マイクロソフトは、Azure Web サイトで Java ベースの Web サイトのサポートを開始します。この機能は、多数の一般的な Java のシナリオを満たすために、Azure Web サイトの管理性と手軽なスケーリング オプションを組み合わせたものです。 以下のサポートが、ポータルのユーザー エクスペリエンスに組み込まれています。 Java 1.7.0_51 (32 ビット) – 既定でサポートされる Java のバージョン Tomcat 7.0.50 – 既定の Java コンテナー Jetty 9.1.0 この UI では、ユーザーが Java のバージョンを選択し、さらに…


Java Spring Framework アプリケーションを Windows Azure に移行する

このポストは、11 月 6 日に投稿された Migrating a Java Spring Framework Application to Windows Azure の翻訳です。 マイクロソフトは、Windows Azure の Java 関連テクノロジを多数ご紹介している、実践形式の新しいチュートリアル (英語 : 日本語版準備中) とサンプル コードを公開しました。このガイドでは、チュートリアル形式で Java Spring Framework アプリケーション (PetClinic サンプル アプリケーション) を Windows Azure クラウドに移行する方法を説明しています。このガイドで使用されているコードは、GitHub (英語) でも公開されています。Java 開発者の皆様は、ぜひこの新しいサンプルとチュートリアルをダウンロードしてお試しください。 詳細 Windows Azure はオープンなクラウド プラットフォームであり、Microsoft .NET、Java、Node.js、PHP、Python、Ruby などの広範なプログラミング言語やフレームワークをサポートしています。このガイドは、一般的な Java アプリケーションを Windows Azure クラウドに移行する方法を紹介しているもので、特に Java 開発者を対象としています。一般的な Spring Framework のサンプル…


Windows Azure Active Directory を利用してシングル サインオンを実現する

このポストは、8 月 6 日に投稿された Implementing Single Sign-on with Windows Azure Active Directory の翻訳です。 編集メモ: 今回は、Windows Azure の ID フェデレーション チームのテクニカル ライターを務める Gayana Bagdasaryan の投稿をご紹介します。 この投稿では、Windows Azure Active Directory を利用して実装できる Web シングル サインオンの基本的なシナリオについて取り上げています。 詳細に進む前に強調しておきたいのは、現在利用可能なのは Windows Azure Active Directory の開発者向けプレビュー版であるということです。したがって、Windows Azure Active Directory が一般向けにリリースされれば、よりシンプルかつスムーズに実装できるようになるでしょう。この投稿の目的は、プレビュー版で試してみるのをお勧めすることです。 このシナリオは、ID 関連の状況ではとてもシンプルで一般的なものです。たとえば、あなたが独立系ソフトウェア ベンダとして、ビジネス アプリケーションをクラウドで提供しているとしましょう。顧客は Office 365 サブスクリプションを利用している企業です。その企業の従業員が Office 365 のアプリケーションにアクセスするのと全く同じ方法で、ビジネス アプリケーションにアクセスできるようにしたいとあなたは考えています。つまり、Web シングル サインオン…


Windows Azure での Java 開発に関する最新リソース

このポストは、8 月 1 日に投稿された New Java Resources for Windows Azure!  の翻訳です。 編集者メモ: 本日の記事は、Walter Poupore (Windows Azure IX チームの主任プログラミング ライター) からのものです。この記事では、Windows Azure で Java アプリケーションを開発する際に役立つ参考資料を紹介します。 Windows Azure での Java アプリケーションの開発および展開については、Windows Azure Java デベロッパー センター (英語) を起点として詳細情報を探すことができます。このサイトには継続的にコンテンツが追加されていますので、この記事では最近追加された内容をいくつか紹介していきます。 Java ソリューションに仮想マシンを使用する Windows Azure 仮想マシンはプレビュー サービスとしてリリースされています (こちらの記事で紹介)。仮想マシンを Java ソリューションに活用する方法は、以下の新しい Java チュートリアルで確認できます。 Java アプリケーション サーバーを仮想マシンで実行する方法 (英語)- このチュートリアルでは、Windows Azure 仮想マシンの作成方法と、その仮想マシンを Java アプリケーション…


Windows Azure に新サービスと新たな強化機能を追加

このポストは、6 月 8 日に投稿された Now Available: New Services and Enhancements to Windows Azure の翻訳です。 いま、時代はオンプレミス運用とクラウド コンピューティングの利点を組み合わせたハイブリッド クラウドへと移りつつあります。このたび、仮想マシン、仮想ネットワーク、および Web サイトの各サービスが、Windows Azure の プレビュー 版で新たにご利用いただけるようになりました。また、SQL レポートは一般向けのリリースが提供されます。さらに、ローカル冗長ストレージ オプションが追加されお客様の選択肢が広がるなど、既存の Windows Azure サービスの強化機能が追加、公開されています。今回の更新で、お客様独自の方法でアプリケーションを開発し、クラウドで利用する際の自由度が広がります。 また、料金の改定および販売単位の変更により、全体的な価値の向上を図っています。ネットワーク、CDN、ストレージの各サービスの段階的料金設定、Windows Server および 非 Windows 仮想マシンの プレビュー 版の料金を変更したほか、ストレージおよび CDN のトランザクション料金を 90% 引き下げました。 以降では、これらの変更点について詳しく説明します。他に、これらの機能強化に関する技術的な詳細やその他有用な情報についてもご参照ください。 詳細は以下の通りです。 既存サービスの機能強化 SQL レポート: 一般向けリリースの SQL レポートでは、レポートをクラウドで公開したり、オンプレミス アプリケーションに直接埋め込んで、モバイル デバイスや PC のブラウザーからアクセスしたりできます。また、SLA による完全な保証が用意されています。詳細についてはこちらをご覧ください。 キャッシュ: キャッシュ…