Google App Engine

Salut les geeks,

Après une petite recherche sur les forums, rien trouvé concernant Google App Engine ( GAE, ça sera plus court ).

[center]
Je mets une image pour aérer et vous flatter l’oeil[/center]

Pour mon projet perso ( un jeu sur android, mais je vous en reparlerai plus tard ), je me suis mis en tête de monter un petit truc pour récupérer des stats sur les utilisateurs. Rien de personnel, je m’en cogne, mais de quoi faire de jolis graphs sur les versions de l’os, les phones, la progression des joueurs suivant le pays etc…

Et comme j’aime le Java, et que j’ai des besoins simples, j’ai regardé ce que pouvait me proposer GAE pour m’éviter de monter un Tomcat + BDD et tout le bordel qui va autour.
En deux mots, c’est du google, simple et efficace.

On a du JEE standard accompagné d’une couche BDD objet respectant les standards java. Je vais pas me coltiner les normes, le site est très bien fait pour ça, et ça m’amuse pas trop.
Tout se passe via le plugin Google pour Eclipse, plugin qui permet aussi d�??intégrer GWT ( mais rien d’obligatoire ). Le plugin rapatrie le SDK GWT et GAE après installation et vous fournit tout ce qu’il faut pour vous simplifier la vie.

Le topo est simple :

[ol]
[li]Ouvrir un compte ( gratuit ) sur GAE[/li][li]Y enregistrer une nouvelle application[/li][li]Coder votre appli dans Eclipse[/li][li]Lier cette appli à GAE via le plugin[/li][li]Cliquer sur Deployer ( attention il faut savoir cliquer )[/li][li]Et voilà ![/li][/ol]

Votre appli est désormais accessible sur monappli.appspot.com.
C’est simple et efficace mais je l’ai déjà dit.

Alors pour ceux qui ont eu les cheveux dressés en lisant BDD Objet, il faut vous rassurer, c’est hyper simple. La doc est là et vous accompagne. Sans tomber dans le fanboyisme, j’ai toujours trouvé la doc Google excellente. Elle est courte et va directement à l’essentiel, parce que nous autres dev. Java, on aime pas trop se palucher 10 pages de docs.
Donc la doc sur le SDK est dans le même moule. Même si vous n’avez jamais fait de BDD objet, ni même utiliser une solution de mapping à la Hibernate, vous comprendrez vite.

On a aussi une interface d’admin bien fichu et pleine d’infos, de graphs et de logs.

La question du “combien ça coûte ?” arrive :
Alors ça coûte rien, tant qu’on reste dans les limites des quotas définis.
Une fois dépassé ça, on raque. Tous les tarifs sont notés clairement, il y a là aussi des pages dédiées dans la doc et même une vidéo.
Je ne suis pas du tout spécialiste des coûts d’hébergement, donc je me prononcerai pas. “On” m’a dit que c’était honteusement pas cher.

Je passe sur un millier de détails, pour pas faire un post trop long.

Voilà, je ne connais pas d’autres solutions d’hébergement d’appli Java dans le même goût.
Mon impression est que c’est absolument génial. Tellement pratique pour simplifier la vie des devs et pour qu’on puisse se concentrer sur le code et pas s’emmerder avec des considérations techniques qui gavent.

PS : Et pour les bussieres en herbe, ça tourne aussi avec du python. A condition de pas se frotter le zizi dessus

J’allais le dire moi j’ai fait mumuse avec.
Mais c’etait il y a super longtemps.
Je confirme que c’est pas mal et pas cher pour faire mumuse.
j’avais regardé et essayé de faire une app de quizz / jeu de société en coup de vent il y a longtemps.
kwizz

Bussiere

Dans le cadre d’un cours J2EE/.net machin, j’ai également utilisé GAE … En python!
Et oui, c’est juste très sympa.
En gros, ils ont repris de nombreux éléments à django, et ont intégré ça dans leur solution.

J’ajouterai que c’est facile à développer et à mettre en place: un zip qui contient tout le “bouzin” (2mo, d’où les guillemets).
C’est donc autrement moins pénible qu’un eclipse + serveur d’appli + base de donnée etc … à mettre en place.

On s’occupe du code, et c’est tout. �?a a l’air fiable, bien fini, bien documenté, de nombreux plugins, bref, du pur bonheur.
Désolé pour le déviage de thread, c’est vrai que c’est (bien) plus compliqué de trouver un hébergement java compliant que python. :flowers:

CLOUD COMPUTING FTW! Mais quand meme… rhoo… l’aut il m’oublie ma cremerie qu’est numero UNO!

Serieux c’est meme encore plus complet. Comme dit dans un article:

[quote]The choice can be simple if you fall into one of the following two scenarios:
If your application can be architected to run within the limited Google App Engine runtime environment.
If you need a more flexible cloud deployment platform, then AWS is a good fit for your needs.
[/quote]

[quote=« GloP, post:4, topic: 52157 »]CLOUD COMPUTING FTW! Mais quand meme… rhoo… l’aut il m’oublie ma cremerie qu’est numero UNO!

Serieux c’est meme encore plus complet. [/quote]
Tiens, je me suis justement posé la question d’Amazon.
Unreal m’avait collé un lien et en vitesse j’avais pas vraiment vu de mention de serveur JEE.
( ne pas oublier, dev java, lecture en diagonale )

Je vais regarder ce qu’ils proposent du coup ( même si là, je garde GAE pour ce projet )

( et bravo pour ce changement au fait :wink: )

Même pas Azure? :stuck_out_tongue:

Ca s’apelle plus Azure, ca a changé recemment de nom pour Hahahazure.

Ben il veut faire du Java…

Azure c’est trop et tu peux faire tourner les images de VM que tu veux, mais c’est une approche differente de ce qu’il decrit ici. C’est plus “platform as a service”.

Trop? top non?
Sinon, chez amazon on peut aussi installer l’os de son choix semble-t-il.

ça me rappelle grid5000 cette histoire, à la différence près que sur grid5000 il faut réserver explicitement ses machines, et que c’est un truc pas ouvert au public.

Yup! je voulais dire « top » bien sur :slight_smile:

Et oui chez amazon aussi tu peux avoir plusieurs OS etc.

Amazon c’est pas un peu overkill pour le petit dev non pro (entendre par là hors entreprise)?
Pas d’offense monsieur_max.

Ca depend… le level gratuit est tres interessant pour un projet perso. Je dirais que l’inconvenient c’est que c’est un peu plus dur a apprendre et aprehender tous les concepts du « cloud » parceque la solution est plus complete et peut etre un peu moins « packagée ». Faut voir ce que tu veux en faire quoi…

Et le truc comme google c’est AWS Elastic Beanstalk il me semble (stupide name FTW). Ca vient de sortir d ailleurs :slight_smile: genre hier ou quoi… Check it out!

En ce qui me concerne j’ai un compte EC2 d’Amazon pour tests et co, et ça marche pas mal du tout leur système :

  • Gratuit pendant 1 an avec 30Go de data (total in+out) par mois et 10Go de storage : http://aws.amazon.com/free/
  • Accès root sur le serveur virtuel (j’ai choisi la distro Amazon, qui est en fait une Redhat like) : on installe ce qu’on veut sur la machine, comme un serveur dédié
  • IP statique gratuite via “Elastic IP”
  • Firewall intégré avec redirection de ports “Security Groups”

En ce qui concerne la machine elle même : c’est rapide, stable et la bande passante fonctionne correctement. Par contre, c’est clair que cela ne s’adresse vraiment pas au même public que GAE : Google offre un service pour développeurs qui n’ont pas envie de se prendre la tête avec la partie hébergement, Amazon vise des développeurs qui ont besoins plus spécifiques et veulent tout configurer eux mêmes.

[quote=“GloP, post:8, topic: 52157”]
Azure c’est trop et tu peux faire tourner les images de VM que tu veux
[/quote]

On peut installer Linux dessus ? :rolleyes:

Oui.

Pas que, voir Elastic Beanstalk.

Le « concurent » en Ruby c’est http://heroku.com/ BTW. Et ils tournent sur EC2 en backend et ca fait plein de trucs super cool. Si vous faites du Ruby c’est tres marrant…