Grosse optimisation de Flatboard

simon_20a65f4f
Grosse optimisation de Flatboard
Simon Monday 3rd December 2018, 08:01:53

Je viens d'avoir une super idée pour optimiser flatboard ET les plugins.
En haut du init.php ou autre, tu stokes toutes les données dans un tableau, par exemple
$GLOBALDATA
et Ă  la fin du chargement de Flatboard, tu enregistre cette variable.
Pourquoi ?
Parce que dans les plugins par exemple, au lieu de faire un 
foreach(flatDB::listEntry("topic") as $topic){
  $topicEntry = flatDB::getEntry("topic",$topic);
  // [...]
}

, tu fais un
foreach($GLOBALDATA["listEntry"]["topic"] as $topic){
  $topicEntry = $GLOBALDATA["topic"][$topic]
  // [...]
}

et ça optimiserais teeeeeelement le temps de chargement, au lieu faire un
file_get_content
 et un
file_put_content
tout le temps, tu le fais juste une fois au début, et une fois à la fin.

Replies 6
Fred_4346f29d
Fred  Monday 3rd December 2018, 10:05:46

Hello Simon,
C'est justement une grossiùre erreur de centraliser toutes les variables au cƓur de Flatboard.
Actuellement l'index de la page se charge en mĂȘme pas une demi seconde, sachant que google pĂ©nalise pour les sites qui mette plus de 2 secondes.
Ça laisse de la marge tu ne crois pas ?

Par contre je viens d'intégrer la compression gzip si le navigateur du visiteur le permet, et qui dans ce cas peut faire gagner 30% de temps de chargement en plus.

Before ask a question, read the documentation.
Please like in alternativeto.net đŸ‘đŸ»
╰☆╼Flatboard╰☆╼ is a open source and community contributions are essential to project success!

Prétendre que votre droit à une sphÚre privée n'est pas important parce que vous n'avez rien à cacher n'est rien d'autre que dire que la liberté d'expression n'est pas essentielle car vous n'avez rien à dire.
-- E. Snowden

simon_20a65f4f
Simon  Monday 3rd December 2018, 15:39:13

c'est vrai qu'il y a de la marge, mais si quelqu'un a, Ă  toute hasard 10 000 messages dans son forum, ce serait plus rapide d'utiliser la technique que j'ai Ă©crit ci-dessus non ?

Fred_4346f29d
Fred  Monday 3rd December 2018, 16:07:17

Ben c’est assez vague ce que tu me dis, tu y mettrais quel tableau dans $GLOBALDATA ?
Parce que tu peux déjà utiliser global $config par exemple, pour retourner les paramÚtres de Flatboard.
J'utilise souvent dans les plugins si tu as remarqué.

Before ask a question, read the documentation.
Please like in alternativeto.net đŸ‘đŸ»
╰☆╼Flatboard╰☆╼ is a open source and community contributions are essential to project success!

Prétendre que votre droit à une sphÚre privée n'est pas important parce que vous n'avez rien à cacher n'est rien d'autre que dire que la liberté d'expression n'est pas essentielle car vous n'avez rien à dire.
-- E. Snowden

simon_20a65f4f
Simon  Monday 3rd December 2018, 16:50:55

Ok je m'explique : dÚs le chargement de flatboard, FlatBoard stoque dans un tableau toutes les données avec des
file_get_contents()
,
Ensuite, par exemple, au lieu de retourner un 
file_get_contents()
 dans
flatDB::readEntry()
, FlatBoard retourne
$GLOBALDATA[$type][$file]

Et par exemple, au lien de faire un
file_put_contents()
 dans
flatDB::saveEntry()
, FlatBoard fait un
$GLOBALDATA[$type][$file] = $data;

Et quand tout le site a finit d'ĂȘtre chargĂ©, FlatBoard enregistre tout avec des
file_pï»żut_contents()
.

Edit : c'est possible de faire pour que les zones de code ne prennent pas toute une ligne ?

Last modified: Monday 3rd December 2018, 16:52:27

Fred_4346f29d
Fred  Monday 3rd December 2018, 20:09:01

Mais file_get_contents() et file_put_contents sont nativement utilisé par PHP, je ne comprends pas trop ce que tu veux en fait.
Tout est chargé/écrit par ces 2 fonctions, tout cms utilisant des fichiers, les lits et les écrits de cette maniÚre.

Before ask a question, read the documentation.
Please like in alternativeto.net đŸ‘đŸ»
╰☆╼Flatboard╰☆╼ is a open source and community contributions are essential to project success!

Prétendre que votre droit à une sphÚre privée n'est pas important parce que vous n'avez rien à cacher n'est rien d'autre que dire que la liberté d'expression n'est pas essentielle car vous n'avez rien à dire.
-- E. Snowden

simon_20a65f4f
Simon  Monday 3rd December 2018, 20:33:43

Justement, c'est pas plus rapide de lire et écrire des données plusieurs fois depuis un tableau et d'en suite enregistrer que de lire des données depuis le fichier, d'enregistrer tout de suite les données modifié plusieurs fois de suite ?

Suggested Topics
identicon
http://cmstips.com started search HTTP 404
General Questions
444 1
identicon
Alexander Liebrecht started Soon Subforums are possible
Feature Requests
353 2
Want to read more? Browse all categories or view latest topics.