Domanda

ciò che la tecnologia posso usare per gestire la connessione internet instabile in un App server-client. so principalmente PHP (+ Zend Framework), l'apprendimento C # e ASP.NET MVC. ho sentito WCF / MSMQ è qualcosa che può aiutare ... ma come ... c'è qualcosa di PHP (che io sono più familiare) può fare? ma è anche bene sapere un .NET alternativa se il suo migliore

lo sfondo:

client *** s *** si connetteranno al db server per fare CRUDs. ma se la connessione Internet non supera questo non sarà possibile. Allora, come faccio a risolvere questo problema?

la soluzione utilizzata ormai era hanno localhost db. alla fine della giornata, tutti i clienti potranno caricare sul server e la mattina download "consolidato" db dal server. questo non è infallibile come upload / download potrebbe essere ancora sicuro. e considerando le grandi AMTS di dati trasferiti, in realtà aumenta le possibilità.

Aggiorna : c'è un PHP / sostituzione di Zend Framework / MySQL per MSMQ / WCF

?
È stato utile?

Soluzione

WCF può aiutare, perché supporta varie tecnologie per il trasferimento dei messaggi affidabile.

Una cosa che potrebbe aiutare è quello di avere i clienti fanno le loro modifiche dei dati a livello locale, quindi caricare le modifiche a una coda di messaggi affidabile. Tu non caricare tutte le modifiche in una singola transazione. Si potrebbe caricare 10 alla volta, possibilmente uno alla volta. Come i messaggi caricati vengono elaborati sul server, il server scriverà i risultati delle transazioni a un'altra coda, unico per ogni cliente. Dopo il caricamento (o forse allo stesso tempo), il cliente avrebbe controllare che coda per vedere ciò che il risultato di ogni upload è stato. Se il risultato è stato il successo, allora il cliente può rimuovere il database locale. Se il risultato è stato un fallimento, quindi il client dovrebbe provare a caricarlo di nuovo.

Naturalmente, si dovrebbe sempre stare attenti che i vostri tentativi di recupero degli errori non fanno che peggiorare le cose. Troppo traffico di tentativi su un cattivo collegamento può benissimo causare più di traffico, che può esso stesso avere bisogno di recupero, ecc.

E, naturalmente, l'ultima soluzione è quella di muoversi verso i collegamenti che sono più affidabili. Non necessariamente più veloce, ma solo più affidabile.

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