タグ

ブックマーク / neue.cc (3)

  • neue cc - グラニのC#フレームワークの過去と未来、現代的なASP.NETライブラリの選び方

    Build Insider MEETUP with Graniというイベントで、グラニのC#フレームワーク(というほどのものはない!)の今までとこれからってのを話しました。 そのうちBuild Insiderで文字起こしとか公開されると思います。 2015年の今、どういうライブラリを選んだか、とかNLog大脱却、とかって話が見どころですかね。うちの考えるモダンなやり方、みたいな感じです。 実際、EventSourceやSemantic Logging Application Blockは良いと思いますので、触ってみるといいですね。少なくとも、イマドキにハイパーヒューマンリーダブル非構造化テキストログはないかなぁ、といったところです。 スライドにしたら判別不能になったOWINのStartup部分も置いておきます、参考までに。 // 開発環境用Startup(番では使わないミドルウェア/設定

    dann
    dann 2015/03/28
  • neue cc - ForEachAsync - 非同期の列挙の方法 Part2

    Part2って、Part1はあったのかというと、うーん、非同期時代のLINQ、かな……?さて、今回はForEachがテーマです。といってもそれってSelect+WhenAllでしょ!「Selectは非同期時代のForEach」って言ってたじゃない、というと、はい、言ってました。まだ他に言うことあるの?というと、例えば以下のシチュエーション。 var httpClient = new HttpClient(); var tasks = Enumerable.Range(1, 100000) .Select(async x => { var str = await httpClient.GetStringAsync("http://hogehoge?q=" + x); Console.WriteLine(str); }); await Task.WhenAll(tasks); 別に動きはします

    dann
    dann 2014/12/24
    “SetMinThreadsとMaxDegreeOfParallelism”
  • neue cc - Http, SQL, Redisのロギングと分析・可視化について

    改善は計測から。何がどれだけの回数通信されているか、どれだけ時間がかかっているのか、というのは言うまでもなく重要な情報です。障害対策でも大事ですしね。が、じゃあどうやって取るの、というとパッとでてくるでしょうか?そして、それ、実際に取っていますか?存外、困った話なのですねー。TraceをONにすると内部情報が沢山出てきますが、それはそれで情報過多すぎるし、欲しいのはそれじゃないんだよ、みたいな。 Grani←「謎社」で検索一位取ったので、ちょっと英語表記の検索ランキングをあげようとしている――では自前で中間を乗っ取ってやる形で統一していて、使用している通信周り、Http, RDBMS, Redisは全てログ取りして分析可能な状態にしています。 HTTP HttpClient(HttpClientについてはHttpClient詳解を読んでね)には、DelegatingHandlerが用意され

  • 1