ブックマーク / qiita.com/TsuyoshiUshio@github (7)

  • Azure Functions の 超イケてる Durable Functions を使ってみる - Qiita

    Azure のサーバーレスサービスである Azure Functions で、Durable Functionsという新しい機能が公開されました。もちろんまだ GA ではありませんが、自分的には相当熱い機能です。これを教えてくれた Kanio と、これあったら、もうサーバーイランのとちゃうん!と盛り上がりました。これもいつも通り、自分のためのメモとしてかいていきます。 1. 全体像 Durable Fucntions は Azure の extension で、ロングランニングで、ステートフルなFunction のオーケストレーターです。これだけではよくわからないと思うので、ユースケースを見てみましょう。 今回は公開されたというレベルなので、発展途上ですが、既にこんな機能が実装されています。具体的な実装例が、ここで見れます。 1.1. Function Chaining Function

    Azure Functions の 超イケてる Durable Functions を使ってみる - Qiita
  • 明示的なインターフェイス実装 - Qiita

    C# の IEnumerator Interfaceのページによくわからないコードがあった。師匠に聞いてみると、明示的なインターフェイス実装というコーディング方法らしい。ちょっと試してみた。 通常のインターフェイス実装 public interface IFoo { string GetSome(); } public class Foo : IFoo { public string GetSome() { return "Foo!"; } } : static void Main(string[] args) { IFoo foo = new Foo(); Console.WriteLine($"IFoo: {foo.GetSome()}"); Console.WriteLine($"Foo : {((Foo)foo).GetSome()}"); :

    明示的なインターフェイス実装 - Qiita
  • かずき師匠にクソコードをレビューしてもらった学び ーリファクタリング編 - Qiita

    かずき師匠にいつもたすけてもらっているが、今日も自分で書いたコードをかずき師匠にレビューしてもらった。自分で学んだ新しいこともあるし、ここに記録していつでも実行できるようにしておきたい。 お題 こんな感じの Extension メソッドがあり、これがあると、同時実行数を制御しながら並列実行できる。ところが、お客様の要件としては、重い処理の大半が並列作業だが、順序実行が必要な軽い処理がある。どうするか?というお題を解く必要があった。 public static async Task ParallelForEachAsync<T>(this IReadOnlyList<T> items, int maxConcurrency, Func<T, Task> action) { using (var semaphore = new SemaphoreSlim(maxConcurrency)) {

    かずき師匠にクソコードをレビューしてもらった学び ーリファクタリング編 - Qiita
  • カツラ検出プログラムで学ぶ C# Attributes - Qiita

    今日も自分の学びに対するメモです。Azure Functions を書いていると必ず出てくる Attributes ですが、カスタムの Attributes を書くときにどんなコードになるのか知りたかったので調べて書いてみました。 題材として、被告人がいて、自分がズラかどうかを告白するのですが、Attributes によってそれを見破るプログラムを作ってみました。 カスタムAttributes の定義 Attributes の定義は次のようになっていて。単なる普通のクラスです。コンストラクタを書いておくと、クラスやメソッドに対して、Attributes をつけられるようになる様子です。 AttributeUsage でAttribute であることを明確にします。Attribute 名は、Attribute の接尾句を省略したものになるので、ここでは、[GHDetect] という Attr

    カツラ検出プログラムで学ぶ C# Attributes - Qiita
  • Visual Studio Code for Mac C# 試したら、インテリセンスが効かずエラーが出たのでその対処 - Qiita

    Visual Studio Code for Mac C# 試したら、インテリセンスが効かずエラーが出たのでその対処C#VisualStudioCode 単なるじぶんに対するメモ。 .NET Core 入っているのにインストールしろと言われる Visual Studio Code で C# を Mac から試したら、何やらエラーが出てうまく動かなかった。.NET Core を入れろや!というエラーメッセージが出てくるのだが、そんなものとっくに入っている。ちなみに $ dotnet --info .NET Command Line Tools (2.0.0) Product Information: Version: 2.0.0 Commit SHA-1 hash: cdcd1928c9 Runtime Environment: OS Name: Mac OS X OS Version: 1

    Visual Studio Code for Mac C# 試したら、インテリセンスが効かずエラーが出たのでその対処 - Qiita
  • Azure で とっても簡単に python のサーバレス環境を作ってみる - Qiita

    同僚から、Azure のサーバーレスに対して一つのリクエストをもらった。彼は、python で書きたいらしい。サーバーレスのもっとも良いところは、サーバーをある意味気にしなくていいところだが、使ったぶんだけ課金というパートを除けば、常にクラスタをデプロイしたままでのサーバーレス環境も生産性という意味では悪くないかもしれない。 自分がサーバーレスの世界に求めるのは、何と言っても簡単さだ。だから、セットアップもできるだけしたくない。今回は、たまたまハッカソンで触った OpenFaaS という Swarm / k8s にデプロイしたら動くシンプルなものを作って、彼のデマンドに答えてみたい。OpenFaaS は、ストレージや、キューのトリガーすらない、httpだけの非常にシンプルなものだ。 基礎的なアイデア 基礎的なアイデアはとしてもシンプルだ。彼からのお題は、ブロブにアップロードした画像解析をp

    Azure で とっても簡単に python のサーバレス環境を作ってみる - Qiita
  • 瞬殺で作るMesos + Chronos + Marathon + Dockerクラスタ環境 - Qiita

    記事では、瞬殺でApache Mesosの環境を簡単に試してみたい方のために、Apache Mesos + Chronos + Marathon + Dockerのクラスタを簡単にセットアップするための方法をご紹介いたします。 Apache Mesosとは Apache Mesosは、クラスタリソースマネージャであり、物理マシン(または仮想マシン)を1つのクラスタとして管理し、タスクを処理させたいときに、空いているマシンを探して、そこでリソースを割り当てて実行してくれるような仕組みです。この説明部分は正月休みだし Mesos 触ってみたという素晴らしい記事を参考にしています。すごくわかりやすい説明でした。 Marathonとは Apache Mesosでタスクを実行すると、どこかのサーバーでタスクを実行してくれるわけなのですが、タスクの実行をするのは一瞬です。これは、通常のOSでの挙動に

    瞬殺で作るMesos + Chronos + Marathon + Dockerクラスタ環境 - Qiita
    prototechno
    prototechno 2016/08/04
    この記事参考にしよ〜🎵
  • 1