Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Ruby

Theo Dõi Hiệu Suất Solid Cache trong Rails Sử Dụng AppSignal

AppSignal giờ đây hỗ trợ Solid Cache, mang lại cho bạn những deep cache performance insights giống như từ các Rails cache stores khác.

Trong bài blog này, chúng tôi sẽ cho bạn quick tour của Solid Cache, và cách bạn có thể benefit từ monitoring cache của app với AppSignal.

Solid Cache là gì?

Plug and play, database agnostic remote disk storage cache, nghĩa là khác với Redis hoặc Memcached, vốn stored trong memory, Solid Cache dùng SQL database qua Active Record, giữ cache trên disk.

Solid Cache có thể là phương pháp caching thuận lợi nếu bạn làm việc với ứng dụng có lượng lớn dữ liệu historical tương đối stable, như Hey, email service của 37Signals, vì bên cạnh mail mới, các email trước đó không thể thay đổi đột ngột.

Monitoring Solid Cache với AppSignal

AppSignal sinh ra ở Hà Lan, đất nước nổi tiếng với windmills, canals, stroopwafels, và tất nhiên, mưa. Rất nhiều mưa. Biết khi nào sẽ mưa rất quan trọng khi xe đạp là primary mode of transport, nên chúng tôi tạo một Rails app tên SkySignal.

SkySignal kết nối APIs để consume weather data khắp Hà Lan, cho người biết có mưa ở location của họ không và giúp developers stay dry while being DRY 🥁.

Giống như Hey, chúng tôi muốn optimize response times của ứng dụng bằng cách dùng caching để serve weather forecast cho users nhanh chóng. Chúng tôi sẽ dùng Solid Cache để cache historic weather data trong trường hợp này.

Chúng tôi chọn Solid Cache vì cùng lý do Hey đã chọn; nó cho phép cache large amounts of data với chi phí chỉ một phần nhỏ so với alternative cache như Redis.

Cài Đặt Solid Cache

Cài đặt Solid Cache dễ dàng, chúng tôi sẽ follow steps outlined trong Solid Cache's Readme:

  1. Trước hết, chúng ta cần cấu hình Solid Cache làm cache store trong desired env config files:

  1. Sau đó chúng ta cần thêm solid_cache vào gemfile.
  2. Sau đó chúng ta cần tạo, và chạy Solid Cache migrations để tạo database cache:

Trong trường hợp này, chúng ta muốn ghi cache vào primary database, nhưng nếu bạn muốn, bạn cũng có thể cấu hình Solid Cache để shard cache vào different data stores. Sharding chia nhỏ cache thành các phần nhỏ hơn và phân phối chúng across different databases (shards).

Tiếp theo, chúng ta muốn cài AppSignal để monitor app.

Cài Đặt AppSignal

Cài đặt AppSignal đơn giản; chúng tôi đã tạo installation wizard để get you up and monitoring.

Để bắt đầu wizard, bạn có thể click nút "Add app" trên trang AppSignal Applications overview, hoặc nếu bạn đã signed in, bạn có thể dùng link này để bắt đầu wizard.

Wizard sẽ cho bạn biết khi AppSignal đã cài đặt thành công, và trong hiếm khi things go wrong, chuyển bạn cho support team để dev-to-dev assistance.

Theo Dõi Hiệu Suất Solid Cache trong Rails Sử Dụng AppSignal

Nếu bạn muốn cài AppSignal manually, follow Installation Documentation của chúng tôi.

Bây giờ chúng ta đã cài AppSignal; chúng ta có thể bắt đầu monitoring performance của SkySignal app.

Monitoring Solid Cache

AppSignal thu thập performance metrics của ứng dụng và dịch chúng thành actionable insights. AppSignal có large toolkit developer-friendly monitoring tools, nhưng cho bài blog này, chúng ta sẽ focus vào:

  • Metric dashboards: Visually track performance data của app, như error rates và global response times. Cho SkySignal, chúng ta sẽ xem cache size và performance times.
  • Anomaly detection: Tạo triggers để alert bạn khi metric vượt quá specific threshold, ví dụ, khi cache size tăng đáng kể trong short time frame.

À, và đừng lo nếu bạn không dùng Solid Cache; bất kể Rails cache store nào, bạn sẽ nhận được cùng great metrics trong AppSignal!

Monitoring Solid Cache với Dashboards

Graphs của AppSignal là cách tuyệt vời để visually monitor performance của ứng dụng. Bạn có thể add markers để share context về performance spikes và click bất kỳ đâu trên graph để xem snapshot của performance ứng dụng tại exact moment đó, làm debugging dễ dàng.

Monitoring Response Times

Hãy xem performance của app bây giờ chúng ta đã cấu hình Solid Cache:

Theo Dõi Hiệu Suất Solid Cache trong Rails Sử Dụng AppSignal

Trong graph trên, chúng ta thấy SkySignal có response times tương đối nhanh, và cũng thấy response time spikes do SkySignal consuming batches of new weather data.

Monitoring Cache Size

Chúng ta chọn caching như một cách stable, efficient để enhance response times bằng cách store large amounts of data trong remote disk cache.

Theo Dõi Hiệu Suất Solid Cache trong Rails Sử Dụng AppSignal

Để ensure cache của chúng ta optimal, chúng ta có thể track cache size, xem nó có spike nhanh không, và dùng data này để fine-tune cache configuration để ensure nó optimal cho nhu cầu ứng dụng.

Xem bài blog này để thêm thông tin về setting up dashboard tracking Solid Cache table size.

Phát Hiện Cache Anomalies với AppSignal

Mặc dù dashboards của AppSignal là cách elegant và intuitive để keep tabs trên performance của ứng dụng. Subعًا, chúng ta không thể spend all day looking at AppSignal's beautiful graphs; đây là nơi Anomaly Detection xuất hiện.

Anomaly Detection của AppSignal cho phép bạn tạo triggers notify bạn khi specific metric threshold đã được meet, ví dụ, error rate đã đi trên 10%, hoặc cache storage đang bị dùng quá nhanh.

Theo Dõi Hiệu Suất Solid Cache trong Rails Sử Dụng AppSignal

Anomaly detection cho phép bạn get on with your job. Bạn có thể cấu hình AppSignal để notify bạn via email hoặc popular third-party collaboration platforms như Slack và Discord, giving you peace of mind rằng bạn sẽ được alert nếu trigger triggered, và monitor ứng dụng proactively, preventing bottlenecks trước khi chúng impact performance và scalability của ứng dụng.

Sẵn Sàng Bắt Đầu Monitoring Cache Của App?

Tại AppSignal, chúng tôi phấn đấu awesome ở mọi thứ chúng ta làm; đó là lý do chúng tôi làm việc chăm chỉ để ensure chúng tôi support all latest Rails features và functionality.

Khi chúng tôi hỏi customers tại sao họ thấy AppSignal awesome, họ nói họ thích:

  • Giao diện intuitively easy-to-navigate.
  • Giá cả đơn giản và dễ dự đoán.
  • Developer-to-developer support.

Nếu bạn chưa phải AppSignal customer click here để tạo trial account mới. Nếu bạn là trial user mới, reach out to us khi bạn bắt đầu push monitoring data, và chúng tôi sẽ gửi gói Stroopwafels cho bạn 🍪!

Muốn tìm hiểu thêm về Solid Cache? Chúng tôi khuyên xem talk của Donal McBreen tại Rails World trên YouTube.

Theo Dõi Hiệu Suất Solid Cache trong Rails Sử Dụng AppSignal

Connor James

Developer Marketing Manager tại AppSignal. Nghiện podcast và yêu cannoli đến mức cân nhắc đổi tên thành Connoli. Anh ấy nghĩ có chữ 'u' trong từ 'color'. Bạn có thể tìm thấy anh ấy trên mic, trên sân khấu, hoặc nằm trên ghế sofa khi nghỉ ngơi.

Tất cả bài viết của Connor James