Lavorare e muoversi con QUIC e la commutazione di rete
Cosa c’è di più frustrante che perdere la connessione di 4D Remote al server 4D mentre si cambia rete?
Sia che si passi da una rete Ethernet a una Wi-Fi o che si passi da un hotspot all’altro, le connessioni tradizionali tendono a cadere, costringendo 4D Remote a disconnettersi e riconnettersi.
Con 4D 21 e il protocollo QUIC, queste interruzioni appartengono al passato.
QUIC è stato progettato per essere resiliente durante i cambiamenti di rete, mantenendo viva la sessione anche quando la connessione sottostante cambia.
Nuova classe per eseguire comunicazioni UDP
4D 20 R8 ha introdotto la classe TCPConnection, che offre un modo asincrono e orientato agli oggetti per gestire le connessioni client TCP. Poi è arrivata 4D 20 R9 con la classe TCPListener per costruire server TCP. E ora, con 4D 20 R10, completiamo il quadro con la nuova classe UDPSocket, che consente di gestire le comunicazioni UDP tra 4D e qualsiasi macchina remota, sia come client che come server. Ciò è particolarmente utile per l’IoT, il monitoraggio in tempo reale o gli scambi di broadcasting. E la ciliegina sulla torta? Questa classe supporta le comunicazioni UDP preemptive e asincrone.
Infine, questa nuova funzionalità segna il passo finale nella sostituzione del plugin Internet Commands.
Entriamo nei dettagli.
Nuova classe per gestire le connessioni TCP in entrata
In 4D 20 R8 abbiamo introdotto la classe TCPConnection, che consente di avviare connessioni TCP a server remoti. Con 4D v20 R9, siamo lieti di presentare la classe TCPListener, la chiave per gestire le connessioni TCP in arrivo e costruire un server TCP direttamente in 4D.
Con queste due classi, TCPConnection e TCPListener, avete ora il pieno controllo sulla comunicazione TCP, sia lato client che lato server.
Vediamo come utilizzarle insieme.
Nuova classe per eseguire connessioni TCP
Con il rilascio di 4D 20 R8, è arrivata una caratteristica che ha cambiato le carte in tavola: la classe TCPConnection. Questa moderna classe sfrutta la sintassi orientata agli oggetti e supporta la gestione delle connessioni di rete asincrone, offrendo una nuova e potente alternativa ai comandi Internet di 4D. Utilizzando TCPConnection, è possibile connettersi praticamente a qualsiasi cosa, che si tratti di server, stampanti, registratori di cassa o dispositivi industriali, rendendolo uno strumento versatile per gestire requisiti di rete unici.
In questa versione è disponibile la funzionalità client TCP, che consente di connettersi a server esterni e di scambiare dati senza problemi.
QUIC Network Layer è pronto per la produzione!
Con la beta di 4D 20, vi abbiamo presentato il nostro nuovo livello di rete: Il livello di rete QUIC.
All’epoca era ancora in fase di sviluppo e quindi rimosso dalla versione ufficiale. Oggi siamo entusiasti di annunciare che il livello di rete QUIC è uscito dalla fase beta ed è ufficialmente pronto per la produzione!
Dopo rigorosi test di carico e il prezioso feedback dei primi utilizzatori, la stabilità e le prestazioni di QUIC sono state convalidate, superandopersino ServerNet in aree chiave. Ora che QUIC ha raggiunto la parità di funzionalità con ServerNet in 4D 20 R5, è il momento ideale per prendere in considerazione il passaggio.
Ma prima lasciate che vi spieghi meglio questa grande novità.
Deprecazione del livello di rete legacy
Per gestire la comunicazione tra 4D Client e 4D Server, 4D propone 3 diversi livelli di rete:
- Legacy,
- ServerNet,
- e QUIC.
Il livello di rete Legacy è stato introdotto 30 anni fa in 4D v3. È stato originariamente sviluppato per AppleTalk, migliorato per ISDN, quindi aggiunto a IPX e infine a TCP/IP.
È stato creato per un uso Client/Server molto diverso da quello che 4D fa oggi: è a thread singolo, ottimizzato per reti lente senza crittografia e disponibile per molti protocolli di rete diversi. In quanto tale, non è affatto ottimizzato per le moderne comunicazioni di rete e supporta un numero molto limitato di funzionalità.
Per questo motivo, con 4D 20 R5, abbiamo deciso di rendere obsoleto il livello di rete Legacy e prevediamo di rimuoverlo presto. Vi invitiamo a passare subito a ServerNet se lo state ancora utilizzando. Lasciate che vi spieghi quali vantaggi otterrete dal passaggio.
QUIC ora corrisponde alle capacità di ServerNet
Il livello di rete QUIC ora supporta lo stesso numero di funzionalità del livello di rete ServerNet. Con 4D 20 R5 abbiamo aggiunto il supporto per IPv6, broadcast e Single Sign-on su Windows.
Naturalmente, continueremo a migliorarlo nelle prossime versioni per renderlo il miglior livello di rete che 4D abbia mai avuto.
Ma per il momento, lasciatemi parlare un po’ di più delle ultime funzionalità che abbiamo aggiunto.
Nuovo oggetto di sessione remota 4D con connessione client/server e procedura memorizzata
Nelle applicazioni 4D esistono quattro tipi di sessioni: sessione remota 4D, sessione di procedura memorizzata, sessione mobile e sessione Web.
Il comando Sessione restituisce già le sessioni Web o Mobile. Ciò consente di accedere a una serie di informazioni sulla sessione e a un oggetto condiviso da tutti i processi della sessione.
In 4D 20 R5, il comando Sessione è stato esteso alla connessione Client/Server e alla stored procedure.
Livello di rete QUIC: Aggiornamento automatico e modalità sleep
Il nostro sviluppo del livello di rete QUIC continua e con 4D 20 R4 abbiamo ora la modalità sleep e l’aggiornamento automatico. Diamo un’occhiata più da vicino a questi miglioramenti e vediamo come si confrontano con il funzionamento di altri livelli di rete.
Attivare QUIC Layer dalle impostazioni di Struttura, Utente e Database
In 4D v20 beta, siamo stati entusiasti di mostrarvi il nostro lavoro sul nuovo livello di rete QUIC. Poiché il livello è ancora in versione beta, lo abbiamo disattivato per la versione finale LTS. Il livello QUIC sarà disponibile nelle versioni funzionali, in modo che possiate seguirne lo sviluppo e aiutarci a migliorarlo.
Mentre 4D v20 consentiva il cambio di layer di rete solo nelle applicazioni interpretate e obbligava a una nuova compilazione per le applicazioni ingegnerizzate, 4D v20 R2 consente il cambio di layer nelle applicazioni compilate/costruite tramite le impostazioni di Struttura, Utente e Database per facilitare i test anche in produzione.
Contattateci
Avete domande, suggerimenti o volete semplicemente entrare in contatto con i blogger di 4D? Lasciateci un messaggio!
* La vostra privacy è molto importante per noi. Fare clic qui per visualizzare il nostro Politica
