Carte Cesium lente -> améliorer WorldWotMap?

J’ai eu plusieurs fois le retour que la carte des membres de Cesium est très lente. Effectivement elle met longtemps à charger et consomme beaucoup de CPU.

Actuellement je n’ai pas mon ordi pour diagnostiquer précisément. Peut-être a-t-elle besoin d’un peu d’optimisation ?

4 J'aimes

J’ai commencé une petite optimisation, en supprimant la fonction de recherche, qui consomme beaucoup car nécessite de créer une layer spécial, invisible pour l’utilisateur.
Ce sera visible dans la prochaine version, sans doute cette semaine.

Le gros travail serait ensuite :

  • de pouvoir demander aux noeuds Cesium+ (ES) de faire les regroupement de marqueurs, pour éviter de les faire en JS
  • D’afficher ces marqueurs (d’une nouveau type) en gérant les couleurs (plus ou moins foncés, etc.), comme actuellement
  • D’afficher les marqueurs unitaires quand le niveau de zoom est suffisant élévé

Cela, je ne sais pas quand j’aurais le temps de le faire…

3 J'aimes

Peut-etre serais-ce plus simple pour les contributeurs, d’avoir une nouvelle carte, quasi vierge, pour implémenter cela.
Tu serais chaud @tuxmain pour la coder, ensuite ?

Tout à fait, j’ai déjà un début avec la WorldWotMap. J’ajoute ça dans ma todo-list pour mon retour à la civilisation. :slight_smile:

7 J'aimes

Voici mes idées pour améliorer la WorldWotMap (visible ici) :

  • :white_check_mark: corriger les bugs d’affichage des certifications
  • afficher plus d’informations en pop-up sur les comptes et les certifs
  • rendre les formulaires plus jolis, plus responsive
  • rendre paramétrables les adresses des nœud Cesium+, Cesium, tiles de la carte, données de la carte
  • :white_check_mark: plusieurs fonds de carte par défaut (dont un imprimable)
  • liste de nœuds Cesium+, en cas d’indisponibilité
  • export de l’image de la carte
  • géolocalisation du navigateur
  • traduction
  • recherche de lieu
  • filtre de recherche géographique
  • filtre temporel, historique
  • regroupement des nœuds en vue de loin
  • affichage des transactions
  • affichage des anciens membres
  • affichage des futurs membres
  • mode embarqué pour fonctionner en iframe
  • faire un logo (avis aux camarades graphistes :slight_smile: )
  • affichage des données de la blockchain (à quelle date les données de la carte ont été générées, version du script, blockstamp, nœud Duniter)
  • :heavy_check_mark: rendre le code plus propre (fait partiellement)
  • :white_check_mark: importer les données Cesium+ depuis le serveur et réduire la taille du fichier à envoyer au client
  • représenter la distance des comptes et certifs au compte sélectionné, ou la qualité, le degré, la centralité, la date d’expiration, la date d’entrée espérée, sur la carte
  • corriger les failles XSS
  • modifier plus de paramètres depuis les paramètres GET
  • générer plus de couleurs différentes pour les communautés
  • :white_check_mark: lister les comptes non-positionnés pour mieux calculer les distances et les membres référents
  • :question: Ajouter un mode pour afficher les annonces ğchange
  • Déplacer légèrement les points qui se superposent
  • (futur) utiliser le prochain système de bdd de Duniter (idéalement, ne pas nécessiter d’arrêter Duniter pour lire les index)
  • (futur) intégrer les liens g1

Faites vos suggestions !

1 J'aime

Attention ton lien n’est pas bon.

Je suis trop une bille pour le faire moi-même, mais j’ai pensé qu’un import et formatage auto des données de la carte pour un import quotidien sous Gogocarto pourrait fournir une solution de carte des membres sur un moteur de carte qui fonctionne pas mal. Il y a une solution d’import automatique d’API json et de modif des données.

Comme ça on aurait une url à partager sur cette plateforme de carte utilisable par d’autres gogocartes. Je pense en particulier à la possibilité de mettre un peu plus en avant les Pages (d’asso, d’entreprise) que le public exploite peu sur Cesium.

Merci, c’est corrigé. J’avais dû copier le lien qui marchait en local…

J’en ai profité pour ajouter des choses à faire, et virer les priorités parce qu’en fait je ne les suis pas.

Je m’attaque au traitement des données Cesium+ côté serveur, pour prendre moins de bande passante et accélérer le côté client (les positions prennent 1,76 Mo, par ADSL c’est long).

  • Régler le problème de mixed content :

Le serveur de la carte Toner Lite n’a pas de certificat SSL valide pour son domaine, donc avec HTTPS le navigateur refuse de terminer le boulot.

En 2020 ça crains…

Les politiques de « sécurité » des navigateurs surtout, ça craint. Par exemple il m’est impossible de faire un client web sur une page HTTPS qui utilise une API sécurisée mais non-HTTPS. C’est juste absurde. Utiliser HTTP, SSL, HTML/CSS/JS aussi, ça craint. Mais bon on est obligés…

1 J'aime

J’aimerais pouvoir adresser une url qui permette d’activer ou non le calque des liens de certification. Et si en plus l’url pouvait se centrer sur des coordonnées GPS, je serais heureux comme tout.

Merci pour ton travail.

C’est prévu !

Tu veux dire se centrer sur des coordonnées données dans l’URL ? C’est déjà possible (essaie « lien vers cette vue », ou les liens de démo dans le README). Ou qui se centre sur la géolocalisation de l’appareil ? C’est aussi prévu, mais pour plus tard, il faut que je trouve les API pour GPS ou WIFI (ou geoip c’est plus simple).

oups, j’avais pas vu. Désolé du dérangement. J’attends que tu mettes à jour ton certificat et je l’utiliserai .

Merci

Autre proposition.

Faire un calque des 500 ou 1000 dernières transactions. Ça donnerait une vision de l’activité économique et du dynamisme.

Je voulais permettre de choisir la date de la carte, mais ça demande de reconstruire soi-même les index à partir de la blockchain (ce qui prend beaucoup de temps et n’est pas faisable depuis le navigateur ni sur demande), ou d’archiver des index (ce qui prend beaucoup de place sur le serveur). Bonne idée, il sera plus facile de mettre un filtre sur la date d’écriture des certifications et identités.

Le certificat de Toner Lite ? Je ne peux rien y faire, mais leur carte est tout à fait accessible. Je vais aussi en ajouter d’autres.

tu peux peut-être archiver et mettre à disposition une carte par mois. Je ne vois pas trop l’intérêt mais oui, historiser c’est toujours intéressant et satisfaisant de voir le développement dans le temps la visu d’un réseau qu’on construit.

euh moi je parlais d’une carte permettant de voir les flux des transactions de G1. J’imagine que le cumul des traits ressemblerait à des petits pâtés dans chaque ville. Du coup même les simple portefeuilles géolocalisés seraient concernés.

ah oui, évidemment.

Ah oui aussi, des traits pour les transactions et des ronds pour les portefeuilles.

Nouvelle version : maintenant, le serveur fait les requêtes à Cesium+. Il y a toujours un fichier de plus de 3 Mo à télécharger pour le client, mais c’est plus rapide, et le code est beaucoup plus propre.

5 J'aimes