Multi-tenancy

par Gilad Parann-Nissany

www.parann.net

Existe-t-il un modèle de programmation du Cloud ?

Le Cloud computing est une approche opérationnelle et économique, à laquelle les modèles de programmation doivent se plier. La technologie n’est qu’un facilitateur de cette nouvelle approche.Il n’y a pas un modèle de programmation absolu du Cloud mais plutôt de multiples modèles, qui reprennent souvent les modèles existants à la base et les adaptent pour des usages cloud. Cependant, ces modèles et adaptations varient énormément en fonction des buts que veulent atteindre les programmateurs en travaillant pour le cloud.

Les bénéfices du nuage les plus répandus sont:

– les objectifs économiques

– l’argument “ payez à l’utilisation”

– l’aspect “utility”

– la flexibilité de l’utilisation et la disponibilité en tout endroit et à tout moment

– la souplesse importante

– la possibilité de grandir ou de réduire rapidement

– Le modèle service

– l’abandon de la complexité de l’installation et de la gestion grâce au modèle de location

Ces bénéfices opérationnels et économiques sont ceux qui déterminent les modifications apportées aux modèles de programmation existants.
Evaluation des modèles de programmation cloud
Comment juger qu’un modèle de programmation est suffisamment “cloudy” ? Vous avez besoin d’une grille d’évaluation qui repose sur des critères précis. Tous ces critères n’ont pas été inventés spécifiquement pour le cloud, qui n’est pas, rappelons le, une innovation dans le domaine de la programmation:
1. L’abstraction de l’infrastructure: partagée, virtualisée et dynamique

2. Un modèle « utility » où les ressources peuvent être consommées de manière souple et évolutive

3. Une consommation “à la demande” et au prix approprié

4. Une approche orientée service, pour que les ressources puissent être consommées sans creuser les détails

5. Un self-service pour que le client y ait accès quand il en a besoin

6. Une approche multi-locataire pour que l’infrastructure cloud puisse être utilisées par de multiples clients (en interne ou en externe)

7. Une topologie flexible pour que les composants de la solution puissent inter-opérer

8. L’autonomie et l’isolation pour que plusieurs composants puissent se charger de plusieurs parties d’un même problème en parallèle.

9. Un travail poussé sur les prévisions de panne, pour que la solution continue à fonctionner et reste robuste, même si des noeuds de la solution ne marchent plus.

10. Des API pour les services Web.
Par ailleurs, les modèles (pour le cloud ou non) doivent offrir:

· une infrastructure de développement

· des choix de langages

· la possibilité d’utiliser et de gérer les méta-données (par exemple déclaratives)

· une approche sécuritaire – particulièrement sensible pour le public cloud.

Pour savoir plus suivez les liens:

Top