2012-12-22 17 views
11

Sto selezionando un framework per un servizio rilassante. La restlet sembra promettente. Tuttavia, mi piacerebbe scegliere qualcosa che sia abbastanza comune da non andare fuori supporto/sviluppo troppo presto. So che il restlet è in circolazione da parecchi anni. Tuttavia, mi piacerebbe sapere se è abbastanza popolare. Le mie domande sono,Quanto è popolare il restlet?

  1. Qualsiasi azienda di grandi nomi che lo utilizza?
  2. Il server http predefinito è sufficientemente buono per la produzione?

grazie

+1

Stai parlando di un costrutto linguistico o del concetto generale di utilizzo di REST? Nel primo caso, ti manca un tag di lingua –

+0

Hai mai pensato di utilizzare SOAP? –

risposta

0

Dal article

L'API Servlet è del 1998 e il suo design di base non è significativamente cambiato da allora. È una delle API Java EE di maggior successo , ma presenta numerosi difetti di progettazione e limitazioni . Ad esempio, la mappatura tra i modelli URI e i gestori è limitata e centralizzata in un unico file di configurazione. Inoltre, fornisce il controllo dei flussi di socket direttamente allo sviluppatore dell'applicazione , impedendo alcune ottimizzazioni IO dai contenitori Servlet come l'utilizzo completo delle funzionalità NIO. Infine, non supporta le funzioni HTTP come la memorizzazione nella cache, la negoziazione del contenuto e la compressione del contenuto , causando troppa sofferenza agli sviluppatori e impedendo loro di concentrarsi sul loro codice specifico dell'applicazione.

Un'altra preoccupazione importante era la mancanza di una moderna API client HTTP nello stack EE Java . La classe HttpURLConnection di JDK è difficile da utilizzare e lascia troppe funzioni HTTP non supportate come l'espressione delle preferenze del client per la negoziazione del contenuto.

Frequentemente, le persone si affidavano alle API client HTTP di terze parti per risolvere le limitazioni di . Di nuovo, NIO non può essere supportato con HttpURConnection .

Nel 2005, ho visto un'opportunità per andare oltre tutte quelle limitazioni e per progettare una nuova API alla luce dei principi REST. Per la per la prima volta, abbiamo un'API che unifica le applicazioni Web lato client e lato server , un'API che supporta completamente NIO e un'API che consente allo sviluppatore di controllare a livello di codice il contenitore, i connettori e le applicazioni distribuite senza dover si affidano costantemente ai descrittori XML .

4

Il principale che è possibile ottenere è Jersey. È l'implementazione ufficiale del riposo in java. Restlet è uscito prima di Jersey. Ma poi Jersey li ha superati (a mio modesto parere). Ho usato sia Jersey e Restlet su progetti seri. Sono entrambi buoni. Tuttavia, troverai più supporto, più libri e più esempi su Jersey.

+6

È vero che non abbiamo il potere di marketing di Oracle, ma tecnicamente parlando questa è stata una possibilità per il Restlet Framework, che ci consente di innovare più liberamente (come il supporto delle tecnologie di Google come Android, GWT e GAE, che Jersey la rilunctanty fa). Ora abbiamo il nostro libro completo "Restlet in Action", e alcuni altri riguardano Restlet, inclusa la bibbia O'Reilly: "RESTful Web Services". Inoltre, sarei curioso di sapere che il nostro Jersey è tecnicamente superiore :) –

2

Si tratta di Java? In tal caso, JAX-RS è la nuova fantastica API per farlo. Il miglior libro per questo è Restful Java with JAX-RS. La mia implementazione preferita è Jersey, ma ce ne sono altri con le loro caratteristiche uniche. Tutte le implementazioni JAX-RS sono compatibili se non si utilizzano le loro caratteristiche distintive (che sono comunque minori). Il libro spiega l'API di base, la filosofia REST e anche alcune delle caratteristiche uniche delle diverse implementazioni.È un libro eccellente Adoro l'introduzione, in cui l'autore racconta come era abituato alla tradizionale chiamata di procedura remota (come SOAP, WCF e semantica OO ordinaria), ma ha visto la luce dei principi REST come più semplice ed elegante.

Uso Tomcat come server HTTP (contenitore servlet). È leggero ed è quello che usa Amazon Beanstalk (basta caricare la tua applicazione, il file WAR, e funziona e basta). È inoltre possibile utilizzare GlassFish che supporta molte altre funzionalità JavaEE o utilizzare Apache per pagine statiche e altre cose e inoltrare le richieste REST a Tomcat/GlassFish.

La cosa fastidiosa di JAX-RS è che è così potente e facile che si è tentati di scrivere servizi REST ideologicamente validi. Sfortunatamente, javascript non può usare molte delle funzionalità di REST (impostando Accept header, chiamando qualsiasi cosa tranne GET/POST, ecc.) Ma non è un grosso problema.

Jersey ha anche una fantastica API Java lato client che rispecchia JAX-RS e riutilizza le stesse classi annotate, se i client saranno Java.

27

Il framework di Restlet è disponibile dal 2005 quando era il primo framework web RESTful per Java. Ha il supporto per l'API JAX-RS, ma la sua API Restlet è sia client che lato server dal primo giorno, molto più completa ed estensibile. Siamo liberi di innovare in base al feed-back della nostra community, senza dover passare attraverso lunghi processi di standardizzazione JCP.

Inoltre, abbiamo appena pubblicato il libro "Restlet in Action" lo scorso settembre insieme alla versione 2.1. Il nostro connettore interno è completamente asincrono e basato su NIO e lo stabilizziamo costantemente anche se non è ancora pronto per produzioni pesanti (utilizzare il connettore Jetty o un contenitore Java EE senza alcuna modifica all'applicazione Restlet).

Il suo supporto coerente per Java SE/EE, OSGi, Android, GAE e GWT con edizioni dedicate è unico. È in corso anche una porta a JS (Node.js + AJAX). Abbiamo anche iniziato a lavorare sulla versione 2.2 con il primo milestone in fase di rilascio (con supporto Java 6 completo, estensione OAuth 2.0 basata sulle specifiche finali, ecc.).

In termini di riferimenti, abbiamo molte grandi aziende che lo utilizzano, tra cui LinkedIn (vedere il loro progetto open source GLU), IBM, NVidia, ForgeRock, NASA, Sonatype, Apache Camel, Mule ESB, ecc Google è stato usandolo anche internamente. Vedere alcune citazioni qui: http://restlet.com/discover/quotes

Nel mese di gennaio, lanceremo un nuovo sito web comunità così come APISpark, una piattaforma all-in-one per creare, ospitare, gestire e utilizzare le API web, direttamente basato sul Restlet Framework (PaaS), quindi il progetto è attivo e ha un futuro entusiasmante!

Con i migliori saluti,

Jerome Louvel

PS: io sono il creatore Restlet Framework e sviluppatore.

+2

È un post un po 'vecchio, ma devo dire che ho appena scoperto Restlet e sono stupito di quanto sia pulito, ben pensato e flessibile.Merita sicuramente di essere più popolare. – Red

+0

Grazie mille per il tuo feed-back! –