November 28, 2017

Azure Blob アップローダーをGoで書いた、そしてその理由

Azure Blob アップローダーをGoで書いた ふたつほど理由があり、GolangでAzure Blobのファイルアップローダーを書きました。 ひとつめの理由: SDKが新しくなったから 最近公式ブログで紹介された通り、Azure Storage SDK for Goが再設計され、プレビューが始まりました。GoはDockerやKubernetes、Terraformなど最近話題のプラットフォームやツールを書くのに使われており、ユーザーも増えています。再設計してもっと使いやすくしてちょ、という要望が多かったのも、うなずけます。 ということで、新しいSDKで書いてみたかった、というのがひとつめの理由です。ローカルにあるファイルを読んでBlobにアップロードするコードは、こんな感じ。 (2018/6/17) 更新 SDKバージョンを 2017-07-29 へ変更 関数 UploadStreamToBlockBlob を UploadFileToBlockBlob に変更 Parallelism オプションを追加 ヘルパー関数 handleErrors を追加 package main import ( "context" "flag" "fmt" "log" "net/url" "os" "github.com/Azure/azure-storage-blob-go/2017-07-29/azblob" ) var ( accountName string accountKey string containerName string fileName string blockSize int64 blockSizeBytes int64 parallelism int64 ) func init() { flag.StringVar(&accountName, "account-name", "", "(Required) Storage Account Name") flag.StringVar(&accountKey, "account-key", "", "(Required) Storage Account Key") flag. Read more

© Copyright 2019 Toru Makabe

Powered by Hugo & Kiss.