Crunchez vos adresses URL
|
Rejoignez notre discord
|
Hébergez vos photos
Page 107 sur 309 PremièrePremière ... 7579799100101102103104105106107108109110111112113114115117157207 ... DernièreDernière
Affichage des résultats 3 181 à 3 210 sur 9265
  1. #3181
    Est il possible d'optimiser un truc comme ca dans une classe/fonction ? C'est du PHP.


    Code:
    $requete = $PDO1->prepare('UPDATE `DB_data`
    						SET		`data_A1` = :data_A1,
    								`data_A2` = :data_A2,
    								`data_A3` = :data_A3,
    								`data_A4` = :data_A4,
    								`data_A5` = :data_A5,
    								`data_A6` = :data_A6,
    								`data_A7` = :data_A7,
    								`data_A8` = :data_A8,
    								`data_A9` = :data_A9,
    								`data_A10` = :data_A10
    						WHERE `data_id` = :data_id');
    
    $requete->bindValue(':data_id',	$data_id,	PDO::PARAM_INT);
    $requete->bindValue(':data_A1',	$data_A1,	PDO::PARAM_STR);
    $requete->bindValue(':data_A2',	$data_A2,	PDO::PARAM_STR);
    $requete->bindValue(':data_A3',	$data_A3,	PDO::PARAM_STR);
    $requete->bindValue(':data_A4',	$data_A4,	PDO::PARAM_STR);
    $requete->bindValue(':data_A5',	$data_A5,	PDO::PARAM_STR);
    $requete->bindValue(':data_A6',	$data_A6,	PDO::PARAM_INT);
    $requete->bindValue(':data_A7',	$data_A7,	PDO::PARAM_STR);
    $requete->bindValue(':data_A8',	$data_A8,	PDO::PARAM_STR);
    $requete->bindValue(':data_A9',	$data_A9,	PDO::PARAM_STR);
    $requete->bindValue(':data_A10',$data_A10,	PDO::PARAM_STR);
    
    
    $ligne = $requete->execute();
    Il y a beaucoup de répétition, le nombre de variable est suceptible de changer et en PHP il n'est pas possible de récupérer le nom des variables.
    Citation Envoyé par Big Bear Voir le message
    Si, on t'as mal renseigné (propagande de Poutine depuis les années 90s via Greenpeace, pour inciter les européens à acheter du gaz russe pour les jours sans vent/ sans soleil)

  2. #3182
    Citation Envoyé par Cowboy Voir le message
    Est il possible d'optimiser un truc comme ca dans une classe/fonction ? C'est du PHP.


    Code:
    $requete = $PDO1->prepare('UPDATE `DB_data`
    						SET		`data_A1` = :data_A1,
    								`data_A2` = :data_A2,
    								`data_A3` = :data_A3,
    								`data_A4` = :data_A4,
    								`data_A5` = :data_A5,
    								`data_A6` = :data_A6,
    								`data_A7` = :data_A7,
    								`data_A8` = :data_A8,
    								`data_A9` = :data_A9,
    								`data_A10` = :data_A10
    						WHERE `data_id` = :data_id');
    
    $requete->bindValue(':data_id',	$data_id,	PDO::PARAM_INT);
    $requete->bindValue(':data_A1',	$data_A1,	PDO::PARAM_STR);
    $requete->bindValue(':data_A2',	$data_A2,	PDO::PARAM_STR);
    $requete->bindValue(':data_A3',	$data_A3,	PDO::PARAM_STR);
    $requete->bindValue(':data_A4',	$data_A4,	PDO::PARAM_STR);
    $requete->bindValue(':data_A5',	$data_A5,	PDO::PARAM_STR);
    $requete->bindValue(':data_A6',	$data_A6,	PDO::PARAM_INT);
    $requete->bindValue(':data_A7',	$data_A7,	PDO::PARAM_STR);
    $requete->bindValue(':data_A8',	$data_A8,	PDO::PARAM_STR);
    $requete->bindValue(':data_A9',	$data_A9,	PDO::PARAM_STR);
    $requete->bindValue(':data_A10',$data_A10,	PDO::PARAM_STR);
    
    
    $ligne = $requete->execute();
    Il y a beaucoup de répétition, le nombre de variable est suceptible de changer et en PHP il n'est pas possible de récupérer le nom des variables.
    Avec Doctrine DBAL :

    Code PHP:
    $connection->update('DB_data', array(
        
    'data_A1' => $data_A1,
        
    'data_A2' => $data_A2,
        
    'data_A3' => $data_A3,
        
    // etc.
    ), array(
        
    'data_id' => $data_id
    )); 

  3. #3183
    Ca repete quand même 'data_A1' => $data_A1.

    Mes variables ont le même nom que les champ dans la table. Si je pouvais faire un array avec la liste des champs ... peut être construire ca avec un SELECT ? Je vais tenter ca.
    Citation Envoyé par Big Bear Voir le message
    Si, on t'as mal renseigné (propagande de Poutine depuis les années 90s via Greenpeace, pour inciter les européens à acheter du gaz russe pour les jours sans vent/ sans soleil)

  4. #3184
    Tsé

    Code PHP:
    $connection->update('DB_data', array(
        
    'data_A1' => $data_A1,
        
    'data_A2' => $data_A2,
        
    'data_A3' => $data_A3,
        
    // etc.
    ), array(
        
    'data_id' => $data_id
    )); 
    Ca revient à :

    Code PHP:
    //$datas = array("data_A1", "data_A2", ...)
    foreach($datas as $data) {
     
    $dataTab[$data] = $$data;
    }

    $connection->update('DB_data'$dataTab, array(
        
    'data_id' => $data_id
    )); 
    Par exemple par ce que bon je sais pas où tu les pioche tes data truc.


  5. #3185
    Après quelques années de Drupal, refaire du symfony, monter des pages, regarder les perf avec le mode debug sur ma VM Vagrant (sur un vieux IMac) :





    Avec l'environnement de prod, je gagne encore 90ms, hâte de déployer sur un vrai serveur.


  6. #3186
    590 ms quand même.

    Un cycle de CPU (qui correspond en gros à une demi addition), c'est un quart de nanoseconde, soit deux milliards de fois moins. Une lecture en mémoire c'est en moyenne une dizaine de nanosecondes.
    Si on rapportait un cycle de CPU à une seconde, 590ms correspondrait à plus de 60 ans. Le travail de toute une vie.

    En 590 ms, un jeu vidéo a le temps de dessiner 35 frames (avec à chaque frame le GPU qui exécute plusieurs millions de fois un programme fragment shader), puis de se reposer un peu après.
    Il faut 35 fois plus de temps pour générer ça que pour générer ça.

    Si tu envoies un ping en Australie, en 590ms il a le temps de faire au moins deux aller-retours, soit plus de 65000 kilomètres.
    Rust fanboy

  7. #3187

  8. #3188
    À chaque fois que je poste ici je le regrette par la suite.
    Mais je n'ai pas pu m'empêcher, ça me paraît tellement absurde de considérer 590ms comme "rapide" pour générer 200 ou 300 lignes de texte. Sans exagérer, ce sont les perfs que je m'attendrais à voir sur un ordi des années 70.

    Il faudrait au moins se dire "bon, j'ai réussi à descendre à 590 ms, je pense que ça devient acceptable" et pas ":bave:".
    Rust fanboy

  9. #3189
    Citation Envoyé par Tomaka17 Voir le message
    En 590 ms, un jeu vidéo a le temps de dessiner 35 frames (avec à chaque frame le GPU qui exécute plusieurs millions de fois un programme fragment shader), puis de se reposer un peu après.
    Il faut 35 fois plus de temps pour générer ça que pour générer ça.

    Si tu envoies un ping en Australie, en 590ms il a le temps de faire au moins deux aller-retours, soit plus de 65000 kilomètres.
    Tout d'abord un ping c'est 64 octets, ensuite les kilomètres ont un impact négligeable puisque l'essentiel est parcouru à la vitesse de la lumière (fibre), enfin que ce soit pour le ping ou le graphisme, ils bénéficient de traitements exécutés en parallèle et de composants matériels dédiés, ce qui n'est pas le cas d'une page HTML...

    En plus, il ne s'agit pas d'un simple affichage de 200 ou 300 lignes comme tu dis, il y a du traitement avant d'obtenir cet affichage, et je ne parle pas uniquement de la partie interprétation du langage, et je crois que dans ce topic vous êtes tous bien placés pour le savoir...

    Faudrait peut-être comparer ce qui est comparable...

  10. #3190
    Citation Envoyé par aggelon Voir le message
    Tout d'abord un ping c'est 64 octets, ensuite les kilomètres ont un impact négligeable puisque l'essentiel est parcouru à la vitesse de la lumière (fibre), enfin que ce soit pour le ping ou le graphisme, ils bénéficient de traitements exécutés en parallèle et de composants matériels dédiés, ce qui n'est pas le cas d'une page HTML...

    En plus, il ne s'agit pas d'un simple affichage de 200 ou 300 lignes comme tu dis, il y a du traitement avant d'obtenir cet affichage, et je ne parle pas uniquement de la partie interprétation du langage, et je crois que dans ce topic vous êtes tous bien placés pour le savoir...

    Faudrait peut-être comparer ce qui est comparable...
    Tout à fait, et je ne pense pas que Tomaka fait une comparaison dans le sens "ça, c'est mieux que ça"), mais plutot une mise en contexte.

    et Il faut être honnête, 590ms pour générer une page, c'est lent; Après, toujours dans le cadre de la mise en contexte, tenshu a p'tet mouillé son sous-main, parce qu'avant pour la même page, dans la même situation, il lui fallait le triple. Dans ce genre de cas, je comprends l'excès de salivation...
    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

  11. #3191
    Même mon rendu BI avec framework homemade prenait moins de temps.
    Citation Envoyé par doniazade Voir le message
    Nan mais faut leur regarder le cul, de face, elles sont laides.

  12. #3192
    Citation Envoyé par Teocali Voir le message
    et Il faut être honnête, 590ms pour générer une page, c'est lent; Après, toujours dans le cadre de la mise en contexte, tenshu a p'tet mouillé son sous-main, parce qu'avant pour la même page, dans la même situation, il lui fallait le triple. Dans ce genre de cas, je comprends l'excès de salivation...

    Suffit de lire mon post en fait : "Après quelques années de Drupal ...".
    Non 590ms c'est pas "lent" surtout si on lit la suite de mon message : "avec le mode debug sur ma VM Vagrant (sur un vieux IMac)".
    Mais bon une ligne de texte ça devait être trop fatiguant.

    Vu que c'est la page qui affiche toute la gestion d'un dossier client avec ses abonnements etc. c'est plutôt honorable.
    Sur un petit serveur de dev, la page met 500ms à charger dans le navigateur, si toutes les appli métier pouvaient se comparer à ça (surtout celle en php/mysql) on aurait un web bien différent.
    Cette page du forum met 7 secondes à titre de comparaison.

    Après on peut jouer au concours de teub des technos les plus rapides pour çi ou ça.
    Mais venir faire des comparaisons farfelue sur "les cycles CPU que si tu les ramènes a une seconde c'est une vie d'homme" ...


  13. #3193
    Citation Envoyé par tenshu Voir le message
    Suffit de lire mon post en fait
    Citation Envoyé par tenshu Voir le message
    Mais bon une ligne de texte ça devait être trop fatiguant.
    En général quand on link des pages wikipédia pour faire la leçon, on essaye d'être soi-même irréprochable sur le sujet derrière.

    Je comprends que les perfs ne soient pas la priorité, mais 590 ms ce n'est pas "beaucoup", ce n'est pas "lent", c'est "absurde". C'est comme si ta calculatrice de poche ramait 3 secondes pour faire "2 + 1". Peu importe le contenu de la page, si ça dépasse 100 millisecondes c'est que dans tous les cas il y a un problème.
    C'est pas parce que tu es habitué à ce que ce soit lent que c'est normal que ce soit lent et que signaler ça revient à faire "un concours de teub".

    D'ailleurs le concours de teub il existe déjà, et il n'est pas très brillant pour symfony : http://www.techempower.com/benchmarks/
    Rust fanboy

  14. #3194
    Putain, tu passes une mauvaise journée c'est ça? Tu cherches à relâcher ton aigreur de la semaine avant de partir en week-end?
    Fais donc chier tes collègues dans l'open space et lâche moi la grappe tu seras gentil.


  15. #3195
    Citation Envoyé par Tomaka17 Voir le message
    590 ms quand même.

    Un cycle de CPU (qui correspond en gros à une demi addition), c'est un quart de nanoseconde, soit deux milliards de fois moins. Une lecture en mémoire c'est en moyenne une dizaine de nanosecondes.
    Si on rapportait un cycle de CPU à une seconde, 590ms correspondrait à plus de 60 ans. Le travail de toute une vie.

    En 590 ms, un jeu vidéo a le temps de dessiner 35 frames (avec à chaque frame le GPU qui exécute plusieurs millions de fois un programme fragment shader), puis de se reposer un peu après.
    Il faut 35 fois plus de temps pour générer ça que pour générer ça.

    Si tu envoies un ping en Australie, en 590ms il a le temps de faire au moins deux aller-retours, soit plus de 65000 kilomètres.
    Je trouve ça interessant. Ça remet les références en place

  16. #3196
    Citation Envoyé par moimadmax Voir le message
    Je trouve ça interessant. Ça remet les références en place
    Tu te rends compte qu'il compare des poires et des pommes j'espère ?


  17. #3197

  18. #3198
    C'est vrai que ça part rapidement en débat d'expert ici .

    Le plus rigolo c'est que vous avez tous les deux raison mais vous arrivez quand même à vous mettre sur la tronche parce que vous prenez pas en compte le contexte.

  19. #3199
    Non mais moi j'ai donné le contexte c'est jean pierre dans son B-2 américain volant à la vitesse de la lumière qui est venu comparer les perf d'un framework sous LAMP avec des cycles CPU, des rendus via GPU ou des latences réseau.


  20. #3200
    Je suis de tout coeur avec toi tenshu, je bosse sur du SharePoint, et 590ms c'est bien

  21. #3201
    Citation Envoyé par Tomaka17 Voir le message
    Peu importe le contenu de la page, si ça dépasse 100 millisecondes c'est que dans tous les cas il y a un problème.
    Je pense que je n'ai pas compris cette phrase... ou alors il y a une ironie trop subtile pour moi ?

    En tout honnêteté, ça m’intéresserait que tu développes s'il te plaît.

  22. #3202
    Bon, sinon j'aurais bien besoin d'un coup de main avec paypal.
    J'utilise leur nouveau framework PHP :
    Code PHP:
    "paypal/merchant-sdk-php":"*"
    Les tests d'IPN avec leur interface de test sandbox se passent parfaitement.

    Par contre, lors de tests via le process de commande normal, l'IPN n'est pas appelé .

    Pourtant dans le code il y a bien :
    Code PHP:
            $paymentDetails = new PaymentDetailsType();
            
    $itemAmount = new BasicAmountType('EUR'$price);
            
    $itemDetails = new PaymentDetailsItemType();
            
    $itemDetails->Name 'blabla';
            
    $itemDetails->Amount $itemAmount;
            
    $itemDetails->Quantity 1;
            
    $itemDetails->ItemCategory 'Physical';
            
    $paymentDetails->PaymentDetailsItem[] = $itemDetails;

            
    $paymentDetails->ShipToAddress $address;
            
    $paymentDetails->ItemTotal = new BasicAmountType('EUR'$price);
            
    $paymentDetails->OrderTotal = new BasicAmountType('EUR'$price);

            
    $paymentDetails->NotifyURL 'URL de la page de notif';
            
    $paymentDetails->InvoiceID $order['id']; 
    Halp J'ai pas le droit de dire pourquoi c'est mais c'est pour votre bien.

    Pour info ce n'est pas qu'il y a une erreur lors de l'appel de la page IPN, il n'y a aucun call sur la page d'IPN.

  23. #3203
    Citation Envoyé par war-p Voir le message
    Je suis de tout coeur avec toi tenshu, je bosse sur du SharePoint, et 590ms c'est bien
    Nan mais Sharepoint, sérieusement...

    Citation Envoyé par doniazade Voir le message
    Nan mais faut leur regarder le cul, de face, elles sont laides.

  24. #3204
    Citation Envoyé par hijopr Voir le message
    Bon, sinon j'aurais bien besoin d'un coup de main avec paypal.
    J'utilise leur nouveau framework PHP :
    Code PHP:
    "paypal/merchant-sdk-php":"*"
    Les tests d'IPN avec leur interface de test sandbox se passent parfaitement.

    Par contre, lors de tests via le process de commande normal, l'IPN n'est pas appelé .

    Pourtant dans le code il y a bien :
    Code PHP:
            $paymentDetails = new PaymentDetailsType();
            
    $itemAmount = new BasicAmountType('EUR'$price);
            
    $itemDetails = new PaymentDetailsItemType();
            
    $itemDetails->Name 'blabla';
            
    $itemDetails->Amount $itemAmount;
            
    $itemDetails->Quantity 1;
            
    $itemDetails->ItemCategory 'Physical';
            
    $paymentDetails->PaymentDetailsItem[] = $itemDetails;

            
    $paymentDetails->ShipToAddress $address;
            
    $paymentDetails->ItemTotal = new BasicAmountType('EUR'$price);
            
    $paymentDetails->OrderTotal = new BasicAmountType('EUR'$price);

            
    $paymentDetails->NotifyURL 'URL de la page de notif';
            
    $paymentDetails->InvoiceID $order['id']; 
    Halp J'ai pas le droit de dire pourquoi c'est mais c'est pour votre bien.

    Pour info ce n'est pas qu'il y a une erreur lors de l'appel de la page IPN, il n'y a aucun call sur la page d'IPN.
    Sur ton compte PayPal tu dois pouvoir rejouer les appels IPN (autant en dev qu'en prod). Ca donne des 400 ?

  25. #3205
    Citation Envoyé par gros_bidule Voir le message
    Sur ton compte PayPal tu dois pouvoir rejouer les appels IPN (autant en dev qu'en prod). Ca donne des 400 ou 500 ?
    Nope, comme je le disais les appels IPN fait à partir de l'interface de test (https://developer.paypal.com/webapps.../ipn_simulator) passent sans soucis .

  26. #3206
    La transaction passe bien ?

    Essaye de voir si ils proposent des log des réponses sur leur requête IPN.
    Soit tu as une merde sur le controller qui correspond à l'url de retour IPN, soit la requête est bloquée avant d'y arriver.
    Tu es sûr que Paypal peut accéder à l'URL? Genre pas de htacces ou de serveur hébergé dans un réseau fermé.


  27. #3207
    Citation Envoyé par tenshu Voir le message
    La transaction passe bien ?

    Essaye de voir si ils proposent des log des réponses sur leur requête IPN.
    Soit tu as une merde sur le controller qui correspond à l'url de retour IPN, soit la requête est bloquée avant d'y arriver.
    Tu es sûr que Paypal peut accéder à l'URL? Genre pas de htacces ou de serveur hébergé dans un réseau fermé.
    C'est la même url utilisée pour les tests sur l'interface que dans le code PHP, donc il n'y a pas de problèmes d'accès normalement.
    Il n'y a rien dans les access log d'apache pour l'URL au moment de la commande, c'est bien que paypal considère qu'il n'y a pas d'IPN a appeler.
    Il doit y avoir un truc au niveau de la configuration qui n'est pas bon mais à part $paymentDetails->NotifyURL, je n'ai rien trouver dans la doc de l'API.


  28. #3208
    Ok donc la transaction arrive bien chez paypal ?

    Non par ce que dans le code je te vois manipuler les valeurs de propriétés d'un objet PaymentDetailsType, mais pas d'appel à une méthode ou ce que tu en fais.


  29. #3209
    Citation Envoyé par Akajouman Voir le message
    Nan mais Sharepoint, sérieusement...

    Bah, ça va on a vu pire

  30. #3210
    Cold fusion? Lotus Note?



Page 107 sur 309 PremièrePremière ... 7579799100101102103104105106107108109110111112113114115117157207 ... DernièreDernière

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •