Bonjour,
Voila je rencontre un petit problème avec mon code.
Je cherche a charger une base de données avec rails. Ce chargement prend plusieurs minutes. A chaque lancement, aprés 1 minute exactement, une seconde requete GET identique est lancée automatiquement (j'ignore comment), ce qui charge la base en double. J'ai simulé ce probleme dans un projet rails vide, avec simplement une temporisation de 120 secondes: A chaque fois que je lance par un lien (HREF), j'ai une requete GET indesirableau bout d'une minute. Lors je refraichis uniquement la page, le probleme n'apparait pas.. Je suis un peu perdu, je ne comprends pas le comportement, et ne sais meme pas quelle recherche effectuer sur google..
A partir d'un projet vide, voici le controller:
class EssaiController < ApplicationController
def show
end
def display
sleep(70.seconds)
end
end
Les routes:
Rails.application.routes.draw do
get 'essai/view1', to: "essai#show"
get 'essai/view2', to: "essai#display"
# For details on the DSL available within this file, see https://guides.rubyonrails.org/routing.html
end
La vue show:
<a href="/essai/view2">Lancement de l'application</a>
La vue display
<p>Fin du test</p>
Dans le journal du server, on voit bien la seconde requete lancée sans aucune action de ma part au bout d'une minute
Started GET "/essai/view2" for ::1 at 2020-12-21 22:39:17 +0100
Processing by EssaiController#display as HTML
Started GET "/essai/view2" for ::1 at 2020-12-21 22:40:17 +0100
Processing by EssaiController#display as HTML
Rendering layout layouts/application.html.erb
Rendering essai/display.html.erb within layouts/application
Rendered essai/display.html.erb within layouts/application (Duration: 1.9ms | Allocations: 117)
[Webpacker] Everything's up-to-date. Nothing to do
Rendered layout layouts/application.html.erb (Duration: 68.8ms | Allocations: 4045)
Completed 200 OK in 70082ms (Views: 70.5ms | ActiveRecord: 0.0ms | Allocations: 7263)
Rendering layout layouts/application.html.erb
Rendering essai/display.html.erb within layouts/application
Rendered essai/display.html.erb within layouts/application (Duration: 0.2ms | Allocations: 35)
[Webpacker] Everything's up-to-date. Nothing to do
Rendered layout layouts/application.html.erb (Duration: 84.6ms | Allocations: 3958)
Completed 200 OK in 70087ms (Views: 86.5ms | ActiveRecord: 0.0ms | Allocations: 9867)
Merci pour votre aide, je suis perdu...