Aplikasi sosial untuk seluler dan web dengan autentikasi

Azure App Service
Azure Functions
Azure Traffic Manager
Visual Studio
Xamarin

Ide solusi

Artikel ini adalah ide solusi. Jika Anda ingin kami memperluas konten dengan informasi lebih lanjut, seperti potensi kasus penggunaan, layanan alternatif, pertimbangan implementasi, atau panduan harga, beri tahu kami dengan memberikan umpan balik GitHub.

Aplikasi klien seluler ini menawarkan berbagi gambar sosial dengan aplikasi web pendamping. Layanan back-end aplikasi melakukan pemrosesan gambar latar belakang menggunakan fungsi Azure, dan dapat memberi tahu pengguna tentang kemajuan melalui hub pemberitahuan. Data non-gambar disimpan di Azure Cosmos DB. Aplikasi web mengakses data dan gambar layanan back end melalui Azure Traffic Manager.

Lihat layanan berikut, yang ditampilkan dalam arsitektur solusi ini:

Kasus penggunaan potensial

Aplikasi klien seluler bekerja dalam mode offline, yang mefasilitasi Anda dalam melihat dan mengunggah gambar, bahkan ketika Anda tidak memiliki koneksi jaringan.

Arsitektur

Diagram arsitektur menunjukkan rute dari Teknisi ke Application Insights.Unduh SVG arsitektur ini.

Aliran data

  1. Buat aplikasi menggunakan Visual Studio dan Xamarin.
  2. Tambahkan layanan back end Azure App Service Mobile Apps ke solusi aplikasi.
  3. Terapkan autentikasi melalui penyedia identitas sosial.
  4. Simpan data non-gambar di Azure Cosmos DB dan cache di Azure Cache for Redis.
  5. Simpan gambar yang diunggah di Azure Blob Storage.
  6. Atur dalam antrean pesan tentang gambar yang baru diunggah.
  7. Gunakan Azure Functions untuk menghapus pesan dalam antrean dan proses gambar yang diambil dari blob storage.
  8. Kirim pemberitahuan push ke pengguna melalui hub notifikasi.
  9. Bangun dan uji aplikasi melalui Visual Studio App Center dan terbitkan.
  10. Kontrol distribusi lalu lintas pengguna ke titik akhir layanan di berbagai pusat data.
  11. Gunakan Application Insights untuk memantau App Service.

Komponen

  • Bangun front end web, aplikasi seluler, dan layanan back end dengan C# di Visual Studio 2017 atau Visual Studio for Mac.
  • Xamarin: Buat aplikasi seluler untuk iOS dan Android menggunakan SDK C# dan Azure.
  • Visual Studio App Center: App Center memungkinkan integrasi berkelanjutan dan alur kerja penyebaran dengan menarik kode dari BitBucket, GitHub, dan Visual Studio Team Services.
  • Aplikasi web App Service dapat meng-host aplikasi web yang menghadap pelanggan dan layanan yang digunakan oleh klien web dan seluler.
  • Gunakan Azure Functions untuk pemrosesan latar belakang tanpa server. Misalnya, satu fungsi Azure dapat secara otomatis mengubah ukuran blob baru saat ditambahkan ke container, sementara fungsi lain mendengarkan pesan pada antrean untuk menghapus beberapa gambar latar belakang.
  • Application Insights: Mendeteksi masalah, mendiagnosis crash, dan melacak penggunaan di aplikasi web Anda dengan Application Insights. Buat keputusan berdasarkan informasi sepanjang siklus hidup pengembangan.
  • Azure Cosmos DB adalah layanan database dokumen NoSQL yang dikelola sepenuhnya. Ini menawarkan kueri dan pemrosesan transaksi atas data bebas skema, performa yang dapat diprediksi dan dapat diandalkan, dan pengembangan yang cepat.
  • Azure Queue Storage digunakan untuk pesan yang tahan lama antara backend App Service dan Azure Functions.
  • Blob storage: Azure Storage menghosting file gambar untuk memanfaatkan skalabilitas yang lebih baik dengan biaya lebih rendah. Komunikasi antara aplikasi web dan fungsi Azure sering dilakukan menggunakan pemicu blob dan penyimpanan Azure Queue.
  • Azure Notification Hubs digunakan untuk notifikasi push lintas platform yang dapat diskalakan.
  • Azure Traffic Manager mengontrol distribusi lalu lintas pengguna untuk titik akhir layanan di berbagai pusat data guna menghadirkan aplikasi yang sangat responsif dan tersedia.

Langkah berikutnya