· kaynak Vercel blog
Vercel Daemons artık service bindings üzerinden özel deployment servislerine erişebiliyor
Vercel Daemons artık service bindings sayesinde kendi deployment'larındaki servislere erişebiliyor; yönlendirme, kimlik doğrulama ve TLS'yi Vercel üstlenirken hedef servis özel kalıyor.

Vercel, uzun süreli arka plan compute hizmeti Daemons'a service bindings desteği ekledi; böylece arka plan worker'ları, yanlarında deploy edilen HTTP servislerini çağırmanın birinci sınıf bir yoluna kavuştu. 30 Ekim 2026 tarihinde yayımlanan bir Vercel changelog kaydına göre bir daemon, hedef bir servisi ve bir ortam değişkenini adlandıran bir binding tanımlıyor; Vercel de servisin URL'sini runtime'da o değişkene enjekte ediyor.
Bir binding nasıl tanımlanır
Binding, projenin Vercel konfigürasyonunda, servislerin ve daemon'ların kendi tanımlarının yanında yer alıyor. Vercel'in yayımladığı örnekte bir deployment, main:app giriş noktasına sahip ve api/ kök dizininde konumlanan api adında bir servis ile, Dockerfile'dan derlenen ve iad1 bölgesinde tek bir instance olarak çalışan, worker/ kök dizininde konumlanan worker adında bir daemon tanımlıyor. Worker ardından api'yı işaret eden, url formatında isteyen ve adresi alacak değişken olarak API_URL adını veren service türünde bir binding girdisi ekliyor.
Runtime'da daemon API_URL'yi okuyor ve onu herhangi bir başka HTTP endpoint'i gibi ele alıyor — Vercel'in örneği, bu URL üzerindeki jobs/next yoluna düz bir fetch çağrısı. Vercel, iç yönlendirmeyi, iki bileşen arasındaki kimlik doğrulamayı ve TLS'yi kendisinin üstlendiğini, hedef servisin ise baştan sona özel kaldığını belirtiyor.
Tek yönlü binding'ler, sabitlenmiş deployment'lar
Özelliğin davranışını iki kısıt şekillendiriyor. Birincisi, binding'ler tek yönlü: bir daemon bir servise bağlanabilir ama servisler daemon'lara geri bağlanamaz. Bağımlılık kenarı her zaman arka plan worker'larından istek karşılayan koda doğru işler, asla tersi değil.
İkincisi, binding çözümlemesi instance başına yapılır ve o instance'ın ömrü boyunca geçerli kalır. Her daemon instance'ı, kendisini başlatan deployment'ı bir promotion veya rollback'ten sonra bile çağırmaya devam eder. Çalışan bir worker, o anda canlı olan deployment'ın hangisi olduğuna asla sessizce yönlendirilmez.
Neden önemli
Arka plan worker'larının neredeyse her zaman dahili bir API'ye erişmesi gerekir — iş almak, sonuçları kalıcı hale getirmek veya sonraki adımları tetiklemek için. Bunu düzenlemenin geleneksel yolu bir endpoint'i dışarı açmak ve kimlik bilgilerini elle yönetmektir; bu da saldırı yüzeyini genişletir ve konfigürasyon kaymasına davetiye çıkarır. Service bindings sorunu ortadan kaldırıyor: hedef özel kalıyor ve yönlendirme, kimlik doğrulama ile şifreleme geliştiricinin değil platformun sorumluluğu haline geliyor.
Uzun ömürlü worker çalıştıranlar için instance başına sabitleme tartışmalı biçimde daha önemli ayrıntı. Dahili çağrılar her promotion'da yeniden çözümlenseydi, devam eden bir iş iki uyumsuz API sürümünün arasına sıkışabilirdi. Her instance'ı kendisini doğuran deployment'a bağlı tutarak — rollback'ler dahil — Vercel, bir daemon'un davranışını ömrü boyunca belirleyici hale getiriyor. Bedeli operasyonel: çağırdıkları API'nin şekli değiştiğinde ekipler artık eski instance'ları boşaltmayı planlamak zorunda, çünkü bu instance'lar tasarım gereği eski derlemeyle konuşmaya devam edecek.
Daemon'ları zaten servislerle eşleştiren deployment'lar için bu değişiklik, az satırlık bir konfigürasyonla büyük bir etki anlamına geliyor: compute bileşenleri arasındaki dahili çağrılar, elle senkron tutulması gereken runtime boru kalabalığı yerine deployment manifest'inde beyan edilmiş bir bağımlılığa dönüşüyor.
- #vercel
- #cloud
- #infrastructure
- #service-bindings
- #background-jobs