@tenshu, très intéressé par vos stratégies pour gérer la charge, si tu peux en parler.
Nous on boss beaucoup à base d'ESIs et donc varnish, avec un peu de memcache pour certains trucs. Mais on tourne toujours sur du MySQL, et SF 3.2 sur PHP 5.6.
@tenshu, très intéressé par vos stratégies pour gérer la charge, si tu peux en parler.
Nous on boss beaucoup à base d'ESIs et donc varnish, avec un peu de memcache pour certains trucs. Mais on tourne toujours sur du MySQL, et SF 3.2 sur PHP 5.6.
Bien on est sur le même caching, on a un varnish + 2 memcache + 2 gros serveurs HTTP et 4 moyens.
On a un cluster mysql read only et un pour l'écriture.
On utilise intensivement elastic search.
A part ça on a un gros boulot pour refactorer l'existant, l'équipe a visiblement empilé des trucs depuis 2 ans et c'est souvent pas top en perfs.
Le gros chantier va être de découpler complètement l'ensemble de la vielle BDD toute moisie pour utiliser un model propre avec doctrine.
Pour te donner une idée actuellement on fait des queries monstrueuses avec la dbal pleines de CASE par ce par exemple les champs bool sont des valeur 'Y' et 'N'.
Et ensuite on hydrate les objets en faisant un gros foreach des familles dans lequel on va également hydrater des dépendances
Déjà je vous conseille de passer en php 7(.x) ça prend une petit journée de mise en place et le reste c'est que du bonus
Très honnêtement sans ça on tenait pas la charge pour la release.
- - - Mise à jour - - -
Beaucoup plus spécialisé et beaucoup beaucoup moins connu
D'ailleurs il me semble qu'il n'y a que A little market d'Etsy qui a des équipes technique en Europe (à Paris).
Les anciens qui étaient sur mon projet utilisaient ES aussi, mais c'était n'importe quoi parce qu'ils utilisaient ES pour tout alors que les données étaient hyper connectées. Du coup leur solution a été de dupliquer les données dans les documents . Résultat on a repris le projet depuis 0 avec mysql.
Vous l'utilisez comment ES vous ?
Bien ça va être une réponse à la con, mais ça dépend.
Je suis encore assez neuf dans cette techno donc je pourrais pas trop détailler.
Mais ça va de la recherche assez simple pour des trucs aussi cons que de l'auto-complete à des trucs plus avancés comme : récupération d'une liste d'item avec mysql puis application des tris + filtres avec elastic.
En effet, j'ai plein de lourdeurs @lc niveau requêtes et PS offre des outils natifs de concaténation. Malheureusement, si je le fais, ça fait foirer le template en responsive. Donc j'ai laissé comme ça, vu que le site n'est pas désagréable pour l'utilisateur final (encore une fois, c'est du travail d'amateur sans le sou, donc je m'investis volontiers si vous avez des suggestions, mais ne soyez pas trop durs hein !).
Je sais que ça fait hurler les pros et je m'en excuse platement. Mais j'essaie d'être pragmatique Encore une fois, je suis toujours partant pour m'améliorer si vous avez des pistes
Bref, le problème actuel pour la non prise en compte des modifs de style, c'est que je souhaite modifier la page produit en responsive (par exemple : https://sympa-bonnard.ch/ceintures/9...le_ceinture-32) pour :
1) donner la possibilité de naviguer entre les images (dans la console, j'inspecte sous div="view_block" et je désactive "visibility" et "height", ce qui donne)
Tip top donc, mais quand je fais la modif dans mon FTP dans product.css ligne 144, bah y a rien qui se passe
2) désactiver le zoom quand on "clique" (ici on tape vu que c'est sur mobile), car c'est vraiment pas ergonomique. Et là je trouve pas, mais je pense qu'il faut toucher au php (probablement dans jquery jzoom). L'idéal serait de permettre à l'image d'être zoomée en pinçant (mais que l'image, pas le texte), mais je veux pas non plus trop fantasmer hein
@MrBeaner, pour ton 1, tu devrais regarder l'onglet computed qui devrait te dire la chaine de priorité. Remodifie et regarde ce que ça donne et qui prends la main du coup.
Attention, un Max_well peut en cacher un autre
Equipe Highlander La Rache
Merci ! Je vais checker ça alors Un pas de plus vers la solution
Par contre, j’espère que tu ne modifies pas en prod (je te vois parler de ftp là)
Si c'est le cas, arrête tout de suite ces conneries : tu installes VMWare Player ou autre, tu installes un lamp (Linux, Apache Mysql PHP) dessus et tu rappatries tes fichiers et ta bdd sur cet environnement de dev.
Si t'as pas envie de te faire chier à installer tout ça, ben tu te prends un petit hébergement à pas cher (genre https://www.kimsufi.com/fr/hosting.xml ou https://www.gandi.net/hebergement/si...e=php&db=mysql ou encore https://www.infomaniak.com/fr/hebergement/web-mail si tu veux rester en Suisse) qui te servira pour tes tests.
Désolé pour l'absence, c'était le rush pour Noël
Merci pour le tip, je savais déjà que c'est pas conseillé, mais j'ai parfois la flemme malsaine J'ai tout WAMP d'installé déjà, donc ça va, j'ai passé le plus chiant !
Par contre, si je modifie viteuf en prod, je sauvegarde systématiquement le fichier que je veux modifier avant de le changer. Y a vraiment beaucoup de risques si on modifie, même pour du CSS ?
Ça augmente les risques que tu casses un truc ailleurs parce que tu modifies un truc sans en tester la portée (genre, ha ba ça je m'en servais plus je le vire, et en fait t'as cassé une page au fin fond de ton site).
C'est fortement corrélé à ta relation avec le client et ce qu'il y a a perdre sur le site (en terme de ventes).
Ça dépend du jour aussi, si c'est un vendredi, t'es à peu prés sur que tu vas casser un truc
Dernière modification par Max_well ; 16/12/2016 à 10h33.
Attention, un Max_well peut en cacher un autre
Equipe Highlander La Rache
Justement, je backup mon site toutes les deux semaines tellement je connais ma maladresse
C'est bien de me remettre sur les clous, il faut que je sois plus rigoureux quand je joue les apprentis sorciers N'empêche, le dev web ça a l'air fun comme ça (en amateur), mais je sais pas si je pourrais le faire toute la semaine
C'est comme pour tout : c'est fun si tu fais des trucs funs tout en essayant d'améliorer tes bonnes pratiques.
i5 3550 (3,3 Ghz) – 16 Go DDR3 – GeForce 1070 8 Go – Crucial MX300 512 Go et M4 128 Go – Creative Soundblaster Z – LDLC-QS 550+ – LG 27GN850 – Iiyama G2773 – Bitfenix Phenom M.
Attention, un Max_well peut en cacher un autre
Equipe Highlander La Rache
Une petite retro des optimisations de PHP et un coup d'oeil sur celles a venir avec le JIT dans php 8
https://www.phpclasses.org/blog/post...evolution.html
le tableau recap
Ca donne envie
Venant de Java, je pense sans arrêt aux désagréments que je n'aurais pas en php : builds Maven/Gradle de 50 ans pour pondre un war de 100Mo, conso mémoire chiante à gérer, Oracle qui nous pompe l'air, le JDK9 qui sortira probablement en kit et en même temps qu'HalfLife3...
En plus chez php ils "hydratent" leurs objets. J'ai un train de retard, je sais, mais c'est un truc qu'on a pas en Java (et dans plein de langages), et qu'un collègue vient de me montrer. Je trouve le principe top.
Fuck.
"hydrater" ? kezaco ?
Et sinon, php s'améliore de plus en plus mais y'a pas, j'arrive pas à me faire à la syntaxe... ça doit venir du fait qu'elle est inspiré de perl et que j'ai été traumatisé par perl quand j'étais petit
Ce qu'il faut savoir, c'est qu'on ment beaucoup aux minmatars, surtout lorsqu'ils posent des questions du style: "t'es sûr que ça vole, ce truc ?" Cooking Momo, le 30/08/09
tiré de wikipedia :
PHP/FI could help to build simple, dynamic web applications. To accelerate bug reporting and to improve the code, Lerdorf initially announced the release of PHP/FI as "Personal Home Page Tools (PHP Tools) version 1.0" on the Usenet discussion group comp.infosystems.www.authoring.cgi on June 8, 1995.[14][15] This release already had the basic functionality that PHP has as of 2013. This included Perl-like variables, form handling, and the ability to embed HTML. The syntax resembled that of Perl but was simpler, more limited and less consistent
Ce qu'il faut savoir, c'est qu'on ment beaucoup aux minmatars, surtout lorsqu'ils posent des questions du style: "t'es sûr que ça vole, ce truc ?" Cooking Momo, le 30/08/09
A l'heure actuelle la seule subsistance de spécificités syntaxiques Perl dans PHP c'est l'usage du $ ; et encore, en Perl ça ne désigne que les variables scalaires, et je soupçonne que ça ait été étendu à tous les types de variable en PHP pour simplifier l'écriture de son analyseur syntaxique... Si PHP avait conservé toutes les bizarreries de Perl en matière de syntaxe, je doute qu'il aurait connu le succès qu'il a actuellement.
Ce qu'il faut savoir, c'est qu'on ment beaucoup aux minmatars, surtout lorsqu'ils posent des questions du style: "t'es sûr que ça vole, ce truc ?" Cooking Momo, le 30/08/09
Je suis très novice mais j'ai du mal a comprendre pourquoi d'autre langage ne peuvent "hydrater" leurs objets. Après tout en PHP, sauf framework, on crée une fonction "Hydrate" dans notre class, qui aura juste mission de récupérer un tableau et de le répartir entre les attributs via les setters, non ? On peut ensuite développer ça avec + ou - d’élégance (Appel des setters dynamiquement en fonction des clés du tableau etc)
L'hydratation est en fait une conversion de données, typiquement d'un tableau de données scalaires vers un objet (ou un tableau d'objets). C'est le procédé par lequel par exemple une classe peut prendre, en déléguant cette action à un hydrateur, le résultat d'une requête SQL, un tableau, et le convertir en entités, des objets dont les propriétés reprennent ces données.
Il y a un intérêt évident à créer des hydrateurs, donc des objets spécialisés dans cette conversion, c'est celui de pouvoir en changer dynamiquement ou par configuration. Si, pour reprendre l'exemple des entités, leur source de données n'est plus SQL mais un fichier XML, il suffit de changer d'hydrateur, sans que le reste du code ne change.
Ouais, en gros, en java tu crées une fonction qui prends une map en paramètres et c'est fait. Rien d'exceptionnel ni d'unique à PHP donc.
Ce qu'il faut savoir, c'est qu'on ment beaucoup aux minmatars, surtout lorsqu'ils posent des questions du style: "t'es sûr que ça vole, ce truc ?" Cooking Momo, le 30/08/09
Tu crées plutôt une classe spécialisée, implémentant une interface « hydrate », si tu veux pouvoir réutiliser cette fonction ailleurs et conserver l'abstraction. Hormis cela, le principe est effectivement bête comme tout, et n'est pas spécifique à PHP. On le retrouve implémenté dans les « gros » frameworks PHP du moment, Symfony et Zend Framework.