Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

158
Views
La forma más rápida de Rails para hacer que los registros de la tabla cuenten

Tengo una tabla de user en la base de datos Postgresql , si ejecuto User.count , se necesitan 150ms para obtener el resultado. Es demasiado lento para nosotros. Idealmente, tardará menos de 10 ms en devolverme el resultado. ¿Hay alguna forma de almacenar en caché el resultado de sql en el nivel del modelo ? Algo como

 def self.total_count User.count.cached # that's my imagination end
over 4 years ago · Santiago Trujillo
2 answers
Answer question

0

En mi opinión, hay varias maneras de hacerlo:

  1. Podría tener otra tabla que almacene el recuento del número total de usuarios incrementando el recuento allí cuando se agrega/elimina un usuario o en intervalos de tiempo frecuentes.
  2. Si su tabla es extremadamente grande y la precisión no es lo más importante, también consulte la consulta COUNT ESTIMATE de Postgres.

    SELECT reltuples AS approximate_row_count FROM pg_class WHERE relname = 'users';

over 4 years ago · Santiago Trujillo Report

0

Deberías buscar en counter_cache. Funcionará muy bien si su usuario pertenece_a otro modelo http://guides.rubyonrails.org/association_basics.html

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!