Microsoftは、ファンクションでキューとトピックを利用できるようになり、Azure Service BusをサポートするベータプレビューのAzure WebJobs SDK 3.0をリリースした。SDKには改善されたファンクション検出メカニズムとキャンセルトークンの追加サポートとシャットダウン処理中に管理者に対して自動的に通知することができるWebJobsシャットダウン通知が含まれる。また、以下に示すようにhost.call()を通じて呼びだされる関数でトリガーを適用する機能を提供する。
JobHost host = new JobHost(); host.Call(typeof(Program).GetMethod("TriggerOnQueue"), new { inputText="input" });
新しく導入されたJobHostConfiguration()関数は、Azure StorageとService Busのアカウントに対するデフォルトのconnectionStringを上書きすることができる。Microsoftは、WebJobs SDKに含まれている機能を探索するために使えるソースコードつきのサンプル を提供している。
Azure WebJobs SDKの主な目的は、Webサイトでサービスやバックグラウンドタスクの実行をシンプルにすることである。これはトリガーや連続したWebJobsとして実行ファイルをアップロードして実行することができる。また、アプリケーションのモニターを簡単にし、CPU負荷の高い処理のイメージやキュー処理に役立つのに加え、RSSアグリゲーション、ファイルメンテナンス、Eメール配信を可能にする診断とモニタリングメカニズムを提供する。
このリリースではブランドの変更に伴い、パッケージ、アセンブリ、名前空間の名前が変更されて、更新されたネーミングシステムが反映されている。たとえばMicrosoft.WindowsAzure.Jobs.HostはMicrosoft.Azure.Jobsに更新され、Microsoft.WindowsAzure.Jobsは、Microsoft.Azure.Jobs.Coreに更新されている。
最新のアップデートでは、開発者がマネージメントダッシュボードで実行、中断することができるモニター機能を提供する。また、関数のトリガーで、関数のパラメータに属性を指定する代わりに、メッセージを特定の型やString, TextReader, TextWriterなどのCLR型にメッセージをバインドすることができる。
Microsoftはまた、トリガーされたQueueInputをQueueTriggerに名称変更したり、QueueOutputをQueueにしたりと多少の変更を加えた。同じくトリガーされたBlobInputをBlobTriggerに改称したが、BlobInputとBlobOutputはBlobにした。
SDKにはキューメッセージのdequeueCountへのアクセスに加えて、Azure Storage Queueタイプにバインドする機能を提供する。
public static void PropertyBinding( [QueueTrigger("inputqueue")] string inputText, int dequeueCount) { }
公式ブログの記事においてプログラム マネージャーのPranav Rastogi氏は、ASP.NETは、すべての新機能に関する詳細なソースコードを提供してきた。
WebJobs SDKはNuGetギャラリーからダウンロードでき、NuGet Package Manager Consoleからインストールすることができる。
Install-Package Microsoft.Azure.Jobs -Pre
もしMicrosoft Azure Service Busトリガーを使いたい場合は以下のコマンドを使う必要がある:
Install-Package Microsoft.Azure.Jobs.ServiceBus -Pre
Microsoftはまた、新しいパッケージ名を反映したパッケージを提供する
Update-Package Microsoft.WindowsAzure.Jobs -Pre Update-Package Microsoft.WindowsAzure.Jobs.Host -Pre
WebJobsをデプロイするには、ポータルページを利用するか、Visual Studio拡張のWebJobsVsを使ってFTP, Git, Web Deployを使うことができる。Rastogi氏はまた、前回のアップデートで導入された既存の機能をのぞき見に加えて、WebJobsを学ぶのに役立つリストを提供した。