CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

forcer l'execution d'Apache sur pagefile

apeiayxwzernt
apeiayxwzernt
Niveau 10
01 février 2013 à 21:18:56

Bonjour,
j'utilise PHP pour faire des calculs très lourds. Je fais tourner ça @home sur un easyphp Windows7.

Je me heurte à cela.
Fatal error: Out of memory (allocated 1122500608)

La limite correspond à ce qu'il reste de RAM physique. J'ai 4 Go.
J'ai pourtant 8 Go de swap derrière, mais Apache ne veut pas le prendre en compte, il s'arrête une fois la mémoire physique remplie.

Comment faire?

Autre piste, l'erreur fatale survient lors d'une lecture intégrale de la table qui fait 2 millions d'enregistrements et 250 Mo.
Juste la lecture (mysqli query SELECT * FROM table).
Ça vous parait pas bizarre que la lecture d'une table de 250 Mo bouffe 1 Go de RAM?
Le serveur SQL derrière, lui, n'a aucun souci.

deepblue
deepblue
Niveau 16
01 février 2013 à 22:47:07

Tu as l'espace mémoire de tes données et celui des allocations mémoire de tes variables. Quelle est la configuration de php ?

apeiayxwzernt
apeiayxwzernt
Niveau 10
02 février 2013 à 02:40:19

J'ai mis le memory_limit à -1 pour pas qu'il m'embete.

Si je le mets en-dessous de 1 Go, la même erreur sort, avec la valeur fixe de memory limit.
Si je le mets au-dessus, c'est la mémoire physique qui bloque.
Si je mets 4G ou plus, Apache refuse d'exécuter le script.

deepblue
deepblue
Niveau 16
03 février 2013 à 02:15:47

Tes 250Mo de données ont été calculées comment ? Taille de la db (fichiers), dump SQL, via phpmyadmin ?

Comme récupères-tu les données en terme de développement : PDO, mysql_query ? C'est via un ORM (type Doctrine ou Propel) ?

Je suis confronté (notamment ces dernières semaines) à des problématiques similaires (mais sur des DB de plusieurs 10ènes de Go).

apeiayxwzernt
apeiayxwzernt
Niveau 10
06 février 2013 à 03:18:49

La taille est annoncée par phpmyadmin.

Je récupère via mysqli_query.

Ce qui est étrange c'est que si je fais seulement $db->mysql_query('SELECt ...');, sans while derrière pour mettre les données dans des variables php, la mémoire sature quand même.

Caymal_keke
Caymal_keke
Niveau 32
06 février 2013 à 09:53:09

le vrai problème la, c'est ton code

au dessus de 512mo deja, il y a un problème quelque part !

apeiayxwzernt
apeiayxwzernt
Niveau 10
08 février 2013 à 15:28:11

Tu m'expliqueras comment je peux avoir un code mal foutu avec juste la ligne de mysqli_query (et la connexion à la BdD).

deepblue
deepblue
Niveau 16
08 février 2013 à 18:00:53

On pourrait avoir un dump pour faire des tests ?

Sous forums
  • Aide à l'achat Mac
  • Création de Jeux
  • Linux
  • Programmation
  • Création de sites web
  • Internet
  • Steam Deck
  • Macintosh
  • Hardware