Aracılığıyla paylaş


Azure SignalR Hizmeti ve Azure İşlevleri ile gerçek zamanlı uygulamalar

Azure SignalR Hizmeti Azure İşlevleri ile birlikte, sunucusuz bir ortamda gerçek zamanlı mesajlaşma web uygulamaları çalıştırmanıza olanak tanır. Bu makalede, hizmetlerin birlikte nasıl çalıştığına genel bir bakış sağlanır.

Azure SignalR Hizmeti ve Azure İşlevleri tamamen yönetilen, yüksek oranda ölçeklenebilir hizmetlerdir. Altyapıyı yönetmek yerine uygulama oluşturmaya odaklanmanızı sağlar. Sunucusuz bir ortamda gerçek zamanlı iletişim sağlamak için iki hizmeti birlikte kullanmak yaygındır.

Gerçek zamanlı iletişimleri Azure hizmetleriyle tümleştirme

Azure İşlevleri hizmeti, bulutta her olay gerçekleştiğinde tetikleyen JavaScript, Python, C# ve Java gibi çeşitli dillerde kod yazmanızı sağlar. Bu olayların örnekleri arasında şunlar yer alır:

  • HTTP ve web kancası istekleri
  • Periyodik zamanlayıcılar
  • Azure hizmetlerinden gelen olaylar, örneğin:
    • Event Grid
    • Event Hubs
    • Hizmet Veri Yolu
    • Azure Cosmos DB değişiklik akışı
    • Depolama blobları ve kuyrukları
    • Salesforce ve SQL Server gibi Logic Apps bağlayıcıları

BU olayları Azure SignalR Service ile tümleştirmek üzere Azure İşlevlerini kullanarak olaylar gerçekleştiğinde binlerce istemciye bildirim gönderme özelliğine sahip olursunuz.

Azure Functions ve SignalR Service ile uygulayabileceğiniz gerçek zamanlı sunucusuz mesajlaşmaya ilişkin bazı yaygın senaryolar arasında şunlar yer alır:

  • IoT cihaz telemetri verilerini gerçek zamanlı bir panoda veya haritada görselleştirin.
  • Azure Cosmos DB'de belgeler güncelleştirildiğinde bir uygulamadaki verileri güncelleştirin.
  • Salesforce'ta yeni siparişler oluşturulduğunda uygulama içi bildirimler gönderin.

Azure İşlevleri için SignalR Service bağlamaları

Azure İşlevleri için SignalR Service bağlamaları Azure İşlevi uygulamasının SignalR Service’e bağlı istemcilerde iletiler yayımlamasına olanak tanır. İstemciler .NET, JavaScript ve Java’da kullanıma sunulan bir SignalR istemci SDK’sını kullanarak hizmete bağlanabilir, daha fazla dil desteği yakında gelecektir.

Örnek Senaryo

Azure Cosmos DB ile tümleştirmek için Azure İşlevleri kullanmak, Azure Cosmos DB değişiklik akışında yeni olaylar görüntülendiğinde gerçek zamanlı iletiler göndermek için SignalR Hizmeti bağlamalarını kullanma örneğidir.

Azure Cosmos DB, Azure İşlevleri SignalR Hizmeti

  1. Azure Cosmos DB koleksiyonunda değişiklik yapılır.
  2. Değişiklik olayı Azure Cosmos DB değişiklik akışına yayılır.
  3. Azure Cosmos DB tetikleyicisi, değişiklik olayına yanıt olarak bir Azure İşlevini etkinleştirir.
  4. SignalR Hizmeti çıkış bağlaması SignalR Hizmeti için bir ileti yayımlar.
  5. SignalR Hizmeti iletiyi tüm bağlı istemcilerde yayımlar.

Kimlik doğrulama ve kullanıcılar

SignalR Hizmeti, tek bir kullanıcıya ait olanlar gibi istemcilerin tümüne veya bir alt kümesine ileti yayınlamanıza olanak tanır. Microsoft Entra ID, Facebook ve X gibi sağlayıcılarla kullanıcıların kimliğini doğrulamak için Azure İşlevleri için SignalR Hizmeti bağlamalarını App Service kimlik doğrulamasıyla birleştirebilirsiniz. Daha sonra doğrudan bu kimliği doğrulanmış kullanıcılara ileti gönderebilirsiniz.

Sonraki adımlar

Azure İşlevleri ve SignalR Hizmeti birlikte kullanma hakkında ayrıntılı bilgi için aşağıdaki kaynakları ziyaret edin:

Azure İşlevleri için SignalR Hizmeti bağlamalarını denemek için bkz: