Tek kişilik SaaS olan Healthchecks.io'nun teknoloji yığını
(blog.healthchecks.io)Donanım : Hetzner'den 9 adet dedicated sunucu kullanıyor : aylık €484
- 4 HAProxy, 3 web sunucusu, 2 Postgres
Yazılım
- Ubuntu 20.04
- Servisler
systemdile işletiliyor:haproxy/nginx/postgres Wireguardile sunucular arasında özel ağ kurulmuş. Katmanlandırıldığı için HAProxy, Postgres'e bağlanamıyorNetdata agentile makine/servis izleniyor veNetdata Clouda bağlanarak genel görünüm elde ediliyorHAProxy 2.2ile yük dengeleme ve rolling updatePostgreSQL 13ile Primary'den Standby'a streaming replication. Otomatik failover yok
→ Tek bir komutla failover tetiklenebiliyor ama manuel olarak yapılıyor
Uygulama sunucusunda
uWSGIile Healthchecks Python uygulaması çalıştırılıyor- Go ile yazılmış küçük
hchkprogramı, ping API ve inbound email işlemlerini yürütüyor NGINXile rate limiting, statik dosya sunumu, reverse proxy (uWSGIvehchk)
SaaS araçları
AWS S3: DB yedeklerini depolamaBraintree: ödeme ve abonelik yönetimiCloudflare: DNSElastic Email: transactional email gönderimiFastmail: müşteri destek e-postalarının alımı/gönderimiGitHub: sürüm kontrolü ve takip,GitHub Actionsile her commit'te test çalıştırmaHardypress: servis blogunu işletme (statik WordPress hosting hizmeti)HetrixTools: uptime izlemeIcoMoon: ikon font üretimipgDash: PostgreSQL sunucu izlemePingPong: servis durum sayfasını işletmeSSLMate: komut satırından certificate provisioning yapabilmeSyften: HN, Twitter, Reddit vb. yerlerde Healthchecks servisinden bahsedildiğinde bildirim almaTwillio: SMS gönderimi, Whatsapp ve telefon bildirimleri
Cron job'lar
- Günde bir kez tüm DB yedeklenip
gpgile şifrelenerek S3'e yükleniyor - Günde bir kez pasif kullanıcılara silme uyarısı gönderiliyor
- Günde bir kez yıllık aboneler arasında 1 ay içinde yenilemesi gelecek kullanıcılara bildirim gönderiliyor
Geliştirme ortamı
- Masaüstü PC + 27 inç 1440p monitör
- Ubuntu 20.04 + GNOME shell
- Sublime Text +
meld/ Sublime Merge - Yubikeys
Fabric: deployment ve bakım işleri çalıştırmasops: secret saklama- Acil durumlar için dizüstü bilgisayar
1 yorum
Tek başına bir SaaS'ı 1 yıl işletip öğrendiklerim
Tek kişilik SaaS geliştiricileri için araç önerileri
Tek kişilik SaaS startup'ını 6 ay işletme değerlendirmesi
Tek kişilik teknoloji startup'ının mimari yığını