Domanda

Attualmente codice in PHP. Di recente ho lavorato a un progetto usando PHP e Symfony che:

  1. legge file XML di grandi dimensioni (molti analisi/lettura DOM),
  2. Converte grandi file XML in array di grandi dimensioni,
  3. unisce 2 array di grandi dimensioni (un sacco di ordinamento dell'array),
  4. Prende i 2 grandi array e li trasforma in un grande file CSV.

L'ho finito in PHP, ma ora è un po 'intensivo di memoria e richiede circa 8-15 secondi per funzionare. Quindi ora ho le seguenti opzioni e ho bisogno di aiuto per sceglierne una:

  1. Prova a riscrivere/refactarlo usando metodi migliori in PHP
  2. Scegli un linguaggio di programmazione diverso (volevo impararne uno, forse un altro linguaggio elabora queste cose molto più velocemente?)
  3. Fai 1 o 2 e impostare inoltre qualcosa per leggere costantemente i file XML e scriverli su documenti MongoDB per servire i clienti dal database invece di demolire i dati.

Sono propenso a fare 2 o 3 (usando una lingua diversa), dal momento che sono sicuro che esiste un'altra lingua che gestisce questo tipo di compiti molto più velocemente (ad esempio Python, C ecc.). È solo che non sono sicuro di quale.

Nessuna soluzione corretta

Autorizzato sotto: CC-BY-SA insieme a attribuzione
scroll top