Libérez votre développeur d’application interne Partie 34 : Votre application s’adaptera-t-elle à la demande ?

Vous avez une idée d’application mais vous n’avez pas les connaissances en programmation nécessaires pour commencer à la construire ? Dans cette série de blogs hebdomadaires, je vous emmènerai, en tant que non-programmeur, pas à pas dans le processus de création d’applications pour l’iPhone, l’iPod touch et l’iPad. Rejoignez-moi chaque semaine dans cette aventure et vous verrez à quel point il est amusant de transformer vos idées en réalité ! Voici la partie 34 de la série. Si vous venez de commencer, consultez le début de la série ici.

Que vous soyez pour ou contre la nouvelle initiative américaine en matière de santé, tout le monde est d’accord sur une chose. Le lancement du site web HealthCare.gov a été un véritable désastre. La plupart des visiteurs qui se sont rendus sur le site lors de son lancement ont vu le message affiché dans Figure 1 .

Maîtrisez votre iPhone en une minute par jour :

Inscrivez-vous à la newsletter « Tip of the Day » de iphonologie et nous vous enverrons chaque jour un conseil pour gagner du temps et tirer le meilleur parti de votre iPhone ou iPad.

Figure 1 – Le message d’attente trop commun sur le site Healthcare.gov

L’un des principaux problèmes du site est qu’il n’a pas été bien dimensionné. Selon les rapports, il y a eu 4,7 millions de visiteurs uniques sur le site au cours des premières 24 heures et l’infrastructure du site n’était tout simplement pas à la hauteur de la tâche. Heureusement, quelques mois se sont écoulés depuis le déploiement et il semble que bon nombre des problèmes initiaux aient été résolus.

Lorsque vous commencez à explorer l’accès aux services web à partir de vos applications iOS, vous devez vous poser les questions suivantes : « Mon application sera-t-elle prête si elle devient virale ? et « Comment puis-je éviter une catastrophe similaire à celle du site Healthcare.gov ? Contrairement au site Healthcare.gov où les citoyens américains doivent s’inscrire pour recevoir des soins de santé, si votre application a un lancement désastreux, il est très difficile de faire revenir les utilisateurs après une mauvaise expérience. Vous voulez donc que tout se passe bien du premier coup.

Externaliser l’hébergement de votre service web

Même si vous avez les compétences nécessaires pour héberger des services web sur un serveur que vous gérez vous-même, à moins que vous ne soyez assuré d’avoir un nombre limité d’utilisateurs, vous n’avez probablement pas la possibilité d’adapter vos services web dans le cas où des centaines de milliers d’utilisateurs commenceraient à accéder à votre serveur web à partir d’applications installées sur leurs appareils iOS. C’est là que des sociétés tierces, qui ont des années d’expérience dans les applications web à très grande échelle, peuvent vous aider.

Trois des plus grands acteurs dans ce domaine sont Google, Amazon et Microsoft, bien qu’il existe de nombreux autres fournisseurs tels que Hewlett Packard, IBM, Oracle et Rackspace.

Il existe de nombreuses raisons pour lesquelles vous pourriez vouloir faire héberger vos services web par l’une de ces entreprises. Par exemple :

  • Mise à l’échelle automatique en fonction de l’augmentation de votre base d’utilisateurs
  • Stockage et récupération des données
  • Orchestrer les notifications « push » à vos utilisateurs
  • Permettre l’interaction entre les utilisateurs
  • Authentification des utilisateurs

Dans cette série, je vais explorer les services offerts par les trois principaux acteurs, Google, Amazon et Microsoft. Dans cet article, je vais donner un aperçu de ce que chaque entreprise a à offrir. Toutefois, pour vous aider à prendre une décision plus éclairée sur la société qui répond le mieux à vos besoins, dans les prochains articles, je vous montrerai en détail comment mettre en place et consommer des services web dans une application iOS de chacun de ces fournisseurs.

Langages de programmation des services web

Bien que vous ayez utilisé Objective-C pour écrire le code dans vos applications iOS, vous devez choisir un autre langage de programmation pour vos services web (désolé, vous ne pouvez pas utiliser Objective-C pour cela). Certains des langages les plus populaires le sont :

  • Java
  • JavaScript
  • PHP
  • Python
  • Ruby
  • .NET

Pas de panique ! Dans un prochain article, je vous montrerai les bases de ce que vous devez savoir pour créer vos services web.

Options de stockage des données

La plupart des sociétés d’hébergement proposent une variété de bases de données pour stocker les données de votre application. Voici quelques-unes des bases de données les plus courantes :

  • Oracle
  • Microsoft SQL Server
  • MySQL
  • Les bases de données propriétaires telles que le Cloud Datastore de Google

Comme vous l’apprendrez, certaines de ces options exigent que vous appreniez la programmation SQL (langage de requête de structure), et d’autres permettent un accès de niveau supérieur aux données au moyen d’entités, similaires aux données de base.

Google App Engine

Google est certainement une entreprise qui en sait beaucoup sur la façon de traiter rapidement et efficacement des millions de requêtes web simultanées. Le Google App Engine ( Figure 2 ) fait partie de la plateforme Google Cloud et est conçu pour prendre en charge les applications iOS, Android et HTML. Il a été publié en avant-première en avril 2008 et est entré en service en septembre 2011.

Figure 2 – Google App Engine fournit des services pour les applications iOS, Android et HTML/JavaScript.

Google a des entreprises telles que Snapchat, Rovio et Khan Academy qui utilisent son moteur d’application. Google prend également en charge la plupart des langages de programmation web populaires

En ce qui concerne les coûts, Google App Engine est en fait gratuit jusqu’à un certain point. Il ne coûte rien pour démarrer et il n’y a pas de frais récurrents. Les applications peuvent utiliser jusqu’à 1 Go d’espace de stockage et suffisamment de CPU et de bande passante pour pouvoir servir environ 5 millions de pages vues par mois, sans frais. Une fois que vous avez dépassé ce seuil et que vous avez activé la facturation sur votre compte, vous contrôlez la quantité de ressources que votre application peut consommer, ce qui vous permet de respecter le budget que vous indiquez. Vous pouvez en savoir plus sur le Google App Engine page des prix .

Amazon Web Services

Amazon est une autre entreprise qui a une grande expérience dans le traitement de millions de demandes simultanées. Amazon Web Services (AWS) offre des services pour les applications iOS, Android et HTML, en fournissant un kit de développement logiciel (SDK) distinct pour chaque plate-forme. L’AWS a été officiellement lancé en 2006, et est donc le plus mature des fournisseurs de services web.

Figure 3 – Les Amazon Web Services existent depuis 2006, ce qui en fait les plus matures.

AWS se vante d’avoir de gros clients comme Shazam , Flipboard , et socialcam . Ils prennent également en charge la plupart des langages de programmation web populaires tels que Java, JavaScript, Python, Ruby, PHP et Microsoft .NET ( non pris en charge par Google App Engine).

Il n’y a pas de frais d’installation initiaux pour l’AWS, mais contrairement à Google App Engine, vous devez payer même pour une faible utilisation. Vous pouvez en savoir plus sur la page des prix d’Amazon Web Services prix .

Windows Azure Mobile Services

Bien que Microsoft n’ait pas de site web à haut volume de transactions largement utilisé comme Google et Amazon, il est très présent dans la communauté des joueurs avec Xbox Live, et il propose des solutions logicielles dans le domaine de l’informatique sur le web à haut volume de transactions depuis plusieurs années. Windows Azure propose des services pour iOS, Android, HTML et (vous l’avez deviné) Windows Phone depuis février 2010.

Figure 4 – Windows Azure prend en charge les applications iOS, Android, HTML et Windows Phone.

La plateforme Windows Azure est utilisée par des applications bien connues telles que Flickr pour Windows Phone, NBC News et Lexis/Nexis. Cela reflète sans aucun doute les racines de longue date de Microsoft dans le domaine des logiciels d’entreprise. Microsoft fournit des kits de développement pour .NET, JavaScript, PHP, Java, Python et Ruby.

Microsoft propose gratuitement Windows Azure, qui offre jusqu’à 10 services mobiles avec une base de données SQL de 20 Mo. Pour plus d’informations, consultez la page des services mobiles Windows Azure prix .

Conclusion

Compte tenu de l’éventail des choix disponibles, il peut être difficile de décider quel service est le meilleur pour vous et vos applications. C’est pourquoi, dans mes prochains articles, je prendrai un fournisseur à la fois et je vous montrerai comment effectuer la configuration et la consommation d’un service web de base. Comme vous le verrez, certains services sont plus faciles à utiliser que d’autres, et il se peut que vous choisissiez un fournisseur particulier parce qu’il prend en charge les options qui figurent sur votre liste de « must have ». Que la comparaison commence !

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *