İçeriğe atla
Şimdi yükleniyor
AKAşkın KILIÇ
  • Anasayfa
  • Azure & Bulut
    • Microsoft Azure
    • Bulut Altyapı
    • Microsoft 365
  • Yazılım
    • DevOps
    • Geliştirici Araçları
    • Konteyner & K8s
  • AI & Veri
    • Yapay Zeka
    • Veri & Analitik
  • Güvenlik
    • Güvenlik & Kimlik
    • Kurumsal Teknoloji
  • Hakkımda
    • İletişim
×
  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka
  • Başlangıç
  • Güvenlik & Kimlik
  • EWS Bildirimlerinden Microsoft Graph’a Geçiş: Sessiz Ama Büyük Değişim
Bulut Altyapı Güvenlik & Kimlik Microsoft Azure Azure Event Hubs, change notifications, delta query, EWS, Exchange entegrasyonu, Microsoft Graph, Webhook Aşkın KILIÇ 12/06/2026 3 Yorumlar

EWS Bildirimlerinden Microsoft Graph’a Geçiş: Sessiz Ama Büyük Değişim

EWS Bildirimlerinden Microsoft Graph’a Geçiş: Sessiz Ama Büyük Değişim
📑 İçindekiler
  1. Neden Delta Query'yi Ciddiye Almak Lazım?
  2. Büyük Kurumlarda Ne Fark Ediyor?
  3. Maliyet ve Alternatifler
  4. Migrasyon İçin Pratik Yol Haritası
  5. Dikkat Etmeniz Gerekenler
  6. Kendi Sahadaki Notlarım ve Net Görüşüm
  7. Sıkça Sorulan Sorular
  8. EWS notification'dan Microsoft Graph'a geçmek zorunda mıyım?
  9. Graph bildirimleri EWS kadar hızlı mı?
  10. Delta query neden bu kadar önemli?
  11. Azure Event Hubs'ı ne zaman kullanmalıyım?
  12. Kaynaklar ve İleri Okuma

⏱️ 8 dk okuma📅 12 Haziran 2026🔄 Güncelleme: 16 Eylül 2026

Biraz sert söyleyeceğim: EWS tarafında yıllardır çalışan bildirım mantığı iş görüyordu,. Artık eski dünyanın kokusu üstünde kalıyor. Hani hâlâ çalışıyor, evet; fakat ölçek, güvenlik ve operasyon yükü bir yerden sonra sizi yoruyor. Microsoft Graph’ın getirdiği model işe daha sade, daha modern ve açık konuşayım, bulut çağının temposuna daha yakın.

İlgili içerik: Microsoft Graph PowerShell 5.1 Desteği Ne Değişti?

İlgili içerik: Mailbox Import/Export Graph API'leri GA: EWS'in Sonu Geldi

Açıkçası, Rich notifications bana göre özellikle e-posta odaklı uygulamalarda fena değil, hatta bayağı iyi bir avantaj sağlıyor. Subject veya sender gibi bilgileri doğrudan alabiliyorsunuz. Böylece sırf detay çekmek için ikinci bir API çağrısı yapmak zorunda kalmıyorsunuz. Latency azalıyor, kullanıcı deneyimi toparlanıyor.

Ha bu arada bir gerçek var: Graph bildirimi almak başka şeydir, önü doğru yorumlamak başka şeydir. Notification kaybolabilir mi? Evet (ciddiyim). Sisteminizde kısa süreli kesinti olabilir mi? Olabilir! O yüzden delta query ile reconciliation yapmak şart gibi düşünün. Ben bunu AZ-305 hazırlığında da hep böyle anlatırım: mimariyi tek sinyal üzerine kurarsanız kırılgan olur.

Neden Delta Query’yi Ciddiye Almak Lazım?

Delta query aslında olay sonrası denetim mekanizması gibi çalışıyor. Bildirım geldiğinde hemen işlem — ki bu tartışılır — yaparsınız; sonra delta ile kaçırdığınız kayıt var mı diye bakarsınız. Bu ikili yapı özellikle yüksek trafikli mailbox senaryolarında çok değerli oluyor çünkü webhook teslimatı mükemmel değil — zaten hiçbir bulut servisi kusursuz değil (evet, doğru duydunuz)

{
"step1": "Webhook ile change notification al",
"step2": "İlgili item için gerekirse rich data kullan",
"step3": "Belirli aralıklarla delta query çalıştır",
"step4": "Kaçan değişiklikleri reconcile et",
"step5": "Idempotent işlem tasarla"
}

Bence burada en sık yapılan hata şu: ekipler webhook’u görünce iş bitmiş sanıyor. Sonra production’da iki bildirım kaçınca alarm çalıyor ama nedenini kimse bilmiyor oluyor… Bu konuda netim: idempotency yoksa migration yarım kalmıştır.

Büyük Kurumlarda Ne Fark Ediyor?

Küçük startup ortamlarında çoğu zaman tek servisle işi çözersiniz; birkaç queue, tek region ve basit retry yeterli olabilir. Ama bankacılıkta ya da — itiraz edebilirsiniz tabi — telekomda durum başka tabiî ki — itiraf edeyim, beklentimin üstündeydi —. Orada concurrency limiti, güvenlik politikaları ve operasyonel dayanıklılık meseleleri aniden ön plana çıkıyor.

Bi saniye — 2024 Mart ayında Logosoft’ta görüştüğümüz bir kamu müşterisinde tam da bunu yaşadık: mail tetiklemeli iş akışı vardı ama team aslında event processing platformu işletiyormuş gibi davranmak zorundaydı (evet biraz garip). O noktada Azure Event Hubs seçeneği ciddi rahatlama verdi çünkü notification akışını merkezî olarak toplamak ve tüketicilere dağıtmak kolaylaştı.

E tabi burada maliyet kısmını da konuşmak lazım. TL bazında düşündüğünüzde sadece API çağrıları ucuz görünebilir ama operasyonel saatlerin maliyeti pek ucuz değil. Bir servis gecesi bozulduğunda sabaha kadar iki kişinin ekran başında beklemesi… işte o tabloyu bütçeye yazmazsanız resim eksik kalır.

Maliyet ve Alternatifler

  • Küçük ekipseniz önce webhook + delta query ile başlayın. — ciddi fark yaratıyor
  • Bütçe kısıtlıysa Event Hubs yerine doğrudan queue tabanlı tamponlama deneyin.
  • Büyük kurumdaysanız observability katmanını en baştan kurun.
  • Tek noktaya bağımlılığı azaltmak için retry ve dead-letter planlayın.

Açık konuşayım, bazı ekipler Event Hubs duyunca direkt “kurumsal çözüm” diye atlıyor ama her problem o kadar büyük değil. Basit senaryoda fazla mühendislik de ayrı dert çıkarır. Mesela sadece birkaç mailbox izliyorsanız gereksiz yere karmaşık mimarı kurmayın; az bileşen çoğu zaman daha sağlamdır (şaşırtıcı ama gerçek)

Migrasyon İçin Pratik Yol Haritası

Lafı gevelemeden söyleyeyim: önce mevcut EWS kullanımınızı sınıflandırın. Push mu kullanıyorsunuz? Pull mu? Streaming mi? Her biri için hedef davranış farklı olacak çünkü Graph’ta birebir karşılık yok; yeni mimariyi buna göre çizmeniz gerekiyor.

Ben olsam ilk adımı şöyle atarım: hangi event gerçekten kritik, hangisi sadece bilgilendirme amaçlı önü ayırırım. Sonra subscription lifecycle kontrolünü ele alırım — expiration süresi dolmadan yenileme yapılacak mı? Eğer bu soru havada kalırsa production’da sessiz kopmalar yaşarsınız.

Aslında — dur bir saniye — önce şunu söyleyeyim: migration projelerinde teknik riskten önce süreç riski gelir.

Bu cümleyi boşuna kurmuyorum çünkü müşteri toplantılarında en çok orada tökezleniyoruz.

“Kim ownership alacak?”, “renewal job nerede koşacak?”, “monitöring alarmı kime gidecek?” soruları cevaplanmadan kod yazmaya başlamak bana göre acelecilik oluyor.

Graph’a geçişte asıl kazanım sadece modern API kullanmak değil; olayları yeniden düşünmek zorunda kaldığınız için sisteminizi temizlemenizdir.

Dikkat Etmeniz Gerekenler

Bak şimdi, Immutable IDs, item takibinde hayat kurtarıyor ama yanlış varsayım yaparsanız yine duvara toslarsınız. ID sabit diye her alan sabit sanmayın; mailbox taşıma veya yeniden eşleme durumlarında test şarttır. Ben bu konuyu ilk kez canlı ortamda gördüğümde ufak bir hayal kırıklığı yaşamıştım çünkü ekip sadece ID’ye güvenmişti, metadata değişimini kaçırmıştı.

Error handling tarafında işe kısa yol yok. Throttling geldiğinde geri çekilmek — itiraz edebilirsiniz tabi — lazım; exponential backoff olmadan devam etmek cloud-native dünyada pek hoş sonuç vermiyor. Bir de şunu ekleyeyim: logging’i fazla yapıp faydasız hâle getirmeyin, anlamlı correlation id üretin.

Kendi Sahadaki Notlarım ve Net Görüşüm

Bak şimdi, 2024 Temmuz’da İzmir’deki bir üretim firmasına yaptığımız değerlendirmede ekip “notification aldık mı tamamdır” kafasındaydı. Onlara delta reconciliation göstermemizle tablo değişti. Çünkü sistem düzgün çalışan günlerde herkes mutlu oluyor ama veri kaçınca kimse hatırlamıyor bile. İşin güzeli şu ki küçük düzeltmelerle oldukça sağlam hâle getirebildik.

Bence Microsoft’un yaptığı yönlendirme doğru yönde atılmış bir adım ama henüz ham olan yerler var. Mesela migration tooling tarafında bazı ekiplerin eli hâlâ manuel işlere gidiyor. Dokümantasyon iyi, fakat gerçek hayatta örnek mimariler biraz daha çoğalsa hiç fena olmazdı.

Sıkça Sorulan Sorular

EWS notification’dan Microsoft Graph’a geçmek zorunda mıyım?

Zorunda değilsin aslında, ama uzun vadede bence kesinlikle Graph’a geçmek mantıklı. Hani EWS eski bir mimariye bağlı kaldığı için yeni geliştirmelerde Graph çok daha iyi oturuyor.

Graph bildirimleri EWS kadar hızlı mı?

Açıkçası pek çok senaryoda gayet yakın bir performans veriyor. Yine de gerçek zamanlı bir şeyler bekliyorsan, rich notifications. Iyi tasarlanmış bir backend olmadan işler zorlaşabilir.

Delta query neden bu kadar önemli?

Doğrusu, Çünkü webhook’un kaçırdığı olayları telafi etmeni sağlıyor. Tecrübeme göre bunu hep sigorta poliçesi gibi anlatıyorum; yanı olmadan da idare edersin ama risk ciddi şekilde büyüyor.

Azure Event Hubs’ı ne zaman kullanmalıyım?

Mesela yük yüksekse, çok sayıda tüketici varsa ya da dağıtık bir işlem gerekiyorsa çok anlamlı oluyor. Ama tek servisli basit bir çözümde bence fazla kaçabilir.

Kaynaklar ve İleri Okuma

Microsoft Graph Change Notifications Overview

Microsoft Graph Webhooks Documentation

Açık konuşayım, Microsoft Graph Delta Query Overview

🤖Bu yazı yapay zeka (büyük dil modelleri) ile hazırlanmış, insan editör tarafından incelenmiştir. İçerik üretim sürecimiz.
Aşkın KILIÇ
Aşkın KILIÇYazar

20+ yıl deneyimli Azure Solutions Architect. Microsoft sertifikalı bulut mimari ve DevOps danışmanı. Azure, yapay zekâ ve bulut teknolojileri üzerine Türkçe teknik içerikler üretiyor.

AZ-305AZ-104AZ-500AZ-400DP-203AI-102

İlgili Yazılar

Azure Developer CLI 1.34: azure.yaml Katmanları ve
Azure Developer CLI 1.34: azure.yaml Katmanları ve4 Eki 2026
Kubernetes v1.37 Memory QoS Beta: Ne Değişti?
Kubernetes v1.37 Memory QoS Beta: Ne Değişti?16 Eyl 2026
BACPAC ve DACPAC: Benzerlikler ve Temel Farklar
BACPAC ve DACPAC: Benzerlikler ve Temel Farklar31 Ağu 2026
Azure Integrated HSM: Güvenin Donanım Katmanına İnişi
Azure Integrated HSM: Güvenin Donanım Katmanına İnişi1 May 2026

Bu içerik işinize yaradı mı?

Benzer içerikleri kaçırmamak için YouTube ve GitHub hesaplarımı takip edin.

YouTube GitHub

Haftalık Bülten

Her pazar özenle seçilmiş teknoloji yazıları doğrudan e-postanıza gelsin.

Etiket Azure Event Hubs change notifications delta query EWS Exchange entegrasyonu Microsoft Graph Webhook
Önceki yazı

Azure Cosmos DB’de Partition Key Değiştirmek: Artık Daha Az Acı Veriyor

Sonraki yazı

Bot PR’lere de CI yolu açıldı: Güvenlikte ince ayar zamanı

İlginizi Çekebilir

GitHub EMU silme hatası: etkilenen hesaplar ve çözüm
Aşkın KILIÇ 0

GitHub EMU silme hatası: etkilenen hesaplar ve çözüm

25/10/2026
Azure SQL DiskANN Vektör İndeksi GA: T-SQL ile Arama
Aşkın KILIÇ 0

Azure SQL DiskANN Vektör İndeksi GA: T-SQL ile Arama

25/10/2026
Visual Studio BYOM: Kendi Modelinizle Agent Modu
Aşkın KILIÇ 0

Visual Studio BYOM: Kendi Modelinizle Agent Modu

25/10/2026

3 comments

comments user
Pınar H. 12/06/2026 19:19

Biz de geçen yıl EWS’den Graph’a geçtik, özellikle webhook tarafında ilk kurulum biraz can sıkıcı oldu ama sonrasında operasyonel yük gerçekten azaldı. Delta query kısmını biraz daha detaylandırırsanız süper olur. Bu arada şu yazınız da güzeldi: vcpkg Mayıs 2026 Güncellemesi: Sessiz Güç, Büyük Etki — https://www.askinkilic.com.tr/vcpkg-mayis-2026-guncellemesi-sessiz-guc-buyuk-etki/

comments user
Koray M. 12/06/2026 20:19

EWS tarafında streaming subscription açık tutmak için ayrı bir worker process beslemek zorunda kaldığımız günler aklıma geldi, o operasyonel yük gerçekten birikirdi. Delta query yaklaşımı teoride temiz görünüyor ama ilk kez token yönetimini kurarken ne kadar sürtünme çıkıyor merak ediyorum. Bu arada şu yazınız da güzeldi, CI tarafındaki benzer “ince ayar” konularına ilgi duyuyorsanız: https://www.askinkilic.com.tr/bot-prlere-de-ci-yolu-acildi-guvenlikte-ince-ayar-zamani/

comments user
Selin N. 13/06/2026 02:45

Ekibimizle paylaştım, herkesin okuması lazım.

Yorumlar kapalı.

Yazı Ara

Takip Edin

  • Takipçi
  • Takipçi
  • Takipçi
  • Abone
  • Takipçi
  • GitHub EMU silme hatası: etkilenen hesaplar ve çözüm
    25/10/2026 GitHub EMU silme hatası: etkilenen hesaplar ve çözüm
  • Azure SQL DiskANN Vektör İndeksi GA: T-SQL ile Arama
    25/10/2026 Azure SQL DiskANN Vektör İndeksi GA: T-SQL ile Arama
  • Visual Studio BYOM: Kendi Modelinizle Agent Modu
    25/10/2026 Visual Studio BYOM: Kendi Modelinizle Agent Modu
  • Azure DevOps Server Ekim Yamaları: Patch 9 Kurulumu
    25/10/2026 Azure DevOps Server Ekim Yamaları: Patch 9 Kurulumu
  • Microsoft Sovereign Cloud: İş Yükü Bazlı Kontrol Katmanı
    24/10/2026 Microsoft Sovereign Cloud: İş Yükü Bazlı Kontrol Katmanı
  • DevOps Güncellemeleri
    09/03/2026 Azure DevOps Server Şubat Güncellemesi: Güvenlik
  • 2026-03-10_15-35-23
    10/03/2026 Microsoft 365 E7: Yapay Zeka ve Güvenlik Bir Arada
  • Azure Developer CLI 1.34: azure.yaml Katmanları ve
    04/10/2026 Azure Developer CLI 1.34: azure.yaml Katmanları ve
  • Artımlı Anlık Görüntü: Anında Geri Yükleme
    09/03/2026 Artımlı Anlık Görüntü: Anında Geri Yükleme
  • Bulut Sunucu Altyapısı
    09/03/2026 Microsoft Sovereign Cloud: İzolasyonda Güvenli Bulut
  • GitHub Copilot Pro Denemeleri Neden Durdu?
    11/04/2026 GitHub Copilot Pro Denemeleri Neden Durduruldu?
  • vcpkg'de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
    06/04/2026 vcpkg’de Paralel Kurulum ve Güvenlik Yaması: Neler Değişti?
  • MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
    08/04/2026 MCP Apps’i Kolaylaştıran Fluent API: Sahada Ne Değişiyor?
  • Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
    06/04/2026 Yapay Zekâ Çağında Sanayi Politikası: Asıl Mesela Ne?
  • Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler
    10/04/2026 Microsoft Foundry Mart 2026: Sahadan İlk İzlenimler

Hakkımda

Aşkın KILIÇ

Microsoft Azure Çözüm Uzmanı. Bulut bilişim, yapay zekâ, DevOps ve kurumsal güvenlik üzerine yazılar yazıyorum.

Devamını Oku →

Kategoriler

  • Azure
  • Bulut Altyapı
  • DevOps
  • Geliştirici Araçları
  • Güvenlik & Kimlik
  • Konteyner & Kubernetes
  • Kurumsal Teknoloji
  • Microsoft 365
  • Microsoft Azure
  • Veri & Analitik
  • Yapay Zeka

Popüler Etiketler

AI ajanları ASP.NET Core Azure azure app service Azure Cosmos DB Azure Developer CLI Azure DevOps Azure Functions Azure OpenAI azure sdk Azure SQL CI/CD CodeQL code review copilot Copilot CLI DevOps Entra ID geliştirici verimliliği GitHub GitHub Actions GitHub Copilot güvenlik Kimlik Doğrulama Kubernetes kurumsal güvenlik kurumsal yapay zeka maliyet optimizasyonu MCP Microsoft Agent Framework Microsoft Azure Microsoft Entra ID Microsoft Foundry MSVC otomasyon performans Pull Request RAG verimlilik veri yönetimi Visual Studio Visual Studio 2026 VS Code yapay zeka Yazılım geliştirme
  • Gizlilik Politikası
  • Çerez Politikası
  • Kullanım Koşulları
  • Hakkımda
  • İletişim

© 2026 Aşkın KILIÇ | Tüm hakları saklıdır. | Powered By SpiceThemes

Çerez tercihleri Zorunlu çerezler sitenin çalışması için kullanılır. Analitik çerezler yalnız açık izninizden sonra Google Analytics ve Microsoft Clarity için etkinleştirilir. KVKK ve Çerez Politikası
✉

Haftalık Bülten

Azure, DevOps ve Yapay Zeka dünyasındaki en güncel içerikleri her hafta doğrudan e-postanıza alın.

Spam yok. İstediğiniz zaman iptal edebilirsiniz.
📱
Uygulamayı Yükle Ana ekrana ekle, çevrimdışı oku
Ana Sayfa
Kategoriler
💻 Geliştirici Araçları 507 yazı 🏗️ Bulut Altyapı 407 yazı 🤖 Yapay Zeka 331 yazı ☁️ Microsoft Azure 279 yazı 🔧 DevOps 277 yazı 🔒 Güvenlik & Kimlik 223 yazı 🏢 Kurumsal Teknoloji 107 yazı 📊 Veri & Analitik 78 yazı 🐳 Konteyner & Kubernetes 62 yazı 📧 Microsoft 365 22 yazı 📁 Azure 1 yazı
Ara
Popüler
Yapay Zeka Azure Kubernetes DevOps Copilot Docker
Paylaş
WhatsApp
İçindekiler
    ← Azure Cosmos DB’de Partition K...
    Bot PR’lere de CI yolu açıldı:... →
    📩

    Gitmeden önce!

    Her pazar özenle seçilmiş teknoloji yazıları ve AI haberleri doğrudan e-postanıza gelsin. Ücretsiz, spam yok.

    🔒 Bilgileriniz güvende. İstediğiniz zaman ayrılabilirsiniz.

    📬 Haftalık bülten: Teknoloji + AI haberleri
    Beni Takip Et Yeni Azure / AI / DevOps yazılarını GitHub ve RSS üzerinden takip edin.
    GitHub RSS