REST et technos pour serveur decentralisé

Je commence ce post par un petit retour sur ce qu’est REST. En effet, mes billets précédents ne sont pas très clairs à ce sujet. A mes yeux, REST n’est ni une techno ni un protocole. C’est plutôt un ensemble de bonnes pratiques à suivre pour fournir l’accès aux donnnées et fonctionnalités de son application via requêtes HTTP (à travers un service web).  Chaque service web ou accès est nommé ressource. Les ressources primaires  généralement créés permette de réaliser les opérations Create, Read, Update et Delete sur les données . Mais rien n’empêche de faire des choses beaucoup plus evoluées comme un service web qui renverrait un tableau de bord ou exécuterait une série de traitements par exemple.

J’en profite pour vous glisser deux mots sur les technos exploitables pour un serveur décentralisé. Commençons par de django-roa. C’est un module django permettant de se connecter à une API REST simplement, de voir les objets de cette API comme des objets python classiques ou plutôt comme des objets du Modèle Django. A priori les possibilités sont plus limitées comparées à une connexion avec une SGBD classique mais ce genre d’application facilite la création de mashups. Ce qui peut être intéressant pour faire des applications décentralisées en regroupant d’autres.
Pour ce qui est du choix de la base de données CouchDB semble un très bon candidat : versionning intégré des données, déployables facilement sur un autre noeud (replication gérée par la Couchdb) et interface REST pour accéder aux données. Django-roa se connecterait donc très simplement dessus. L’association des deux permettrait d’offrir un maximum de fonctionnalités : fonctionnalités basique sur CouchDB et fonctionnalités avancées avec Django. Enfin il faudrait peut être regarder du côté des frameworks webs basés sur des langages comme Erlang (s’il en existe). En effet ce genre de langage sont adaptés au développement réparti. Je ne les  connais pas assez bien pour me prononcer sérieusement. A noter que CouchDB se base sur Erlang.
Enfin Ajaxian nous proposait il y a un moment déjà, une API utilisables dans plusieurs langages permettant de trouver facilement des nœuds voisins : Telehash.
Pour la partie interface utilisateur je n’ai pas vraiment d’idée sur le framework javascript à utiliser. De mon point de vue, le célèbre jQuery constitue un très bon choix. GWT en mode client uniquement pourrait faire l’affaire aussi. Il est plus lourd à mettre en œuvre mais semble plus adapté à de gros développements.

Liens utiles :

One Response to REST et technos pour serveur decentralisé

  1. Pierre says:

    Pour la bibliothèque javascript, il faut bien comparer jQuery et mootools selon son besoin.

    un bon article ici : http://jqueryvsmootools.com/

    Pour résumer :
    – parcours du dom => jquery
    – instrumentation js => mootools

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: