Richie
(Richie Rich)
Juin 10, 2020, 12:52
545
Merci @merefield , câest exactement ce que nous avions essayĂ©
HĂ©las, cela charge toujours dâabord la page de la liste des utilisateurs, ensuite il redirige vers la carte.
JâespĂ©rais que seule la carte soit disponible sur /map ou quelque chose comme ça
2 « J'aime »
Jâai compris.
Mais câest une fausse piste.
La liste des utilisateurs standard est mise en cache, ce qui permet un chargement quasi instantanĂ©. Le problĂšme rĂ©side dans le temps nĂ©cessaire pour charger le modĂšle de la carte, qui, dans votre cas, concerne environ 400 utilisateurs dâun coup⊠donc oui, le rendu de la liste des utilisateurs ne consomme que 0,1 % du temps de traitement, mais le vrai problĂšme se situe dans la seconde partie. Il se peut quâil nây ait pas de solution rapide Ă cela.
Je le sais en partie parce que je viens de dĂ©ployer sur un site qui nâavait pas encore utilisĂ© cette fonctionnalitĂ©. Les donnĂ©es de la carte se chargent si rapidement que la liste des utilisateurs nâest jamais visible (malgrĂ© son chargement en premier). Le hic ? Seuls deux utilisateurs ont pour lâinstant Ă©pinglĂ© leur localisation⊠la carte des utilisateurs ne sâadapte pas bien avec son architecture actuelle.
3 « J'aime »
Richie
(Richie Rich)
Juin 10, 2020, 1:05
547
Intéressant, merci.
Pour lâinstant, seuls environ 12 % des membres de notre communautĂ© sont rĂ©pertoriĂ©s sur la carte, et nous avons rĂ©cemment Ă©voquĂ© une initiative pour en ajouter davantage.
Ai-je raison de penser que, à mesure que notre communauté continuera de croßtre, le chargement de la carte deviendra de plus en plus lent ?
2 « J'aime »
Richie
(Richie Rich)
Juin 10, 2020, 1:06
548
Je suppose aussi quâil doit dâabord charger la liste des utilisateurs ?
Ne sachant rien du code, est-il possible dâavoir la carte Ă part quelque part ?
2 « J'aime »
Comme je lâai dit, cela nâa pas dâimportance. La liste des utilisateurs est mise en cache et trĂšs courte.
2 « J'aime »
Richie
(Richie Rich)
Juin 10, 2020, 2:27
550
Le plugin Locations utilise-t-il son propre modĂšle pour cela ou un modĂšle de base existant ? Je me demande oĂč se situe le goulot dâĂ©tranglement lors de la sĂ©lection de seulement 400 lignes dâinformations utilisateur depuis la base de donnĂ©es ?
Désolé pour toutes ces questions @merefield , je tente simplement de mieux comprendre comment cela fonctionne sous le capot
2 « J'aime »
Pas de problÚme, Richie. Nous surchargeons le contrÎleur DirectoryItemsController pour récupérer plus de personnes en une seule fois que ce qui se produit normalement lorsque les données sont paginées pour le tableau standard. Le modÚle ne change pas.
Cela nĂ©cessite vraiment un remplacement complet par un systĂšme de streaming de donnĂ©es beaucoup plus complexe, qui tient compte de la taille et de la position de la zone visible. Câest un travail considĂ©rable, je suppose. Sans compter que cela ne pourra plus exploiter autant de code fourni avec Discourse, car il sâagit dâun cas dâutilisation complĂštement diffĂ©rent. Un travail tout Ă fait intĂ©ressant, cependant !
Le fait que vous rencontriez ce dĂ©lai Ă chaque seule fois suggĂšre quâil ne sâagit pas dâun problĂšme de cache, et câest peut-ĂȘtre quelque chose que nous pourrions corriger sans apporter de modifications majeures.
4 « J'aime »
Richie
(Richie Rich)
Juin 10, 2020, 4:38
552
Je nâai tout de mĂȘme pas manquĂ© ou modifiĂ© un simple paramĂštre de Discourse, si ?
2 « J'aime »
Non, ce nâest pas de votre faute, sauf que vous avez peut-ĂȘtre dĂ©passĂ© les capacitĂ©s actuelles du plugin
Quand jâaurai un moment, je regarderai ce quâil faudrait pour mettre en cache les rĂ©sultats, afin que vous ne rencontriez ce problĂšme quâune seule fois par session. Câest le fruit Ă portĂ©e de main.
Cependant, la vraie chirurgie arboricoleâŠ
2 « J'aime »
Richie
(Richie Rich)
Juin 10, 2020, 7:05
554
Merci @merefield , mais attendons un peu pour cela. Je nâai aucune preuve dans un sens ou dans lâautre, mais jâai le fort sentiment que les gens ne consultent la carte quâune seule fois par session de toute façon
2 « J'aime »
k4rtik
(Kartik)
Juin 11, 2020, 4:19
555
Un rapport de bogue.
Ce bogue existe depuis un moment, mais jâai enfin compris que le plugin Locations en est la cause. Lorsque le plugin est dĂ©sactivĂ©, mon site web sâaffiche correctement sur la carte utilisateur, mais lorsquâil est activĂ©, il apparaĂźt en double ! Voici une capture dâĂ©cran de la carte utilisateur qui apparaĂźt au survol :
et une autre depuis la page de profil entiÚrement développée :
Jâai testĂ© cela Ă de nombreuses reprises en modifiant diffĂ©rentes combinaisons de valeurs dans le profil. La seule fois oĂč je vois lâaffichage correct, câest-Ă -dire que le site web nâapparaĂźt quâune seule fois, câest lorsque je dĂ©sactive le plugin Locations.
2 « J'aime »
Merci Kartik, es-tu sur une mise à jour récente ?
2 « J'aime »
k4rtik
(Kartik)
Juin 11, 2020, 4:52
557
Oui, jâaurais dĂ» le mentionner.
MODIFICATION : Le HTML gĂ©nĂ©rĂ© pour lâĂ©lĂ©ment en double :
<span id="ember858" class="ember-view"> <div id="ember860" class="user-location-and-website-outlet replace-location ember-view"><!----><div class="user-profile-website">
<svg class="fa d-icon d-icon-globe svg-icon svg-string" xmlns="http://www.w3.org/2000/svg"><use xlink:href="#globe"></use></svg>
<span title="http://ks.cs.uchicago.edu">ks.cs.uchicago.edu</span>
</div>
</div>
</span>
3 « J'aime »
Je suis actuellement pris par du travail pour des clients, mais je garderai cela Ă lâesprit Ă lâapproche de la prochaine pĂ©riode de mise Ă niveau prise en charge (du 1er au 5 du mois prochain).
2 « J'aime »
Richie
(Richie Rich)
Juin 11, 2020, 5:07
559
Câest intĂ©ressant que lâun soit stylisĂ© comme un lien cliquable et lâautre non
Il est aussi intéressant que nous ne rencontrions pas ce problÚme sur notre forum.
2 « J'aime »
Richie
(Richie Rich)
Juin 21, 2020, 11:29
560
Il semble que nous ayons un autre problĂšme, @merefield .
Notre carte des utilisateurs affiche actuellement 472 utilisateurs, mais plusieurs ont signalĂ© que leur Ă©pingle nâapparaĂźt pas sur la carte. Pourtant, lorsque vous consultez leur fiche utilisateur, ils sont bien visibles sur leur propre mini-carte.
Lorsque nous exĂ©cutons une requĂȘte sur la base de donnĂ©es pour les utilisateurs ayant ajoutĂ© une localisation, nous obtenons 492 rĂ©sultats. Il semble donc quâune vingtaine dâentre eux ne soient pas visibles sur la carte.
Pouvons-nous faire quelque chose pour aider à déboguer ce problÚme ?
En consultant la fiche utilisateur de Chris, il sâaffiche correctement sur sa propre carte de profil :
Sur la carte complĂšte / principale, Chris est manquant
1 « J'aime »
Quelle est la valeur de ce paramĂštre, Richie ?
Pour lâexemple avec lâutilisateur manquant, pouvez-vous sâil vous plaĂźt mâenvoyer un MP avec le rĂ©sultat de cette commande depuis la console Rails :
myuser = User.find_by(username: "===NOM_UTILISATEUR===")
myuser.custom_fields["geo_location"]
2 « J'aime »
Richie
(Richie Rich)
Juin 22, 2020, 3:51
562
Lâhistoire se corse
Il était réglé sur 500.
Je lâai modifiĂ© Ă 1000 et nos personnes disparues sont apparues instantanĂ©ment
Je tâenverrai les rĂ©sultats par MP comme demandĂ©
2 « J'aime »
Ah, dans ce cas, il nâest pas nĂ©cessaire dâenvoyer ces informations par MP. Je soupçonne que la liste des personnes avec des geo_locations pouvait inclure des entrĂ©es avec des champs vides (par exemple, le champ personnalisĂ© existe mais lâobjet est vide), et par consĂ©quent, vous pourriez atteindre le nombre maximum. Augmentez ce nombre maximum et, mĂȘme sâil y a des champs vides, ils ne dĂ©placeront pas les utilisateurs valides. Cela pourrait certainement amĂ©liorer le code, mais ce nâest pas critique.
2 « J'aime »
Richie
(Richie Rich)
Juin 22, 2020, 3:58
564
Merci @merefield , nous avons remarquĂ© que plusieurs utilisateurs avaient des valeurs comme '{}', je suppose donc quâils avaient peut-ĂȘtre une localisation par le passĂ©, mais quâelle a depuis Ă©tĂ© supprimĂ©e.
Je ne me souviens plus non plus si ces valeurs sont supprimĂ©es lorsquâun utilisateur est anonymisĂ© â cela nous ferait Ă nouveau dĂ©passer la limite magique de 500 que nous avions dĂ©finie.
Salutations
2 « J'aime »