Ruby

 Computer >> コンピューター >  >> プログラミング >> Ruby
  1. AppSignal Ruby Gem 3.1リリース – MRI VM Magicダッシュボードでパフォーマンスを即座に可視化

    AppSignal for Ruby gem 3.1のリリースをお知らせします。今回のバージョンでは、MRI VMの統計情報を表示するMagic Dashboardが新たに追加されました。最新のRuby gemへアップグレードするだけで、新しいプローブからデータが流れ込み次第、AppSignal上にこのダッシュボードが自動的に作成されます。 実際のダッシュボードはこちらです: Magic Dashboardは、面倒な初期設定なしでアプリケーションへの深いインサイトを提供してくれる機能です。Puma、Sidekiq、ActiveJob、ActionMailerなどの主要gemについても、自動的

  2. AppSignalがAlpine Linux ARMを正式サポート、サーバー監視をさらに安心に

    本日、Alpine Linuxが動作するARMマシン向けのサポートを開始しました。この機能は、RubyおよびElixirのユーザー向けに提供されます。将来的には、Node.jsパッケージにもAlpine Linux ARMのサポートを追加したいと考えています。 ARM CPUアーキテクチャは、開発マシンから本番サーバーまで、その存在感をますます高めています。こうした流れを受け、AppSignalではサポート対象OSのリストにARMを追加することにしました。 インストール手順 パッケージのインストール方法は従来と変わりません。ARMマシンは自動的に検出され、お使いのシステムに適した拡張機能とエー

  3. Rubyのメモリリークを見つけて修正する方法:memory_profilerとderailed_benchmarks徹底活用ガイド

    本記事は、メモリリークに関する2部構成シリーズの後編です。前編では、Rubyがどのようにメモリを管理し、ガベージコレクション(GC)がどのように動作するのかを解説しました。 大容量メモリを搭載した高性能なマシンを用意することはできるかもしれませんし、アプリを頻繁に再起動すればユーザーが気づかないかもしれません。それでも、メモリ使用量は重要です。 メモリの確保(アロケーション)とガベージコレクションは無料ではありません。メモリリークがあると、本来アプリにさせたい処理ではなく、ガベージコレクションに費やす時間がどんどん増えていきます。 この記事では、メモリリークの発見と診断に役立つツールについて、

  4. Magic DashboardsでRubyアプリのパフォーマンス監視を強化する方法

    アプリケーションチームにとって、顧客がどのような体験をしているのかを把握することは不可欠です。これは、ユーザビリティやレスポンスの良さといった全般的な観点だけでなく、日々の運用における一分一秒単位の変化についても当てはまります。 特に分散システムを扱う場合、エラーの発生は避けられません。サイトへのトラフィックは一日の中で変動し、システムが依存するコンポーネントのいずれにも、いつ問題が起きてもおかしくないからです。 本記事では、「マジックダッシュボード(Magic Dashboards)」を活用して、Ruby on Railsアプリケーションのパフォーマンス問題を監視・解決する方法を解説します。

  5. RubyとRails向けJITコンパイラ徹底解説:YJIT・MJIT・TenderJITでパフォーマンスを向上させる方法

    実行前にコンパイルするのではなく、プログラムの実行時にコンパイルを行う手法があります。これが「ジャストインタイム(JIT)コンパイル」、あるいは「動的翻訳」と呼ばれるものです。 この記事では、まずRuby on RailsアプリケーションにとってJITコンパイルが有効な選択肢となり得る理由を解説し、その後、利用可能な主要なオプション(YJIT、MJIT、TenderJIT)の概要と導入方法をご紹介します。 その前に、まずはJITコンパイルの仕組みから見ていきましょう。 JITコンパイラの仕組み ジャストインタイムコンパイルとは、プログラムの実行中にコードのコンパイルを行う方式です。 ソースコー

  6. RubyCriticでRubyコードの品質を向上させる:視覚的な分析と継続的な改善

    RubyCriticは、Rubyアプリケーションにおけるコードの臭い(code smells)、コード構造、テストのしやすさ、テストカバレッジなどを可視化したレポートを提供するツールです。 現在も活発に開発が続けられており、新しいコード解析機能が次々と追加されています。リリース情報を定期的にチェックする価値は十分にあります。 本記事では、RubyCriticのメリット、内部の依存関係、そしてレポートの読み方について解説します。 それでは始めましょう! Ruby on RailsアプリケーションにRubyCriticを選ぶ理由 プロジェクトのコード改善点を一箇所で確認したいのであれば、RubyC

  7. TrixとTurbo Framesを使ってRailsで動的テーブルエディタを作成する方法

    この記事では、Railsアプリケーション向けに基本的なActionTextテーブルエディタを実装する方法を解説します。以下の内容を学ぶことができます。 ActionTextとTrixがアタッチメントをどのように扱うのか 独自のAttachable型を実装し、それを活用して基本的なテーブルエディタを構築する方法 Turbo Framesを使ってテーブルを編集する方法 Turboが役に立つ一方で、同時に障害にもなり得るという事実 本記事は、2020年の優れたブログ記事「Adding Tables to ActionText With Stimulus.js」にインスピレーションを得ています。た

  8. ユーザー数の大幅な増加に備える Ruby on Rails のスケーリング戦略

    本記事では、Ruby on Rails アプリケーションを大規模なユーザーベースまでスケールさせるために活用できるさまざまな戦略について詳しく解説します。 アプリケーションをスケールする最も分かりやすい方法は、とにかくお金をかけることです。実際、これは驚くほど効果的です。サーバーを数台追加し、データベースサーバーをアップグレードすれば、多くのパフォーマンス問題はあっという間に消え去ります。 しかし、サーバーを増やさずともアプリケーションをスケールできるケースは少なくありません。今回はそのようなアプローチについて掘り下げていきます。それでは始めましょう! まずは AppSignal で Rail

  9. NoticedとCableReadyでRailsアプリに堅牢なシステム通知を実装する方法

    本記事は、著者の著書『Advanced CableReady』の一章に着想を得た内容を、AppSignalのゲスト投稿向けに調整したものです。 通知機能は、多くのWebアプリケーションに共通する横断的な関心事の一つです。 Noticed gemは、データベースバックエンドのモデルとプラグイン可能な配信手段を提供することで、Ruby on Railsアプリケーションにおける通知開発を驚くほど簡単にしてくれます。メーラーやWebSocketなど、主要な配信手段が標準で組み込まれています。 本記事では、CableReady gemを活用してRailsアプリケーションでシステム通知を発火させるメリット

  10. 2022年にAppSignalで最も人気のあったRuby記事トップ5

    ```html 年末年始の休暇シーズンが近づき、AppSignalチームはRuby記事の公開を一時お休みし、冬のミニブレイクに入ります。2023年にはさらに多くの記事をお届けできるよう準備を進めています。🍵 ❄️ それまでの間、2022年に最も読まれたRubyブログ記事のトップ5を振り返ってみましょう! Rubyにおけるステートマシン入門 ステートマシン(状態遷移マシン)は、ある対象が取りうるすべての状態と、状態間で許可される遷移を管理する仕組みです。例えばドアのステートマシンなら、「開いている(open)」と「閉じている(closed)」という2つの状態、そして「開く途中(opening

  11. Ruby C拡張における引数解析をマスターする:ステップバイステップガイド

    Rubyは素晴らしい言語です。「人間を第一に、機械を第二に」という理念のもとに作られており、読み書きがとても簡単です。同じ処理を書く方法がいくつもあり、自分ならこう名付けるだろうと思うメソッド名を入力すれば、標準ライブラリの使い方を推測できることも多いでしょう。そのため、Rubyの引数は非常に柔軟で、APIをとても明確に表現できます。しかし、これには欠点もあります。C拡張機能の開発者にとって、Rubyは解析がかなり難しいのです!この記事では、Cで書かれた複雑なRuby APIを構築する2つの方法を見ていきます。rb_define_method を使って定義し、rb_scan_args で解析す

  12. C拡張機能からRubyメソッドを呼び出す際のメモリリークを防ぐ方法

    メモリリークはgemユーザーにとって頭痛の種です。原因の追跡が難しく、高額なインフラコストにつながることもあります。 C拡張内で発生するメモリリークはさらに厄介です。Rubyにおけるリーク発見のためのツールや解説記事は豊富にありますが、Cでは内部構造に同じようにはアクセスできません。 rb_funcallの安易な使用はメモリリークを引き起こす可能性があります。代わりにrb_protectを使う方がはるかに安全です。C拡張の開発者の方は、あなたのgemを使う開発者のために、ぜひこの記事を読んでみてください。 それでは始めましょう! rb_funcallとCの問題点 rb_funcallは、ライブ

  13. Kredisを使ってRailsアプリに一時的なUI状態を簡単に保存する方法

    Kredis(Keyed Redis)は、Rails開発者のツールキットに最近追加されたライブラリです。Redis上での構造化データの保存とアクセスを簡素化することを目指しています。 この2部構成シリーズの第1回では、まずKredisの仕組みについて詳しく解説します。その後、独自のRedisキーを使用して一時的なUI状態を保存する実用的なユースケースを紹介します。 それでは始めましょう! RailsにおけるKredisの概要 KredisはRailtieとして提供されており、以下の3つの方法でRedisの利用を効率化する便利なラッパーを備えています。 RubyらしいAPI:例えばKredis

  14. Railsのロギングをマスターする:デバッグからプロアクティブなアラートまで

    ログの必要性は、いちばん必要とする瞬間になって初めて気づくものです。しかし、アプリケーションが壊れ、ユーザーからの苦情が殺到し、どう対処すればいいのか見当もつかない——そんなときにログメッセージを追加しても、すでに手遅れです。 良いログは、その投資額の十倍の価値を返してくれます。厄介なバグの診断が格段に楽になるだけでなく、正しくログを実装していれば、ユーザーが気づく前に問題を検知してアラートを出すことさえ可能です。では、「正しくログを書く」とはどういうことなのでしょうか? ロギングは始めるのは簡単ですが、習得するのは難しいものです。この記事では、Railsアプリケーションのログを最大限に活用す

  15. Rubyの認可をマスターする:Pundit vs. CanCanCan 徹底比較

    今日の多くのWebアプリケーションでは、ホームページのように誰でも閲覧できる公開ページと、ログインしたユーザーだけがアクセスできるセキュアなページが共存しています。ユーザー登録、ログイン、セッション状態の管理といった一連のプロセスは「認証(authentication)」と呼ばれます。 一方、ログイン済みユーザーに対しては、そのユーザーロールに応じてアクセスできるアクションやリソースを分ける必要があります。たとえば「管理者(admin)」は一般ユーザーよりも広範な権限を持つのが一般的です。このように認証済みユーザーのアクセス範囲を制御するプロセスは「認可(authorization)」と呼ばれ

  16. Rubyでカスタム例外をマスターする:エラー処理と可観測性を強化する

    ソフトウェア開発において、例外のカスタマイズはあまり重視されないことが多いものです。しかし、可観測性ツールでエラーを検知した際に、問題を正確かつ迅速に特定できないとなると、例外に関するより多くの情報や詳細が必要になるでしょう。 本記事では、Rubyで例外をカスタマイズする方法を解説し、エラー情報の不足によって将来発生しうる問題を未然に防ぐ方法をご紹介します。 それでは早速始めましょう! はじめに:補足事項 この記事は「AppSignalによるRubyのデバッグ」の自然な続編にあたります。デバッグの概要とカスタム例外の入門編については、まずそちらの記事を読むことをおすすめします。 Rubyで例外

  17. AppSignalで実現するNGINX自動パフォーマンス監視:リアルタイムインサイトとMagic Dashboards活用ガイド

    NGINXのパフォーマンスを正確に把握するのは、決して簡単なことではありません。追跡すべきデータポイントが非常に多く、どの指標が自分にとって重要で、どの指標を無視してよいのか判断に迷うことも少なくないでしょう。 この記事では、AppSignalを活用してNGINXを監視し、アプリケーションパフォーマンスの可視性を高める方法を詳しく解説します。 すべてのメトリクスを「マジック」に AppSignalでは、スループットからレスポンスタイムまで、さまざまなパフォーマンスメトリクスを組み合わせたカスタムダッシュボードを作成できます。ただし、手動でダッシュボードを構築するには時間がかかり、どのメトリクス

  18. AppSignalでカスタムメトリクスを追跡し、すぐに役立つ実用的なインサイトを得る方法

    カスタムメトリクスを設定すれば、ログを一行ずつ調べたり複雑なレポーティングツールに苦戦したりすることなく、必要な情報へのインサイトを即座に得られます。意味のあるメトリクスを追跡してアプリケーションの重要な監視データを補完することで、潜在的な問題を素早く特定し、解決につなげることができます。 本記事では、監視の死角をなくすためにカスタムメトリクスを設定・活用する方法を紹介します。AppSignalの監視ツール群と組み合わせてカスタムメトリクスを利用し、アプリケーションのパフォーマンスをより深く理解する方法をデモします。 カスタムメトリクスとは何か? メトリクスといえば、AppSignalはデフォ

  19. 【Rails】Action Mailboxで受信メールを統合し、トラブルシューティングをマスターしよう

    メールの送受信に関するRFC(Request for Comments)を一度でも目にしたことがあれば、受信箱の「送信」ボタンの裏側にどれほど複雑な技術が隠れているかに気づくはずです。 幸いなことに、開発者向けにSMTP(Simple Mail Transfer Protocol)サービスを提供してくれるツールは数多くあります。自前で管理するPostfixサーバーから、SendGrid、Amazon SES、Postmarkといった拡張性の高い送信サービスまで、選択肢は豊富です。ただし、配信性や料金の理由でプロバイダーを乗り換えるたびに、各サービス固有の仕様に合わせてアプリを書き直したりリファ

  20. AppSignal 3.4.1で実現するシームレスなRails例外レポート〜Rails Error Reporter対応〜

    アプリケーションの例外に関するインサイトを得たいけれど、コードに冗長なロジックを追加する時間はない——そんな方に、「exceptional(例外的)」な朗報です。AppSignal for Ruby gem 3.4.1 が、Rails Error Reporter をサポートしました。 この変更により、AppSignal の統合をシンプルにし、コードをすっきりさせながら、エラーページを表示してユーザーの操作を中断させることなく、その場でエラーをレポートできるようになります。 この記事では、Rails Error Reporter を使って AppSignal へエラーをレポートする方法をご紹介

Total 621 -コンピューター  FirstPage PreviousPage NextPage LastPage CurrentPage:2/32  20-コンピューター/Page Goto:1 2 3 4 5 6 7 8