인증을 사용하는 모바일 및 웹용 소셜 앱

App Service - Moblie Apps
Functions
Traffic Manager
Visual Studio
Xamarin

솔루션 아이디어

자세한 정보, 구현 세부 정보, 가격 책정 지침 또는 코드 예제를 포함 하 여이 문서를 확장 하려면 GitHub 피드백을 통해 알려주세요.

이 모바일 클라이언트 앱은 도우미 웹 앱과 소셜 이미지 공유를 제공 합니다. 앱 백 엔드 서비스는 Azure 함수를 사용 하 여 배경 이미지 처리를 수행 하 고 알림 허브를 통해 사용자에 게 진행률을 알릴 수 있습니다. 이미지가 아닌 데이터는 Cosmos DB에 저장 됩니다. 웹 앱은 Traffic Manager를 통해 백 엔드 서비스 데이터 및 이미지에 액세스 합니다.

모바일 클라이언트 앱은 오프 라인 모드에서 작동 하므로 네트워크에 연결 되어 있지 않은 경우에도 이미지를 보고 업로드할 수 있습니다.

오른쪽의 링크를 통해 위의 솔루션 아키텍처에 나열 된 Azure 제품을 배포 하 고 관리 하는 방법에 대 한 설명서를 제공 합니다.

Visual Studio Team Services

Visual Studio

Xamarin에 대 한 Visual Studio Tools

Application Insights

Visual Studio App Center

App Service Mobile Apps

Architecture

아키텍처 다이어그램 이 아키텍처의 SVG 를 다운로드 합니다.

데이터 흐름

  1. Visual Studio 및 Xamarin을 사용 하 여 앱을 만듭니다.
  2. Azure App Service Mobile Apps 백 엔드 서비스를 앱 솔루션에 추가 합니다.
  3. 소셜 id 공급자를 통해 인증을 구현 합니다.
  4. Cosmos DB에 이미지가 아닌 데이터를 저장 하 고 Azure Cache for Redis에 캐시 합니다.
  5. 업로드 된 이미지를 Azure Blob Storage에 저장 합니다.
  6. 새로 업로드 된 이미지에 대 한 메시지를 큐에 대기 합니다.
  7. Azure Functions를 사용 하 여 메시지를 큐에서 제거 하 고 blob 저장소에서 검색 한 이미지를 처리 합니다.
  8. 알림 허브를 통해 사용자에 게 푸시 알림을 보냅니다.
  9. Visual Studio App Center를 통해 앱을 빌드 및 테스트 하 고 게시 합니다.
  10. 서로 다른 데이터 센터의 서비스 끝점에 대 한 사용자 트래픽 배포를 제어 합니다.
  11. Application Insights를 사용 하 여 app service를 모니터링 합니다.

구성 요소

  • Visual studio 2017 또는 Mac 용 Visual studio 에서 c #을 사용 하 여 웹 프런트 엔드, 모바일 앱 및 백 엔드 서비스를 빌드합니다.
  • Xamarin: c # 및 Azure sdk를 사용 하 여 IOS 및 Android 용 모바일 앱을 만듭니다.
  • Visual Studio App Center: App Center BitBucket, GitHub 및 Visual Studio Team Services에서 코드를 끌어 연속 통합 및 배포 워크플로를 사용 하도록 설정 합니다.
  • App Service 웹 앱은 웹 및 모바일 클라이언트 모두에서 사용 되는 고객 지향 웹 앱 및 서비스를 호스트할 수 있습니다.
  • 서버를 사용 하지 않는 백그라운드 처리에 Azure Functions 를 사용 합니다. 예를 들어 한 Azure 함수는 컨테이너에 추가 될 때 새 blob의 크기를 자동으로 조정할 수 있으며, 다른 함수는 여러 배경 이미지를 삭제 하기 위해 큐에서 메시지를 수신 대기 합니다.
  • Application Insights: Application Insights를 사용 하 여 웹 앱에서 문제를 검색 하 고, 충돌을 진단 하 고, 사용 현황을 추적 합니다. 개발 수명 주기 전반에 걸쳐 합리적인 의사 결정을 내립니다.
  • Azure Cosmos DB 는 완전히 관리 되는 nosql 문서 데이터베이스 서비스입니다. 이는 스키마 없는 데이터, 예측 가능 하며 안정적인 성능, 신속한 개발과 같은 쿼리 및 트랜잭션 처리를 제공 합니다.
  • Azure Queue storage 는 App Service 백엔드 및 Azure Functions 간의 지속적인 메시지에 사용 됩니다.
  • Blob storage: Azure Storage 이미지 파일을 호스트 하 여 저렴 한 비용으로 더 나은 확장성을 활용 합니다. 웹 앱과 Azure function 사이의 통신은 종종 blob 트리거와 Azure Queue storage를 사용 하 여 수행 됩니다.
  • Azure Notification Hubs 는 확장 가능한 플랫폼 간 푸시 알림에 사용 됩니다.
  • Azure Traffic Manager 는 응답성이 뛰어나고 사용 가능한 응용 프로그램을 제공 하기 위해 다양 한 데이터 센터에서 서비스 끝점에 대 한 사용자 트래픽 배포를 제어 합니다.

다음 단계