Sessions aus der Datenbank löschen
Wenn sie Rails so konfiguriert haben, dass Browser-Sessions in der Datenbank gespeichert werden, sollten diese regelmäßig entfernt werden, um die betreffende Tabelle nicht zu groß werden zu lassen und die Performance der Datenbank nicht zu beeinträchtigen.
Hierfür können Sie beispielsweise den folgenden Ruby-Code als Rake-Task in Ihrem Projekt verwenden. Dieser Task kann und sollte regelmäßig als Cron-Job ausgeführt werden.
namespace :db do
namespace :sessions do
desc "Prune database-stored sessions older than one week"
task :prune => :environment do
CGI::Session::ActiveRecordStore::Session.delete_all ["updated_at < ?", 1.week.ago ]
end
desc "Count database sessions"
task :count => :environment do
puts "Currently storing #{CGI::Session::ActiveRecordStore::Session.count} sessions"
end
end
end