mirror of
https://github.com/discourse/discourse.git
synced 2024-11-24 13:18:33 +08:00
42 lines
832 B
Ruby
42 lines
832 B
Ruby
# frozen_string_literal: true
|
|
|
|
start = Time.now
|
|
require "objspace"
|
|
require File.expand_path("../../config/environment", __FILE__)
|
|
|
|
# preload stuff
|
|
I18n.t(:posts)
|
|
|
|
# load up all models and schema
|
|
(ActiveRecord::Base.connection.tables - %w[schema_migrations]).each do |table|
|
|
begin
|
|
table.classify.constantize.first
|
|
rescue StandardError
|
|
nil
|
|
end
|
|
end
|
|
|
|
# router warm up
|
|
begin
|
|
Rails.application.routes.recognize_path("abc")
|
|
rescue StandardError
|
|
nil
|
|
end
|
|
|
|
puts "Ruby version #{RUBY_VERSION} p#{RUBY_PATCHLEVEL}"
|
|
|
|
puts "Bootup time: #{Time.now - start} secs"
|
|
|
|
GC.start
|
|
|
|
puts "RSS: #{`ps -o rss -p #{$$}`.chomp.split("\n").last.to_i} KB"
|
|
|
|
s =
|
|
ObjectSpace
|
|
.each_object(String)
|
|
.map do |o|
|
|
ObjectSpace.memsize_of(o) + 40 # rvalue size on x64
|
|
end
|
|
|
|
puts "Total strings: #{s.count} space used: #{s.sum} bytes"
|