Salve a tutti,
so che il titolo è un po' troppo generico, ma ho diverse domande sul cosa posso o non posso fare, visto che ho provato alcuni script php e non funzionano.
Ho la necessità di leggere un file remoto (ES: sito/remoto/file.sql), e da questo aggiornare il mio database.
Il contenuto del file è del tipo:
INSERT INTO table VALUES (.......)
e contiene circa 15000 righe.
L'esecuzione dello script salta la parte dell'apertura e lettura del file e si conclude correttamente, tranne per il fatto che, appunto, non aggiorna niente.
Inoltre, anche se si riuscisse a sistemare questo problema, avrei un'altra domanda.
Ho provato questo script php su altri servizi gratuiti simili ad altervista, e spesso (ma non sempre) mi veniva fuori un warning e che l'esecuzione era stata bloccata perchè il tempo di esecuzione massimo era di 10 secondi. Questo script necessita di circa 13 massimo 20 secondi, e deve essere eseguito ogni 24 ore.
Anche qui su altervista ho le stesse limitazioni?
Non l'ho specificato prima, ho un account gratuito qui su altervista, e ho investito i miei altercent per avere un database illimitato.
Se anche qui il limite massimo è di 10 secondi, c'è un modo per superare questo limite? Eventualmente anche passando ad account a pagamento.
Ultima cosa, nell'ultimo servizio di hosting in cui sono stato, di punto in bianco il mio sito, il database e tutto quello che riguardava il mio account sono stati cancellati, senza avvisi o possibilità di recuperare i file e i dati del database, cosa molto fastidiosa. Il motivo è che alcune query erano piuttosto complesse (passando su altervista le ho eliminate per evitare succedesse anche qui) e il mio account è stato cancellato perchè l'esecuzione delle query in certi casi era lunga (in media, quelle più frequenti, erano di 8 secondi). Reimplementando le stesse query complesse, rischierei la stessa cosa anche qui su altervista (con account gratuito)? Cioè che venga cancellato tutto senza preavviso? Se mi avessero avvisato che le query erano troppo complesse, le avrei senza dubbio eliminato o almeno modificato e semplificato.
I test delle query complesse ovviamente le faccio in locale, ma ho un vecchio pentium4 con poca ram, e una query che su server ci impiega 0,08 secondi, in locale ci mette 20 o 30 secondi. Quindi per testarne la velocità devo provarle sul server.
Insomma, vorrei evitare qualunque tipo di problema, anche a costo di fare l'upgrade ad account a pagamento.
Ciao,
non mi risulta che esista una versione a pagamento di AlterVista :-)
Per quanto riguarda le tue domande, se devi recuperare un file con una chiamata server to server, è possibile che il server che cerchi di contattare non sia nella whitelist iniziale. Puoi sbloccare le connessioni con la procedura che trovi nel pannello di controllo. Il tempo massimo di esecuzione degli script è più lungo di 10 secondi, non dovresti aver problemi.
Riguardo a quello che puoi fare o non puoi fare con il tuo account su AlterVista, ti consiglio di dare un'occhiata al regolamento, se lo rispetti non dovresti aver problemi.
Grazie mille per la rapida risposta :)
Mea culpa, ho una gran confusione, vado subito a rileggere il regolamento!
Provo anche ad aggiungere quel server nella whitelist e rifaccio le prove necessarie.
Spero funzionino, così imposto i cron jobs e sto a cavallo!
Solo un'ultima cosa, sai dirmi quanto è il limite massimo di esecuzione di uno script php?
Ho la necessità di aggiornare più tabelle da più server, come detto prima per aggiornare una tabella ci impiego da un minimo di 5 secondi ad un massimo di 20 secondi (dipende dalle dimensioni), aggiornando due tabelle con lo stesso script ne raddoppierebbe il tempo di esecuzione. Figurarsi aggiornarne 3 o 4, il tempo sarebbe eccessivo. Giusto per farmi due conti e capire fino a che punto posso arrivare.