Fork me on GitHub

Rapport de message :*
 

Re: Re-création de Aquaportail.com en Xoops 2.5.10 avec Newbb 5

Titre du sujet : Re: Re-création de Aquaportail.com en Xoops 2.5.10 avec Newbb 5
par aquaportail sur 11/03/2019 16:41:31

Pour information, j'ai fait un rétro-pédalage dans mon projet. Xoops 2.5.9(10) est très gourmand en nombre de fichiers chargés et cela fait perdre de nombreux avantages de temps de réponse (même avec des SSD performants) gagné par la rapidité de php 7.3 vis-à-vis de php 5.6.

J'ai donc opté pour une solution mi figue-mi raisin: la plupart des parties importantes de Xoops 2.5.10 ont été intégrées dans "mon" Xoops hyper-personnalisé (basé sur une 2.0.1x). Cela concerne notamment le "kernel", la plupart des "includes" et la quasi-totalité des "class". J'ai évité, comme la peste, XMF (c'est lui le gourmand de l'histoire!!!) et les "preloads" (en fait une cata en terme de perfs selon mes tests), surtout qu'un vrai preload arrive avec php 7.4 (cf. https://wiki.php.net/rfc/preload )! Je vais donc patienter quelques mois pour le preload (très intéressant si bien fait sur un serveur dédié -ne sera vraisemblablement pas exploitable sur mutualisé- ).

En revanche, tous les modules restent ceux de "ma" version, avec les adaptations utiles à php 7.3 (ce qui a nécessité pas mal de ré-écriture de code).

Concernant SQL, toutes les tables sont en utf8bm4 (et non bm3 comme dans xoops 2.5) pour coller aux spécifications et recommandations de MySQL 8 (même si bm3 ne gêne pas, bm4 est plus performant avec MySql 8). Le passage à 8 au lieu de MySql 5.6 demande aussi une adaptation de certains noms de colonne, notamment pour le champ 'rank' dans la table 'users'. Si le staff de Xoops 2.5 a choisi de "quoter" le mot réservé 'rank', j'ai opté pour le renommer tout à fait différemment pour anticiper sur les futures versions de MySql (cela ne touche que 5 fichiers à modifier, hors XMF). D'autres mots deviennent plus ou moins réservés ( https://dev.mysql.com/doc/refman/8.0/en/keywords.html ) avec MySql 8 : principalement 'definition' et 'description' (!). Ceux-ci sont employés dans certains modules, je les ai donc modifiés également (pas obligatoire à l'heure actuelle, mais ça va arriver sous peu, autant anticiper).

Concernant les tables encore, j'ai retouché-réorganisé l'ordre des colonnes de plusieurs tables pour coller aux demandes de MySql 8 en "meilleures" performances (grosso-modo, groupage des colonnes INT -et dérivées- avant les colonnes STR -et assimilées-) et pour consommer moins de mémoire (!!! un avantage de mysql 8).
Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

48 Personne(s) en ligne (24 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 48 | Plus ...