Rails admin is so slow on heroku

Viewed 24

My Rails backend becomes too slow on the queries that include filters. The local and staging environments are way faster for the same queries but the production environment(having much better servers) is way too slow. The amount of data in staging and development is ~ 134000 records for the particular model. And on production it is ~ 150000 records for the model that is slow on filter queries. Production is taking ~40000 ms to load the index. Logs.

2022-09-20T08:48:24.696263+00:00 app[web.1]: I, [2022-09-20T08:48:24.696196 #3]  INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Started GET "/admin/listing?model_name=listing&utf8=%E2%9C%93&query=Missouri&_pjax=%5Bdata-pjax-container%5D" for 172.70.147.182 at 2022-09-20 08:48:24 +0000
2022-09-20T08:48:24.706653+00:00 app[web.1]: I, [2022-09-20T08:48:24.706580 #3]  INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Processing by RailsAdmin::MainController#index as HTML
2022-09-20T08:48:24.706693+00:00 app[web.1]: I, [2022-09-20T08:48:24.706659 #3]  INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca]   Parameters: {"model_name"=>"listing", "utf8"=>"✓", "query"=>"Missouri", "_pjax"=>"[data-pjax-container]"}
2022-09-20T08:48:25.634623+00:00 app[web.1]: I, [2022-09-20T08:48:25.634511 #3]  INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca]   Rendering vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/pjax
2022-09-20T08:48:26.626621+00:00 app[web.1]: I, [2022-09-20T08:48:26.626531 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Started GET "/admin/listing?model_name=listing&utf8=%E2%9C%93&query=Missouri" for 172.70.147.182 at 2022-09-20 08:48:26 +0000
2022-09-20T08:48:26.627933+00:00 app[web.1]: I, [2022-09-20T08:48:26.627863 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Processing by RailsAdmin::MainController#index as HTML
2022-09-20T08:48:26.627975+00:00 app[web.1]: I, [2022-09-20T08:48:26.627937 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Parameters: {"model_name"=>"listing", "utf8"=>"✓", "query"=>"Missouri"}
2022-09-20T08:48:27.608308+00:00 app[web.1]: I, [2022-09-20T08:48:27.608202 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendering vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/application
2022-09-20T08:49:05.644054+00:00 app[web.1]: I, [2022-09-20T08:49:05.643938 #3]  INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/pjax (40009.3ms)
2022-09-20T08:49:05.650745+00:00 app[web.1]: I, [2022-09-20T08:49:05.650658 #3]  INFO -- : [76f22ddd-486a-4157-bf5e-8f3b4afa6fca] Completed 200 OK in 40944ms (Views: 58.3ms | ActiveRecord: 40596.8ms)
2022-09-20T08:49:07.592857+00:00 app[web.1]: I, [2022-09-20T08:49:07.592762 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/rails_admin/main/index.html.haml within layouts/rails_admin/application (39984.4ms)
2022-09-20T08:49:07.593402+00:00 app[web.1]: I, [2022-09-20T08:49:07.593325 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_head.html.haml (0.4ms)
2022-09-20T08:49:07.595530+00:00 app[web.1]: I, [2022-09-20T08:49:07.595465 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_secondary_navigation.html.haml (1.6ms)
2022-09-20T08:49:07.595630+00:00 app[web.1]: I, [2022-09-20T08:49:07.595589 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_navigation.html.haml (1.9ms)
2022-09-20T08:49:07.608988+00:00 app[web.1]: I, [2022-09-20T08:49:07.608929 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/_sidebar_navigation.html.haml (13.2ms)
2022-09-20T08:49:07.609182+00:00 app[web.1]: I, [2022-09-20T08:49:07.609140 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendering vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/pjax.html.haml
2022-09-20T08:49:07.612388+00:00 app[web.1]: I, [2022-09-20T08:49:07.612333 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2]   Rendered vendor/bundle/ruby/2.5.0/gems/rails_admin-2.0.2/app/views/layouts/rails_admin/pjax.html.haml (3.1ms)
2022-09-20T08:49:07.612715+00:00 app[web.1]: I, [2022-09-20T08:49:07.612623 #3]  INFO -- : [a319c253-315d-462b-b078-b8bf702b07f2] Completed 200 OK in 40985ms (Views: 73.4ms | ActiveRecord: 40601.5ms)

My rails_admin.rb

config.model Listing do
    list do
      scopes %i[active archived only_active pending sold unlisted]
      items_per_page 10
      field :id
      field :created_at do
        pretty_value do
          value.in_time_zone('Arizona').strftime('%B %d, %Y %I:%M')
        end
      end
      field :updated_at do
        pretty_value do
          value.in_time_zone('Arizona').strftime('%B %d, %Y %I:%M')
        end
      end

      field :status
      field :price
      field :address
      field :address2
      field :listing_type
      field :city
      field :notes
      field :seller
      field :user
      field :images
      field :documents
      field :video
      field :offers
      field :appointments
      field :user_favorite_listings
      field :favorite_by
      field :lender_prequalifications
    end
end
0 Answers
Related