J'ai un flux similaire à celui de Twitter dans mon application Web. J'ai essayé d'optimiser la requête autant que possible, mais il gèle quand il charge les "tweets" de la base de données PostgresSQL.Rails 3: le flux prend trop de temps
Twitter, github, facebook, les flux sont si lisses et rapides.
Quelle est la meilleure façon d'y parvenir?
Cordialement.
** Modifier: le code est celui de railstutorial.org. http://railstutorial.org/chapters/following-users#sec:scopes_subselects_and_a_lambda
# Return microposts from the users being followed by the given user.
scope :from_users_followed_by, lambda { |user| followed_by(user) }
private
# Return an SQL condition for users followed by the given user.
# We include the user's own id as well.
def self.followed_by(user)
followed_ids = user.following.map(&:id).join(", ")
where("user_id IN (#{followed_ids}) OR user_id = :user_id",
{ :user_id => user })
end
# Table name: microposts
#
# id :integer not null, primary key
# content :string(255)
# user_id :integer
# created_at :datetime
# updated_at :datetime
#
Désolé pour ne pas fournir assez d'informations. **
Quelle est la requête que vous avez actuellement? – idlefingers
Vous voulez des conseils d'optimisation mais ne fournissez pas de code, pas de schéma de base de données, pas d'information du tout sauf "Mon code est lent lors de la frappe sur la base de données"? –
J'ai modifié la question. Je vous remercie. – donald