image de chargement
Retour au glossaire

Heroku

Plateforme cloud (PaaS) permettant de déployer, gérer et faire évoluer des applications web sans gérer l'infrastructure sous-jacente.

Mis à jour le 24 janvier 2026

Heroku est une plateforme cloud de type Platform-as-a-Service (PaaS) rachetée par Salesforce en 2010. Elle permet aux développeurs de déployer et d'exécuter des applications dans plusieurs langages (Ruby, Node.js, Python, Java, PHP, Go, Scala) sans se soucier de la gestion des serveurs, de la configuration réseau ou des mises à jour système. Basée sur AWS, Heroku abstrait la complexité de l'infrastructure pour offrir une expérience de déploiement simplifiée via Git.

Fondements techniques

  • Architecture conteneurisée basée sur des 'dynos' (conteneurs Linux légers isolés)
  • Système de buildpacks pour détecter automatiquement le langage et installer les dépendances
  • Add-ons marketplace pour intégrer bases de données, caching, monitoring, etc.
  • Déploiement via Git push avec détection automatique et build des applications

Avantages stratégiques

  • Time-to-market réduit : déploiement en quelques minutes sans configuration infrastructure
  • Scaling horizontal et vertical simple via l'interface ou CLI
  • Gestion automatique des certificats SSL/TLS et des domaines personnalisés
  • Écosystème riche de 200+ add-ons pour étendre fonctionnalités sans développement custom
  • Environnements de review apps automatiques pour chaque pull request

Exemple de déploiement

deploy-heroku.sh
# Installation de la CLI Heroku
curl https://cli-assets.heroku.com/install.sh | sh

# Connexion à votre compte
heroku login

# Création d'une nouvelle application
heroku create mon-app-production

# Ajout d'une base de données PostgreSQL
heroku addons:create heroku-postgresql:mini

# Configuration de variables d'environnement
heroku config:set NODE_ENV=production
heroku config:set API_KEY=votre_cle_secrete

# Déploiement depuis Git
git push heroku main

# Scaling de l'application
heroku ps:scale web=2 worker=1

# Consultation des logs en temps réel
heroku logs --tail

Architecture d'une application Heroku

Procfile
# Procfile - définit les types de processus
web: npm start
worker: node worker.js
release: node db-migrate.js
app.json
{
  "name": "mon-application",
  "description": "Application Node.js sur Heroku",
  "buildpacks": [
    {
      "url": "heroku/nodejs"
    }
  ],
  "formation": {
    "web": {
      "quantity": 1,
      "size": "basic"
    },
    "worker": {
      "quantity": 1,
      "size": "basic"
    }
  },
  "addons": [
    "heroku-postgresql:mini",
    "heroku-redis:mini",
    "papertrail:choklad"
  ],
  "env": {
    "NODE_ENV": "production",
    "NPM_CONFIG_PRODUCTION": "true"
  }
}

Mise en œuvre d'un pipeline CI/CD

  1. Créer un pipeline Heroku avec environnements staging et production
  2. Configurer GitHub ou GitLab pour déclencher des déploiements automatiques
  3. Activer Review Apps pour générer des environnements éphémères par PR
  4. Définir les tests CI à exécuter avant promotion vers production
  5. Configurer les métriques et alertes via add-ons de monitoring
  6. Implémenter une stratégie de backup automatique pour les données critiques
  7. Documenter les variables d'environnement et secrets dans un gestionnaire sécurisé

Optimisation des coûts

Les dynos gratuits de Heroku ayant été supprimés en 2022, privilégiez les dynos Eco ($5/mois) pour les projets personnels et Basic/Standard pour la production. Utilisez le scaling automatique pour ajuster les ressources selon le trafic réel, et consolidez plusieurs petites applications sur des dynos partagés pour optimiser les coûts. Pour les workloads intensifs, évaluez les alternatives comme Render, Railway ou Fly.io qui offrent des tarifs plus compétitifs.

Add-ons et intégrations essentiels

  • Heroku Postgres - Base de données PostgreSQL managée avec backups automatiques
  • Heroku Redis - Cache et file d'attente de messages en mémoire
  • Papertrail / Logentries - Agrégation et recherche dans les logs centralisés
  • New Relic / Scout APM - Monitoring de performance applicative
  • Heroku Scheduler - Tâches cron sans infrastructure supplémentaire
  • Cloudinary / AWS S3 - Stockage et transformation d'assets média
  • SendGrid / Mailgun - Envoi d'emails transactionnels

Considérations pour l'entreprise

Heroku reste pertinent pour les équipes privilégiant la vélocité de développement et l'expérience développeur, particulièrement dans les organisations Salesforce où l'intégration native apporte de la valeur. Le modèle PaaS élimine la charge opérationnelle DevOps, permettant aux développeurs de se concentrer sur la création de valeur métier. Cependant, la tarification au-dessus du marché et le vendor lock-in nécessitent une évaluation stratégique face aux alternatives Kubernetes ou cloud natifs pour les applications à fort volume. La plateforme excelle pour les MVP, prototypes et applications internes où le time-to-market prime sur l'optimisation des coûts d'infrastructure.

L'argentestdéjàsurlatable.

En 1 heure, découvrez exactement combien vous perdez et comment le récupérer.

Agence de développement web, automatisation & IA

contact@peaklab.fr
Newsletter

Recevez nos conseils tech et business directement dans votre boîte mail.

Suivez-nous