Proxy HTTP(s) gatejs

Posté par . Édité par Xavier Teyssier, Benoît Sibaud, Pierre Jarillon et Christophe Guilloux. Modéré par ZeroHeure.
20
20
juin
2014
JavaScript

gatejs est un nouveau mandataire/proxy HTTP(s) (forward & reverse) qui a pour vocation de remplacer squid, nginx, varnish ou encore apache, dans leurs fonctions de proxy (forward & reverse). Il est publié sous licence GPLv3.

Il est développé en JavaScript (2/3) et en C++ (1/3). Il est prévu que la proportion de C++ se réduise au fil du temps. Ce proxy utilise le moteur Javascript V8 et nodejs.

Il a été initialement conçu pour offrir plus de flexibilité sur l'interception et le traitement d'informations en HTTP.

Pour ceux qui ne sont pas pro-JavaScript, il est important de préciser que les performances de gatejs sont proches, voire dans certains cas, supérieures à nginx.

De plus, l'utilisation de Javascript permet d'augmenter la lisibilité des codes, de les factoriser et de renforcer la sécurité, surtout pour des opérations complexes.

Les configurations sont écrites au moyen de la notation d'objets Javascript (JSON).

Forum général.petites-annonces [offre d'emploi] Développeur backend expérimenté

Posté par . Licence CC by-sa
Tags :
2
19
juin
2014

Salut,

Je ne sais pas si la diffusion d'annonce sur le forum est toujours autorisée, si ça n'est pas le cas je vous prie de m'en excuser :)

Le Poste

Je recherche un développeur dont le rôle au sein de la boite sera de concevoir et développer les nouvelles features du produit, en collaboration avec l'équipe backend. Le produit est constitué d'une API accessible publiquement (Symfony2/PHP), et de services internes (Golang - on vous apprendra à le parler si vous (...)

5ème Meetup Meteor-Paris mardi 21 dans un amphi de l'école 42

Posté par (page perso) . Édité par Xavier Teyssier, ZeroHeure et Xavier Claude. Modéré par Ontologia. Licence CC by-sa
10
16
jan.
2014
Internet

Meteor est un projet libre permettant de construire des applications web en un temps record, que vous soyez un développeur chevronné ou bien un débutant. Le rendez-vous est donné pour tous les aficionados de Meteor, Node et du JavaScript pour ce 5ème Meetup Meteor Paris.

Date et lieux :

  • Mardi 21 janvier 2014 de 18:30 à 22:00
  • Ecole 42, 96 Boulevard Bessières, 75017 Paris

CozyCloud, la mise en nuage personnelle et modulaire

Posté par . Édité par Xavier Teyssier et Nÿco. Modéré par Christophe Guilloux. Licence CC by-sa
41
16
juil.
2013
Internet

Vous vous souvenez peut-être de Cozycloud, évoqué ici-même en mai dernier, un outil permettant de mettre en place sont propre Cloud, tout comme Owncloud. À l'inverse de ce dernier, dont la conception est monolithique (tous les éléments et fonctions sont intégrées directement dans le code à télécharger), CozyCloud a choisi une approche modulaire.

Dans l'actualité récente de ce projet, il paraît important de mentionner que CozyCloud a été sélectionné par la fondation Mozilla pour le WebFWD, initiative de la fondation Mozilla déjà relatée sur Linuxfr.org.

Red Hat Software Collections 1.0 Beta

20
20
juin
2013
Red Hat

Red Hat a annoncé, le 5 juin dernier, les « Software Collections » en version 1.0 Beta. Il s'agit d'un canal (terminologie de Red Hat pour désigner un dépôt logiciel) contenant des logiciels dont les versions sont plus récentes que dans les canaux habituels de la distribution RHEL.

Comme chaque canal logiciel de Red Hat, celui-ci est soumis à souscription auprès de la société.

La liste des logiciels inclus ainsi que leurs modalités d'installation et d'utilisation sont détaillés en seconde partie de cet article.

Journal opa-watch: compilation et lancement automatique à l'édition

Posté par .
3
21
sept.
2012

Éditer, Compiler, Lancer… c'est une boucle que vous ne connaissez que trop. Vous avez la flemme de réécrire un n-ième script bash à base de inotify-wait et notify-send (ou quelque chose de plus exotique).

opa-watch vous permet de vous concentrer sur la boucle Editer, Editer, Editer…

Le but d'opa-watch est de faciliter la vie des développeurs Opa mais il est également conçus pour être utilisable pour d'autres langages (voir pour d'autres activités que le développement).

Par exemple ce journal (...)

Journal Réflexions à propos de NodeJS et de Javascript plus globalement

30
18
avr.
2012

Bonjour,

cela fait quelques jours que je me pose la question suivante : « Est-ce que Node.js ne va pas devenir une technologie incontournable / majeur dans les 2 ans qui viennent ? »

Le contexte

Je suis un développeur Python depuis de nombreuses années. J'aime ses librairies, j'aime ses outils, j'aime sa communauté.
J'aime tellement sa syntaxe que quand je vois la syntaxe d'autres langages, j'ai une réaction quelque peu épidermique à la lecture du code.
Avec le temps, l'habitude de la (...)

Node.js passe en version 0.6.0 et arrive sous Windows

Posté par (page perso) . Modéré par Nÿco. Licence CC by-sa
27
5
nov.
2011
JavaScript

Node.js est un environnement JavaScript côté serveur, sous licence MIT. Sa particularité est son approche asynchrone pour faciliter la montée en puissance dans des contextes avec beaucoup d’entrées‐sorties, notamment réseau. En pratique, il se compose :

  • d’un interpréteur JavaScript, à savoir V8 ;
  • de require(), un chargeur de modules compatible CommonJS ;
  • d’une bibliothèque standard, volontairement restreinte (une sorte de libc JavaScript où tous les appels sont asynchrones) ;
  • d’un ensemble de conventions : par exemple, les fonctions de retour indiquent toujours en premier paramètre si l’appel s’est bien passé, et dans le cas contraire, quelle a été l’erreur ;
  • et d’un exécutable, « node », pour lancer tout ça.

La version 0.6.0 est sortie aujourd’hui et apporte quelques nouveautés de taille (plus de détails en seconde partie) :

  • la prise en charge de Windows en utilisant les I/O Completion Ports (IOCP) ;
  • un répartiteur de charge entre plusieurs processus Node.js intégré ;
  • des moyens de communications entre des processus Node.js plus efficaces ;
  • des améliorations du débogueur en ligne de commande ;
  • des bindings pour la zlib ;
  • la mise à jour de V8, passant de la version 3.1 à la 3.6.

La prise en charge de Windows, sans dégrader les performances pour les UNIX, a pris plus longtemps que prévu. Cela a fortement retardé la sortie de cette version, mais Ryan Dahl, son créateur, souhaite sortir la prochaine version stable de Node.js (la v0.8.0) pour janvier 2012.

Journal NodeCloud : répertoire de resources pour Node.js

Posté par (page perso) .
10
16
juin
2011

Bonjour,

Je vous annonce l'ouverture de NodeCloud, un site qui répertorie des ressources à propos de Node.js, en les classant selon leur traffic Alexa afin de permettre d'évaluer la popularité des projets les uns par rapport aux autres.

Pour ceux qui ne seraient pas familiers avec Node.js, il s'agit d'un framework permettant d'écrire facilement des applications réseau reposant sur la machine virtuelle JavaScript V8 de Google, en particulier des serveurs HTTP et des applications WEB temps réel. Voir la dépêche (...)

10er10 : un « Deezer » libre et performant

Posté par . Modéré par Mouns. Licence CC by-sa
44
26
avr.
2011
Son

Qu’est‐ce que 10er10 ?

10er10 est un clone de Deezer libre, développé par Dready92. Il est 100 % Web 2.0, il tourne sous Node.js et utilise une base de données NoSQL, en l’occurrence CouchDB. Pour ce qui concerne la diffusion du son, 10er10 utilise la balise <audio> d'HTML5, donc vous pouvez dire au revoir à Internet Explorer 6 et autres navigateurs qui ne gèrent pas les dernières avancées d'HTML5.

À quoi ça ressemble ?

Cloud Foundry, la solution PaaS libre

Posté par (page perso) . Modéré par Lucas Bonnet. Licence CC by-sa
29
22
avr.
2011
Ruby

VMWare a annoncé la sortie de Cloud Foundry, une solution libre de Platform-as-a-Service (PaaS). La PaaS permet de déployer des applications Web et gérer leur montée en charge, en abstrayant la gestion des serveurs, bases de données, runtimes des langages de programmation, serveurs applicatifs, etc.. VMWare va lancer une offre commerciale s’appuyant sur Cloud Foundry, mais vous pouvez aussi l’utiliser sur vos serveurs.

Cloud Foundry, sous licence Apache 2, est un ensemble de briques développées en Ruby : NATS, Cloud Controller, DEA, Router, Health Manager, etc., dont le fonctionnement est expliqué en seconde partie de cette dépêche.

En pratique, chaque serveur sera installé avec vcap, puis les applications sont déployées avec l’outil en ligne de commande « vmc » et peuvent utiliser les services mis à leur disposition. Actuellement, Cloud Foundry supporte Ruby on Rails, Sinatra, Node.js, Spring et Grails pour les applications, et MySQL, MongoDB, Redis et RabbitMQ pour les services.

Par exemple, déployer une application Rails se fait très simplement avec les commandes suivantes :

$ vmc target api.example.net   # Choisir que quel cloud on va déployer
$ vmc login                    # S'identifier auprès du Cloud Controller
$ vmc push                     # On demande à déployer l'application

Il faut ensuite répondre à quelques questions : quel est le nom de l’application ? Quelle est son URL ? Sur combien d’instances va-t-elle être déployée ? Quels services utilise-t-elle ? Puis, Clound Foundry va réserver les ressources, installer les gems nécessaires avec Bundler, lancer les services applicatifs puis mettre à jour sa table de routage. « vmc instances » permet également de modifier le nombre d’instances d’une application pour s’adapter à la charge qu’elle va avoir à traiter.

Au final, Cloud Foundry est une solution jeune (peu de frameworks et services disponibles pour le moment), mais VMWare semble prêt à respecter les règles du Logiciel Libre et prendre en compte les propositions d’améliorations des premiers utilisateurs.

Journal Javascript: mais pourquoi ?

Posté par . Licence CC by-sa
20
25
fév.
2011

Cher Journal,

bien tes nouveaux atours.

Sinon, je me demandais. J'ai lu avec intérêt la news sur la sortie de Node.js. Ça tombe bien, je vais être amené à bidouiller avec ça dans les jours qui viennent.

Du coup, je jette un oeil au langage JavaScript. Pour le coup, il ne s'agit pas du JavaScript kikoo lol pour animer des pages web, mais de JavaScript de daicidor pour programmer des services internet facilement.

Et je déchante. Je ne parviens (...)

Sortie de Node.js 0.4.0

Posté par (page perso) . Modéré par patrick_g.
16
12
fév.
2011
JavaScript
Node.js est un environnement JavaScript côté serveur, sous licence MIT. Sa particularité est son approche asynchrone pour faciliter la montée en puissance dans des contextes avec beaucoup d'entrées-sorties, notamment réseau. En pratique, il se compose :
  • d'un interpréteur JavaScript, à savoir V8 ;
  • de require(), un chargeur de modules compatible CommonJS ;
  • d'une bibliothèque standard, volontairement restreinte (une sorte de libc JavaScript où tous les appels sont asynchrones) ;
  • d'un ensemble de conventions : par exemple, les fonctions de retours indiquent toujours en premier paramètre si l'appel s'est bien passé et dans le cas contraire, quelle a été l'erreur ;
  • et d'un exécutable, node pour lancer tout ça.

La version 0.4.0 sortie cette semaine est la deuxième stable (c'est comme pour l'ancien mode de développement du noyau Linux : le numéro mineur est pair pour les versions stables et impair pour les versions de développement). Les principaux changements depuis la version stable précédente (la version 0.2, pour ceux qui suivent) sont les suivants :
  • nouveau client HTTP, avec une API plus simple et la gestion d'un réserve (pool) de connexions ;
  • refonte du module TLS/SSL ;
  • augmentation des performances, grâce à l'allocation plus rapide des tampons mémoire (Buffer) ;
  • meilleure prise en charge des gestionnaires de paquets comme npm, grâce à l'amélioration de require() ;
  • une mise à jour de V8 pour la version 3.1.2 ;
  • un débogueur fonctionnel, mais encore très limité pour le moment ;
  • un module os qui expose des informations sur le système ;
  • et, bien sûr, plein de corrections de bogues.

Sortie de Node.js v0.2.0

Posté par (page perso) . Modéré par baud123.
15
23
août
2010
JavaScript
Node.js, dont le slogan est Evented I/O for V8 JavaScript, a pour but d'offrir un moyen simple d'écrire des applications réseau scalables. Le code est placé sous licence MIT.

Pour bien comprendre ce qu'est Node.js, je vous propose le cheminement suivant. Partons de V8, la machine virtuelle développée par Google qui permet d'interpréter du javascript. Ajoutons un modèle événementiel, similaire à EventMachine en Ruby ou à Twisted en Python. Cela tombe bien, en javascript, c'est assez naturel de procéder de cette manière : le javascript dans les navigateurs utilise déjà un modèle événementiel (les événements sont 'DOM chargé', 'touche pressée' ou encore 'clic de la souris'). C'est un bon début, mais le javascript ne possède pas de bibliothèque standard pour manipuler des fichiers ou faire des opérations réseau. Utilisons donc notre modèle événementiel pour ajouter des API qui permettent de faire ça de manière asynchrone. Une autre lacune de javascript est l'absence de moyen de charger une bibliothèque depuis un script, et comme on n'a pas spécialement envie de tout écrire dans un seul fichier, rajoutons donc une fonction require pour charger un autre script. Enfin, saupoudrons le tout avec quelques API utilitaires, un interpréteur interactif, et vous obtiendrez une bonne idée de la composition de Node.js.

Node.js permet ainsi de développer simplement des applications en javascript que l'on peut qualifier de server-side. Voici quelques exemples de ce que l'on peut faire avec Node.js :

La version 0.2.0 est sortie le 20 août et marque une première stabilisation du projet. Jusqu'à maintenant, les versions s'enchaînaient à un rythme soutenu (2 à 3 par mois), avec souvent des changements d'API et des problèmes de compatibilité divers et variés. Il est donc difficile pour les développeurs de bibliothèques de les maintenir, et pour les développeurs d'applications, de trouver les bonnes bibliothèques qui fonctionne avec la dernière version de Node.js. Cela devrait maintenant changer : Ryan Dahl a promis d'assurer la compatibilité de l'API pour les versions 0.2.x. Si vous souhaitez essayer Node.js, c'est donc le bon moment pour vous lancer !

Petites brèves, spécial Javascript

Posté par (page perso) . Modéré par Xavier Teyssier.
14
18
juin
2010
Internet
HTTP-console est un outil en ligne de commande qui vous permet de faire des requêtes HTTP et d'examiner la réponse. C'est donc une sorte de Curl, mais son mode interactif en fait un outil très pratique si vous avez à débugger une API Rest. Pour ceux qui préfèrent les interfaces web à la ligne de commande, vous pouvez regarder Hurl (code source).

PDF.js est une bibliothèque javascript qui permet de générer des fichiers PDF simplement. Elle peut être utilisée dans un navigateur web ou coté serveur avec Node.js.

À propos de Node.js, Ryan Dahl, son créateur, viendra en parler lors du Web Workers Camp le 3 juillet à la Cantine, Paris. Node.js est une implémentation Javascript côté serveur qui utilise le moteur V8 de Google Chrome. Il est publié sous licence MIT et est très performant. Par exemple, il est possible de faire tourner des composants serveur XMPP avec xmpp.js.

Enfin, pour ceux qui préfèrent utiliser jQuery (une bibliothèque Javascript facilitant le développement d'un site web), Rebecca Murphey a mis en ligne un livre intitulé « jQuery fundamentals », sous licence CC by-sa. Celui se compose de trois parties : une introduction au Javascript, les concepts de base de jQuery et jQuery avancé (la troisième partie n'est pas encore là).

StropheCappuccino est un ensemble de classes Javascript qui - comme le nom l'indique - lient Capuccino (framework pour applications desktop-like) à Strophe (bibliothèque XMPP). Il permet donc d'écrire de vraies applications desktop en Javascript se reposant sur XMPP.