タグ

ブックマーク / dev.classmethod.jp (2)

  • 【Scala】foldとfoldLeftの違いを知る | DevelopersIO

    はじめに こんばんは! 突然ですが、 Scala における fold と foldLeft はほとんど同じものだ!と思っていませんか? また、Scala の Option#fold メソッドを使って、何か不自然に思ったことはありませんか? 先に結論を述べますと、 fold メソッドと foldLeft メソッドは異なります(もちろん foldRight とも違いますよ!)。 「ちょっとだけ挙動に差が…」的な違いではなく、根的に違います。 たまたま、 List#fold と List#foldLeft が(例外的に)似たような定義で、かつ(例外的に)似たような挙動をするため、誤った通説(全てのfold≒foldLeft)があったりなかったりするようです。少なくとも僕は、Scala を書くようになってからある一定の期間、全ての fold と foldLeft は同じものだと考えていました。

    【Scala】foldとfoldLeftの違いを知る | DevelopersIO
    thimura
    thimura 2017/07/05
  • Norikra+FluentdでDoS攻撃をブロックする仕組みを作ってみた | Developers.IO

    Norikraとは Norikraとはリアルタイム集計プロダクトです。イベントストリームに対してSQLライクな言語で処理を書くことが出来ます。 例えば、ApacheのアクセスログをNorikraに流し込み、1分あたりのアクセス数やレスポンスタイムの最大値をリアルタイムに集計することが出来ます。 Norikraの利用例は作者であるtagomorisさんのブログで紹介があります。 今回は、Norikraを使ってDoS攻撃をブロックする仕組みを作ってみました。 DoS攻撃ブロックの仕組み アクセス元はApacheのアクセスログから取得し、ログの受け渡しにはFluentdを利用しました。 ブロックの手順は以下のようになります。 アクセスログをFluentdのin_tailプラグインで取得。 Fluentdのout_norikraプラグインで、アクセスログをNorikraに流し込み。 Norikra

    Norikra+FluentdでDoS攻撃をブロックする仕組みを作ってみた | Developers.IO
    thimura
    thimura 2014/07/31
  • 1