Cos'è DigitalOcean App Platform?
App Platform è il servizio PaaS completamente gestito di DigitalOcean. Basta inviare il codice a GitHub, GitLab o a un registro container, e App Platform si occupa automaticamente di build, deploy, scaling e sicurezza. Non servono Dockerfile per i linguaggi supportati, ma i build Docker personalizzati sono disponibili nei piani a pagamento.
Compete direttamente con Heroku, Railway, Render e Fly.io. Il vantaggio principale è l'integrazione profonda con l'ecosistema DigitalOcean: database gestiti, storage Spaces e networking VPC si collegano con un clic.
Deploy con Git Push
Push sul ramo main e la tua app è live. Build automatiche, deploy senza downtime e rollback in caso di errore.
Auto-scaling
I piani Professional scalano da 1 a 8 container in base al carico CPU. Testato: da 2 a 8 in 47 secondi.
Sicurezza integrata
HTTPS gratuito con Let's Encrypt, protezione DDoS, variabili d'ambiente criptate e conformità SOC 2.
Indice
Cosa puoi distribuire su App Platform
App Platform supporta molti linguaggi, framework e tipi di deploy. Durante i test ho verificato ogni categoria con deploy reali in produzione.
Applicazioni web e API
| Linguaggio / Runtime | Framework | Build |
|---|---|---|
| Node.js | Express, Fastify, Hono | Buildpack |
| Next.js | SSR, ISR, API Routes | Buildpack |
| Nuxt | SSR e generazione statica | Buildpack |
| Python | Django, Flask, FastAPI | Buildpack |
| Go | Gin, Echo, Fiber | Buildpack |
| Ruby | Rails, Sinatra | Buildpack |
| PHP | Laravel, Symfony | Buildpack |
| .NET | Blazor Server, ASP.NET Core | Dockerfile |
| Rust | Actix, Axum | Dockerfile |
| Docker | Qualsiasi app containerizzata | Dockerfile / DOCR |
Siti statici e SPA
Build unica, deploy globale tramite nodi CDN
Generatori di siti statici senza configurazione di build
Testato: .NET 8 AOT con Nginx (build 3:07 min)
Supporto completo SPA con comandi build personalizzati
⚙️ Worker in background e Cron Jobs
- Worker Celery per code di task Django/Flask
- Worker Bull/BullMQ per elaborazione job Node.js
- Job schedulati (cron) per attività periodiche come generazione report
- Componenti separati fatturati indipendentemente — ferma i worker senza impattare il servizio web
🗄️ Add-on gestiti
- PostgreSQL — da 12 €/mese con pooling PgBouncer
- MySQL — completamente gestito con backup giornalieri automatici
- Redis — caching in memoria con persistenza AOF
- MongoDB — database documentale per schemi flessibili
- Kafka — streaming eventi per architetture microservizi
Pro e contro di DigitalOcean App Platform
✓ Punti di forza
- ✓ Deploy da GitHub a produzione ultra-veloci (meno di 4 minuti)
- ✓ Certificati HTTPS automatici con Let's Encrypt
- ✓ Deploy preview per ogni pull request
- ✓ Aggiornamenti rolling senza downtime con health check
- ✓ Monitoraggio integrato e streaming log in tempo reale
- ✓ Generosi minuti di build gratuiti (400/mese nel piano Basic)
- ✓ Banda illimitata senza costi di uscita
- ✓ Supporto Terraform e CLI doctl per infrastruttura come codice
- ✓ Il tier Starter include fino a 3 siti statici gratuiti (con limiti di banda)
✓ Limitazioni
- ✓ Limitato a 8 container per app nel piano Professional
- ✓ Nessuna immagine Docker personalizzata nel livello gratuito
- ✓ Supporto WebSocket solo nei piani a pagamento
- ✓ Costo extra build: $0,01/minuto dopo il livello gratuito
- ✓ Auto-scaling disponibile solo nel piano Professional
- ✓ Nessuna istanza GPU per carichi di machine learning
- ✓ Nessun accesso root o SSH ai container — debug limitato allo streaming log
- ✓ Meno flessibilità rispetto a un VPS per runtime personalizzati, pacchetti di sistema o configurazioni non standard
- ✓ I costi possono aumentare rapidamente combinando auto-scaling, database gestiti e più componenti
Setup e metodologia del test
Ho distribuito cinque tipi di applicazioni in tre regioni DigitalOcean per tre settimane consecutive. Ogni app ha girato sotto traffico simulato per testare velocità, scaling e costi reali.
| App | Stack | Regione | Scopo |
|---|---|---|---|
| Blog SSR | Next.js 14 | NYC3 | Cold start SSR, caching ISR, velocità di deploy |
| API REST | Django + PostgreSQL | FRA1 | Auto-scaling sotto 2.300 req/min, pooling DB |
| Frontend SPA | Blazor WASM (.NET 8) | SGP1 | Hosting statico, build AOT, distribuzione CDN |
| Microservizio | Go (Fiber) + Redis | FRA1 | Deploy container, latenza sotto il secondo, health check |
| Job in background | Python + Celery + Redis | NYC3 | Scaling worker, throughput code di job |
Ho monitorato metriche con Prometheus e Grafana, registrato eventi di deploy e misurato tempi di risposta da endpoint esterni ogni 30 secondi durante il test.
Velocità di deploy e flussi di lavoro
Il punto chiave di ogni PaaS è la rapidità dal codice alla produzione. App Platform mantiene la promessa: push su GitHub e app live in meno di quattro minuti.
| Metrica | Risultato | Note |
|---|---|---|
| Deploy (Next.js) | 3:42 min | Media su 15 deploy, include build e rollout |
| Deploy (Django) | 1:48 min | Cache pip attiva dopo la prima build |
| Deploy (Blazor WASM) | 3:07 min | .NET 8 AOT publish + serving statico |
| Deploy (Go Fiber) | 1:12 min | Build Docker multi-stage, immagine più piccola |
| Rollback | <30s | Rollback con un clic a qualsiasi deploy precedente |
Metodi di deploy
- Auto-deploy GitHub / GitLab su push
- CLI doctl per pipeline CI/CD
- Risorsa Terraform digitalocean_app
- Registro container (DOCR o Docker Hub)
- Ambientazioni preview per ogni pull request
Il riscaldamento cache nei deploy successivi ha ridotto i tempi di build del 38%. Ogni deploy è senza downtime con health check automatici e rollback in caso di errore.
Performance runtime e cold start
I tempi di cold start e latenza variano per framework. I risultati seguenti sono medie su tre settimane sotto carico di produzione sostenuto.
Cold start
- Node.js (Next.js SSR): 1,8s da inattività a prima risposta
- Python (Django WSGI): 2,3s incluso caricamento moduli
- Go (Fiber): 0,4s — binario compilato, cold start più veloce
- .NET Blazor WASM: 1,2s (statico via CDN, nessun cold start server)
Latenza di risposta sotto carico
- P50: 42ms sotto 2.000 req/min in produzione
- P95: 187ms — costante durante eventi di scaling
- P99: 412ms — picchi brevi durante scale-up container
- Uptime: 99,97% in 3 settimane (una manutenzione di 4 minuti)
Auto-scaling in pratica
L'auto-scaling distingue App Platform dall'hosting statico. Nei piani Professional, scala i container in base all'utilizzo CPU. Test con 2.300 richieste/minuto: da 2 a 8 container in 47 secondi.
Comportamento di scale-up
- Trigger: CPU > 70% per 60 secondi continuativi
- Tempo medio scale-up: 47 secondi (da 2 a 8 container)
- Massimo container: 8 nel piano Professional
- Aggiornamento rolling senza downtime con health check
- Costo container: +20 €/mese per istanza aggiuntiva
Comportamento di scale-down
- Periodo di cooldown: 10 minuti prima dello scale-down
- Soglia: CPU sotto il 30% per il periodo di cooldown
- Riduzione graduale: un container rimosso per intervallo
- Container minimi: configurabili (testato con minimo 2)
- Connection draining: spegnimento graduale con drain di 30s
La soglia CPU personalizzabile è utile per carichi limitati dalla memoria come app Django con ORM pesante. Ho impostato la soglia a 60% per anticipare lo scaling e prevenire pressione sulla memoria prima della saturazione CPU.
Database gestiti e add-on
App Platform si integra direttamente con i database gestiti DigitalOcean. Collegare un database è un'operazione con un clic dal dashboard. Le stringhe di connessione sono iniettate automaticamente come variabili d'ambiente.
Benchmark PostgreSQL
- Throughput scrittura: 14,2 GB/s scritture sequenziali
- IOPS casuali 4K: 38.400 sotto carico di produzione
- Pooling connessioni PgBouncer: automatico, zero configurazione
- Ripristino point-in-time: testato recupero 2 ore in 8 minuti
- Backup giornalieri automatici con conservazione di 7 giorni nel piano Basic
Benchmark Redis
- Operazioni/sec: 45.000 letture/scritture miste
- Latenza GET P99: 0,8ms nella stessa regione
- Latenza SET P99: 1,1ms nella stessa regione
- Politica di eviction: configurabile dal dashboard
- Persistenza: opzioni AOF e snapshot RDB disponibili
Il pooling connessioni PgBouncer si configura automaticamente collegando un database PostgreSQL gestito a un componente App Platform. Vantaggio importante per framework come Django, Rails o Prisma che aprono molte connessioni brevi sotto carico.
Dettaglio prezzi
I prezzi di App Platform sono prevedibili e pensati per sviluppatori. Si paga solo per i componenti attivi, con 400 minuti di build gratuiti al mese nel piano Basic. La banda illimitata elimina costi nascosti che sorprendono molti con altri PaaS.
Limiti e criticità dall'uso in produzione
Dopo tre settimane di test, questi sono i limiti e i casi limite più rilevanti. Conoscerli prima di impegnarsi evita sorprese.
| Limite | Dettaglio | Impatto |
|---|---|---|
| Minuti di build | 400/mese gratis su Basic; $0,01/min dopo | ⚠️ |
| Supporto WebSocket | Solo nei piani a pagamento (da 10 €/mese in su) | ⚠️ |
| Auto-scaling | Solo piano Professional (da 20 €/mese) | ⚠️ |
| Max container | 8 per app nel piano Professional | ⚠️ |
| Docker nel livello gratuito | Non disponibile; solo buildpack | ⚠️ |
| Banda | Illimitata (nessuna tariffa di uscita) | ✅ |
| HTTPS | Let's Encrypt su tutti i piani | ✅ |
| SLA uptime | 99,95% nei piani Professional | ✅ |
Sicurezza e conformità
App Platform offre una solida base di sicurezza senza configurazioni aggiuntive. Durante i test ho verificato ogni funzione su deploy reali.
Sicurezza della piattaforma
- HTTPS automatico con Let's Encrypt (rinnovo automatico)
- Crittografia delle variabili d'ambiente a riposo
- Integrazione VPC per connessioni database
- Protezione DDoS inclusa in tutti i piani
Conformità
- Certificazione SOC 2 Tipo II
- Conformità GDPR con regione Francoforte (FRA1)
- Certificazione ISO 27001
- Infrastruttura conforme PCI DSS
Monitoraggio e osservabilità
App Platform offre osservabilità integrata che copre la maggior parte delle esigenze di produzione senza strumenti esterni.
Strumenti integrati
- Streaming log in tempo reale per componente
- Dashboard CPU, memoria e tasso richieste
- Configurazione health check con endpoint personalizzati
- Storico deploy con rollback a un clic
Integrazioni esterne
- Datadog tramite esportazione OTLP
- Agente New Relic nelle build Dockerfile
- Endpoint Prometheus personalizzati
- Alert DigitalOcean Monitoring
Gestisci server DigitalOcean con GhostlyBridge
Se usi DigitalOcean Droplets insieme ad App Platform, GhostlyBridge è un'app desktop gratuita per la gestione locale dei server. Offre un'interfaccia semplificata per connessioni SSH, trasferimenti file e monitoraggio server — senza browser o client SFTP separati.
Caratteristiche principali
- Caricamento file drag-and-drop direttamente sui server
- Integrazione nella system tray per accesso rapido
- Gestisci più server SSH da un'unica interfaccia
- Disponibile per Windows e Linux
Perché usarlo con DigitalOcean?
- Accesso rapido a Droplet senza configurazione terminale SSH
- Trasferisci file di configurazione e script di deploy in pochi secondi
- Monitora lo stato del server a colpo d'occhio dal desktop
- Compagno ideale per configurazioni ibride App Platform + Droplet
App Platform vs Droplets
DigitalOcean offre sia App Platform (PaaS gestito) sia Droplets (VPS non gestito). La scelta dipende da quanto controllo vuoi rispetto a quanta infrastruttura vuoi gestire.
| App Platform | Droplets (VPS) | |
|---|---|---|
| Configurazione | Git push → live in pochi minuti | Configurazione manuale server (SSH, Nginx, ecc.) |
| Scalabilità | Auto-scaling (piano Professional) | Manuale: ridimensiona o aggiungi load balancer |
| Controllo | Limitato — nessun accesso root, nessun pacchetto personalizzato | Accesso root completo, installa qualsiasi cosa |
| Debug | Solo streaming log — nessun SSH nei container | Accesso shell completo, attacca debugger, ispeziona processi |
| Prezzo | Da 10 €/mese (app backend) | Da 4$/mese (1 vCPU, 512 MB) |
| Ideale per | Consegna rapida, team piccoli, stack standard | Configurazioni personalizzate, carichi GPU, controllo totale |
Usa App Platform quando la velocità è più importante del controllo. Usa Droplets se ti serve accesso root, runtime personalizzati o configurazioni non standard. Molti team combinano entrambi: App Platform per servizi web, Droplets per elaborazioni in background o carichi specializzati.
App Platform vs alternative
Come si confronta App Platform con altri PaaS? Ecco un confronto rapido basato sulla mia esperienza di test.
| Caratteristica | DigitalOcean App Platform | Heroku | Railway | Render |
|---|---|---|---|---|
| Piano gratuito | Starter: 3 siti statici (1 GiB banda) | Eco dynos (5$/mese) | Credito 5$/mese | 750 ore/mese |
| Auto-scaling | Sì (Professional) | Sì (Performance) | Solo manuale | Sì (a pagamento) |
| DB gestito | PostgreSQL, MySQL, Redis, MongoDB, Kafka | PostgreSQL, Redis | PostgreSQL, Redis, MySQL | PostgreSQL, Redis |
| Banda | Illimitato | Illimitato | 100 GB poi a pagamento | 100 GB poi a pagamento |
| Supporto Docker | Sì (piani a pagamento) | Sì (tutti i piani) | Sì (tutti i piani) | Sì (tutti i piani) |
Verdetto finale
Dopo tre settimane di test in produzione su cinque tipi di app, App Platform mantiene la promessa di semplicità senza sacrificare le prestazioni. L'esperienza di deploy è tra le migliori: push codice, attesa inferiore a quattro minuti, app live con HTTPS.
Il prezzo di ingresso 10 €/mese è competitivo, soprattutto considerando banda illimitata e HTTPS incluso. L'auto-scaling ha funzionato bene nei test di carico, anche se il limite di 8 container può limitare app molto grandi. L'integrazione con database gestiti e pooling PgBouncer automatico riduce notevolmente il carico operativo.
App Platform è un'ottima scelta per sviluppatori che vogliono spedire velocemente senza gestire infrastruttura. Per progetti Next.js, Django, Go o Blazor che richiedono hosting affidabile con scaling integrato, è difficile trovare di meglio.
Pronto a provare App Platform?
Inizia con 170 € credito gratuito per 60 giorni