タグ

ブックマーク / diary.sorah.jp (4)

  • 非同期ジョブをユーザーアクションに組み込まない

    (勤務先に投稿した社内ブログの焼き直しです) ある日同僚から ActiveJob の perform_later で Barbeque にキューした非同期ジョブの起動が遅いと言われた。が、非同期ジョブの使い所について個人的な考えを書いてみることにする。 相談は「非同期ジョブの結果をユーザーに返しているため、高速になって欲しい。現状、最大で数分の時間を要す旨のメッセージを表示している」という内容でした。具体的には {内部 API} が重く、一部の処理を非同期ジョブにしていてユーザー体験の悪化につながっているとのこと。 盲目的に非同期にしても嬉しいことはない 結論としては、非同期にするのであれば丁寧にやれば良いけど、そもそも同期的でよくない? と考えて欲しいと返した。 まず、個人的にはユーザーアクション起因かつユーザーへフィードバックする必要のある処理を非同期ジョブにするのは当に長時間かかる

    fjwr38
    fjwr38 2024/01/20
  • NTT フレッツ光における通信速度などの現状について、背景や仕組みから正しく理解する 2020

    会社でフルリモート体制が築かれるにつれ、各スタッフの自宅の回線などについての相談を受けることが増えてきました。ということで、筆者 sorah の見解として 2020 年の NTT フレッツ光網について、主に通信速度や輻輳についての問題を理解するための背景と仕組みを説明しようと思います。 理解が間違っていたら教えてください。なるべく総務省や NTT の資料からソースを集めてきた上で説明していますが、出典不明の情報も混ざっているかもしれません。できるだけ具体的な出典を文単位で示していますが、複数の資料に渡る複雑なトピックに関しては文末に纏める形になっています。 技術的な意味での細かい解説よりも複雑な事情や背景の説明が中心です。フレッツ光とか NGN とか IPoE とか IPv6 とか v6 プラス・アルファみたいな言葉を聞いて、なんでそんな難しいんだと思った人も多いんじゃないでしょうか。エン

    fjwr38
    fjwr38 2020/06/21
  • Ruby 2.1.1 で Hash#reject のデグレ

    Ruby 2.1.0 まで、Hash を継承したクラスの reject メソッドの挙動は継承クラスのオブジェクトを返す挙動をしてました。 しかし、 Ruby 2.1.1 で意図せずその挙動が変更され、必ず Hash クラスのオブジェクトが返されるようになりました。 class SubHash < Hash; end p SubHash.new.reject{}.class #=> 2.1.0: SubHash 2.1.1: Hash p Hash.new.reject{}.class #=> 2.1.0: Hash 2.1.1: Hash (厳密には ivar 等その他の属性もコピーされなくなっています。 また、Ruby 2.1 からはバージョニングポリシーの変更により、2.0.0 までのパッチリリースにあたるリリース時で TEENY が増えます。詳細は今月の WEB+DB で!) この挙

    fjwr38
    fjwr38 2014/03/03
  • fluentd の output plugin のテストのかきかた

    fluentd のプラグインのテストで、他のoutputも利用するタイプのプラグインはどうテストするのかなあと思ってしらべてみた。@tagomoris さんの out_forest はちゃんとテストが存在したのでそれを読む事に。 https://github.com/tagomoris/fluent-plugin-forest/blob/master/test/plugin/test_out_forest.rb#L416 まず fluentd のプラグインのテストの書き方から理解していないので理解しなければ、と 公式ドキュメント を読むと: Please see Fluentd’s source code for details. うっ、はい… まず前準備に Fluent::Test.setup を呼ばないといけないっぽい。これ、engine.rb に書いてある所為でgrepしないと見つか

  • 1