Deprecated: Assigning the return value of new by reference is deprecated in /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php on line 520

Deprecated: Assigning the return value of new by reference is deprecated in /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php on line 535

Deprecated: Assigning the return value of new by reference is deprecated in /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php on line 542

Deprecated: Assigning the return value of new by reference is deprecated in /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php on line 578

Deprecated: Function set_magic_quotes_runtime() is deprecated in /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php on line 18

Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php:520) in /home/mhd-01/www.jxta.it/htdocs/blog/wp-content/plugins/si-captcha-for-wordpress/si-captcha.php on line 425

Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/mhd-01/www.jxta.it/htdocs/blog/wp-settings.php:520) in /home/mhd-01/www.jxta.it/htdocs/blog/wp-content/plugins/si-captcha-for-wordpress/si-captcha.php on line 425
Rilascio | JXTA.it - il Blog

Archive

Posts Tagged ‘rilascio’

JXTA 2.6 è pronto

agosto 25th, 2010

Salve a tutti,

con un pò di ritardo eccomi qui a comunicarvi che la nuova versione di JXTA, la 2.6, è finalmente pronta. Di seguito eccovi la traduzione di un articolo scritto da Jérôme Verstrynge, colui che ha guidato con estrema determinazione e diligenza l’intero processo di sviluppo per quest’ultima versione.

JXTA/JXSE 2.6 è pronto!

Dopo più di un anno di duro lavoro, JXSE 2.6, l’implementazione in Java dei protocolli JXTA, è finalmente pronta.

“Euh… Che? Di nuovo JXTA? Me lo ricordi? Ooooh sì, quel progetto P2P Open Source avviato da Sun Microsystems nel 2001!!! Mi ricordo… difficilissimo da far funzionare, in qualche modo bacato, scarsa documentazione. Non riuscivo a capire il comportamento che ci stava dietro. Avevo grandi speranze, l’ho provato, poi l’ho lasciato perdere! Beh, che novità?”

La versione 2.6 è stata un’occasione per cominciare a ridurre le enormi lacune tecniche accumulate nel codice. Abbiamo iniziato con la rimozione di tonnellate di codice morto e con il refactoring di tonnellate di altro codice in modo da renderlo più leggibile. C’è ancora molto da fare. Un bit sequenziale alla volta.

Non è tutto:

OSGi
Adesso è possibile avviare la rete JXTA come bundle OSGi. L’implementazione OSGi di Apache Felix è stata integrata in JXSE come dipendenza e può essere usata come framework OSGi standard
Per ridurre l’utilizzo di thread e altre risorse è stato implementato un singolo oggetto Task Manager per utilizzare un singolo gruppo di thread. Notevole è stato l’impatto sulle performance. 300 peergroup possono essere eseguiti senza rallentamenti su un MAC.

Gestore della Cache

Nuove implementazioni del gestore della cache basate su Apache Derby, H2 o Berkeley DB sono ora diaponibili. Queste possono rimpiazzare la attuale implementazione standard B-Tree File System. Niente più piccoli file nel tuo hard disk. Il recupero degli advertising e in generale molto più veloce.

Oggetti per la Configurazione
Oggetti per la configurazione facili da usare, basati sulla classe Java Properties, sono adesso disponibili per impostare il Gestore della rete (NetworkManager). Queste possono essere facilmente salvati e caricati da documenti XML.
Metodi per la connettività
un nuovo set di metodi di monitoraggio tra EDGE, RENDEZVOUS e RELAY è stato implementato. Adesso un peer può davvero sapere dove si trova nella rete.

Nuova implementazione TCP
Una nuova implementazione del livello TCP basata sul NIO Netty è stato implementato. L’intenzione è quella di non reinventare la ruota e delegare il delegabile a performanti librerie già esistenti.

Documentazione
Finalmente, una lunga attesa e relativamente completa documentazione di cosa accade dietro le quinte è stata resa disponibile nella guida del programmatore. Il codice resta una specie di labirinto, ma questa volta abbiamo una mappa per schivare il minotauro.

Maven
E ultimo, ma non per importanza, stiamo stiamo ultimando la migrazione del progetto a Maven. Gli Artefatti saranno postati in un repository opensource offerto da Sonatype. Presto, una integrazione continua non sarà più un sogno.

Tutto questo arriva dopo la risoluzione di una lunga serie di bug, tra i quali uno davvero brutto in agguato durante la creazione della connessione tra due peers NATtati. Semplicemente non avrebbe funzionato.

“Allora, che cosa viene dopo?” - Beh, non vediamo l’ora di finire la migrazione da Java.net di Kenai, un nuovo protocollo HTTP, più refactoring per il miglioramennto del codice, l’attuazione del NAT traversal per il TCP e l’esecuzione di più peer sulla stessa JVM. Quest’ultimo è l’ultimo anello mancante per un completo ambiente di sviluppo guidato dai test. Questo ci ha impedito di realizzare una serie completa di test JUnit. Tutte le questioni in sospeso sono adesso ben definite, basta affrontarle una alla volta.

JXTA / JXSE 2.5 è ancora parte di Glassfish. Sun ha ridotto la sua partecipazione al progetto a partire dalla fine del 2008, ma alcune persone sono rimaste molto attive partecipando al trasferimento del know-How. Noi non sappiamo  in che misura Oracle deciderà di partecipare. La possibilità di cedere tutto ad Apache è stata proposta.

“Ci sono dei libri?” - per coloro che non vogliono passare dalle Guide del programmatore, le specifiche dei protocolli JXTA, usare Google e cercare di eseguire gli obsoleti esempi trovati in rete, ho rivisto la prima edizione di “Practical JXTA”.

Questo libro è un’introduzione a JXTA, JXSE e al P2P per ingegneri del software. Esso contiene un nuovo capitolo riguardante i problemi legati al NAT traversal.

Il progetto sta subendo una migrazione da javadev verso kenai. Potete trovare la nuova home del progetto JXTA all’indirizzo http://jxta.kenai.com/ mentre il binding in java lo trovate qui.

Vi ricordo inoltre che Jérôme ha ultimato la revisione del sul libro “Practical JXTA“, acquistabile sulla apposita pagina ospitata da lulu.com.

Comunicazioni, Core JXTA , , , ,