Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 17-03-2009 15:32:52

maxime
Membre
Date d'inscription: 08-04-2008
Messages: 17

[Zend_Cache][1.7] Compresser le cache

Bonjour,

J'utilise Zend_Cache pour mettre en cache du html, css, et javascript, que du classique.
Je voudrais améliorer un peu cela en compressant le fichier de cache. Pas une compression gzip, mais supprimer les sauts de ligne, les espaces, voir renommer des variables trop longue (selon l'idée Dojo ici http://shrinksafe.dojotoolkit.org/).
Je n'ai rien vu de tel dans ZF, est ce une erreur de ma part ?

Hors ligne

 

#2 17-03-2009 19:17:08

mdelanno
Membre
Lieu: Nord
Date d'inscription: 26-08-2007
Messages: 90
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Non, mais tu peux écrire un Frontend dérivé de Zend_Cache_Backend_File. T'as intérêt à t'accrocher parce que je viens de jeter un oeil au code, ça n'a pas l'air simple...

Hors ligne

 

#3 18-03-2009 07:35:24

maxime
Membre
Date d'inscription: 08-04-2008
Messages: 17

Re: [Zend_Cache][1.7] Compresser le cache

Ok, j'ai posté cela sur ZF issue tracker (http://framework.zend.com/issues/browse/ZF-6051).
En effet, le code est complexe, mais dès que j'ai un moment je vais essayé de m'y mettre.

Hors ligne

 

#4 18-03-2009 12:07:34

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Zend_Cache][1.7] Compresser le cache

Je nes avais pas que Zend_Cache mettait en cache du html, css, javavscript ?


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#5 18-03-2009 13:40:10

maxime
Membre
Date d'inscription: 08-04-2008
Messages: 17

Re: [Zend_Cache][1.7] Compresser le cache

Si, on peut mettre en cache quasiment n'importe quoi avec Zend_Cache. Bon encore faut-il qu'il y ait de l'intérêt.

Hors ligne

 

#6 19-03-2009 09:52:28

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Perso je l'utilise même pour mettre en cache mes header/footer dynamiques...

Pour ce qui est de la compression, regarde otu simplement du côté d'un JSmin ou autre du même style (CSSTidy) ...

Hors ligne

 

#7 19-03-2009 12:33:19

baboune
Membre
Date d'inscription: 29-11-2008
Messages: 103

Re: [Zend_Cache][1.7] Compresser le cache

Votre mise en cache du css, javascript, header et footer est dans un controller qui hérite tous les autres ou dans un plugin ?

Hors ligne

 

#8 19-03-2009 12:42:46

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Header footer c directement dans mon layout
(CSS/JS c'est dans mon plugin d'initialisation, via un simple paramètre GET (oldschool) mais c'est sans Zend_Cache)

Hors ligne

 

#9 19-03-2009 13:49:47

keilnoth
Membre
Date d'inscription: 30-08-2008
Messages: 128
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Pour javascript il y a "packer" (http://dean.edwards.name/packer/) également. Ca doit être assez facilement intégrable dans les helpers headLink ou headScript tout ça.


Quelques tutoriaux Zend Framework !

Hors ligne

 

#10 19-03-2009 13:53:10

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Zend_Cache][1.7] Compresser le cache

Alors si je comprend sbien vous utilisez le cache mémoire (APC ?) pour mettre en mémoire css/js, pour éviter les accès disque dur, sinon ca ne sert à rien de mettre en cache , c'est bien ça ?

Perso je l'utilise même pour mettre en cache mes header/footer dynamiques...

C'est possible ça ? Supposons, on a un caddie sur le header, si je mets le header en cache ca mettra aussi l'info du caddie. Comment ça marche ?


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#11 19-03-2009 14:28:50

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Cache][1.7] Compresser le cache

keilnoth a écrit:

Pour javascript il y a "packer" (http://dean.edwards.name/packer/) également. Ca doit être assez facilement intégrable dans les helpers headLink ou headScript tout ça.

A noter que ce système dégrade un peu les perfs côté client évidement

alien7 a écrit:

Alors si je comprend sbien vous utilisez le cache mémoire (APC ?) pour mettre en mémoire css/js, pour éviter les accès disque dur, sinon ca ne sert à rien de mettre en cache , c'est bien ça ?

Non perso j'utilise le cache de base avec un backend en fichier pour l'instant. J'ai pas vraiment fais de benchmarks pour le moment. Mais dans tous les cas ça m'évite de générer mon menu à chaque fois vu que j'utilise un helper...
En gros je stocke en cache le rendu de mon helper...

alien7 a écrit:

Supposons, on a un caddie sur le header, si je mets le header en cache ca mettra aussi l'info du caddie. Comment ça marche ?

Ah, là, débrouille toi mon gas big_smile
Non sérieusement, j'ai plusieurs caches... Une partie statique du header, une partie menu-non connecté, une partie menu-user(id) , une partie login et une partie logged-in-user(id). Donc pleins de fichiers en fonction de mon nombre d'utilisateurs...

Hors ligne

 

#12 19-03-2009 17:04:57

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Zend_Cache][1.7] Compresser le cache

Ah d'accord, tu découpes en plusieurs parties ton header.

Sinon Zend_cache ne met pas en cache les fichiers js et css, aucun interet.


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#13 19-03-2009 17:21:57

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Sinon Zend_cache ne met pas en cache les fichiers js et css, aucun interet.

Oui mais imaginons que pour une grosse appli, tu ais plein de fichiers, genre presque un css et/ou js par controller plus plein d'autres car design compliqué / comportement client riche et que comme chez toi, tu ranges bien tout ça dans des tiroires/étagères différentes pour mieux t'y retrouver... et que tu compresses tout en un seul fichier pour ton client, là la notion de cache devient intéressante smile

ps: je crois que IE6 bloque a 30 css inclus ou 30 js je sais plus trop...

Hors ligne

 

#14 19-03-2009 20:03:13

keilnoth
Membre
Date d'inscription: 30-08-2008
Messages: 128
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Bon, si tu arrives à 30 JS / CSS, je pense qu'on peut dire que tu as un gros problème conceptuel. smile

La compression permet de gagner sur la bande passante et le temps de transfert. Réunir tous les CSS et JS en un seul fichier permet d'économiser sur le nombre de requêtes passées au serveur web. Mais là on parle pas de cache mais de compression et d'optimisation.

Ce n'est pas au serveur de mettre en cache les CSS et JS étant donné que ce n'est pas lui qui les "exécute" mais le client donc l'explorateur.

Mais comme dit MoOx, la génération d'une en-tête ou d'un pied de page peut être mise en cache afin d'épargner au serveur la tâche de re-génération du contenu souvent similaire à chaque requête. smile


Quelques tutoriaux Zend Framework !

Hors ligne

 

#15 19-03-2009 20:11:37

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Cache][1.7] Compresser le cache

keilnoth a écrit:

La compression permet de gagner sur la bande passante et le temps de transfert. Réunir tous les CSS et JS en un seul fichier permet d'économiser sur le nombre de requêtes passées au serveur web. Mais là on parle pas de cache mais de compression et d'optimisation.

Ce n'est pas au serveur de mettre en cache les CSS et JS étant donné que ce n'est pas lui qui les "exécute" mais le client donc l'explorateur.

C'est pas faux mais là, le titre du topic induit en erreur :p

Hors ligne

 

#16 19-03-2009 20:31:56

keilnoth
Membre
Date d'inscription: 30-08-2008
Messages: 128
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Oui, je dirais même que nous en sommes enduit... d'erreur... smile


Quelques tutoriaux Zend Framework !

Hors ligne

 

#17 19-03-2009 22:25:47

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Zend_Cache][1.7] Compresser le cache

Ce n'est pas au serveur de mettre en cache les CSS et JS étant donné que ce n'est pas lui qui les "exécute" mais le client donc l'explorateur.

C'est bien ce que je disais aussi.

J'utilise Zend_Cache pour mettre en cache du html, css, et javascript, que du classique.

Donc ce n'est pas possible.


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#18 19-03-2009 23:51:14

Mr.MoOx
Administrateur
Lieu: Toulouse
Date d'inscription: 27-03-2007
Messages: 1444
Site web

Re: [Zend_Cache][1.7] Compresser le cache

Vous pinaillez là...

J'utilise Zend_Cache pour mettre en cache du html, css, et javascript, que du classique.

A mon avis il parle d'une simple string...
Le serveur met en cache le code (sous sa forme String quoi)... et le client se demerde à mettre en cache le js S'IL est dans un fichier lié...

Hors ligne

 

#19 20-03-2009 08:18:44

maxime
Membre
Date d'inscription: 08-04-2008
Messages: 17

Re: [Zend_Cache][1.7] Compresser le cache

Je que j'entendais pas mettre en cache html, css et javascript, c'est de l'html, du css et du javascript générés dynamiquement par php, pas des fichiers statiques.
Je ne met pas encore en cache des résultats de requête, de fonctions, etc ...

Hors ligne

 

#20 20-03-2009 09:21:20

alien7
Membre
Date d'inscription: 29-04-2007
Messages: 447

Re: [Zend_Cache][1.7] Compresser le cache

Ah d'accord j'y vois plus clair maintenant lol.
Jj'ai polué le post pour rien. Desolé


ZF 2.3 - Twitter Bootstrap 3.2
Local: Ubuntu  -> Apache2 2.4 - MariaDB 10 - PHP 5.6

Hors ligne

 

#21 14-04-2009 09:27:28

maxime
Membre
Date d'inscription: 08-04-2008
Messages: 17

Re: [Zend_Cache][1.7] Compresser le cache

Bonjour,
Voici l'issue sur le bug tracker ZF : http://framework.zend.com/issues/browse/ZF-6051
Si vous voulez voter pour que cela soit intégré dans la prochaine version, ou tester le code proposé, n'hésitez pas smile

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages