タグ

イメージとrubyに関するkenzy_nのブックマーク (4)

  • Rubyを研鑽した話

    研鑽Rubyの話 研鑽Ruby出ましたね。 レビューに参加させてもらってコメントさせてもらいました。主に実装周りと性能周り。書についてはいくつか素敵な書評が出ているのであまり書きませんが、なるせさんが書いていた やりたいことに対していくつもの書き方がある "There is more than one way to do it" なRuby において、『研鑽Rubyプログラミング』はきっとまだ行くべき道を見定められない人の助けとなることでしょう。 という表現はまさに的を射た書評だと思います。Jeremy 流の書き方のご紹介。いろんな書き方を知るのは良い勉強になります。ただ、素直にすべて鵜呑みにするとまずそうなだと思うので、自分や人の意見を確認しながら、批判的に読むと良いと思います。まぁ、どんなでもそうかもしれませんが。 Ruby を研鑽した話 で、Rubyの性能に興味のあるパーソンと

    Rubyを研鑽した話
    kenzy_n
    kenzy_n 2023/04/20
    Rubyを磨き上げて更なる輝きを得る。
  • Ruby 3.2.0dev にマージされた Rust YJIT をビルドする - koicの日記

    YJITRust 実装がマージされました。いまのところ今年の Shopify からの代表作ではと見ています (YJIT 自体は Ruby 3.1 で C 実装導入されている機能です) 。 github.com そういうわけで、現在の Ruby 3.2.0dev で YJIT を有効にする場合は、Rust の処理系 (1.60.0 1.58.1 以上) が必要になります。Rust のインストールに使う rustup については以下の公式ページなどを参照してください。 www.rust-lang.org YJIT はデフォルトではビルドされません (なので YJIT を使わないビルドであれば Rust 処理系は不要です) 。 デフォルトの YJIT なしの Ruby をビルドしている場合は --yjit オプションを渡しても、ruby: warning: Ruby was built w

    Ruby 3.2.0dev にマージされた Rust YJIT をビルドする - koicの日記
    kenzy_n
    kenzy_n 2022/04/28
    どちらも頑張って
  • RubyとAWSでつくるメディアストレージ基盤 - Qiita

    概要 基盤の果たす役割としては、「利用者が基盤に向けてファイルをアップロードし、なんらかの(変換を含む)処理を行って利用サービス側に通知する」というものになる。 そこで、想定する利用イメージを大まかにでも理解してもらうため、抽象的なイメージを図示する。 ファイルをアップロードしたいユーザーは、まず基盤の利用サービスに対してアップロード権限の発行を依頼する。 図では省略したものの、利用サービス側はその依頼を受けて、基盤に対してアップロードチケットの発行を依頼し、取得した情報をアップロードしたいユーザーに対して返す。 アップロードユーザーはそれを受けて、基盤に対してファイルのアップロードを行い、アップロード・バリデーション・変換が済んだものについては基盤が利用サービスに結果を通知するというのが大まかな流れとなる。 次に、基盤の持つ責務について簡単に解説したい。 基盤は、メディア

    RubyとAWSでつくるメディアストレージ基盤 - Qiita
  • Ruby 製バッチ処理を省メモリ化した - おいちゃんと呼ばれています

    少し前に Ruby 製のバッチ処理を省メモリ化したときの話をメモしておきます。 どのようなバッチ処理だったか 動画共有サイトにアップされた動画がオトナの事情によって削除されることがしばしばあるということは周知のことだと思う。そこで、一定時間おきに配信元サイトをチェックして、もし動画が配信元から削除されていたら、当該動画をこちらのサイトでも動画一覧に表示させないようにする、検索に引っ掛からないようにする、ということをやっていた。 便宜上、そのバッチ処理のことを「(動画の)存在確認くん」と呼ぶ。 oom-killer に殺されていた 彼は非常にデキる子だったが、なんか最近、動画の落とし漏れがあるなーと感じた。原因を調べたら、メモリをい過ぎて oom-killer に殺されていた。 cat /var/log/messages Apr 6 12:46:45 xxx001 kernel: Out

    Ruby 製バッチ処理を省メモリ化した - おいちゃんと呼ばれています
  • 1