2016-08-09 45 views
2

我對此主題進行了相當研究,但似乎無法理解/找到有關我的問題的足夠信息。適用於iOS地圖應用程序的後端架構

我是一個小軟件公司的新手,剛剛有一個項目需要編寫技術要求規範。

我們正在開發一個iOS地圖應用程序,用戶可以根據城市創建地圖,用戶可以在其中添加興趣點,並將圖片與描述等一起添加到這些地圖。用戶可以與其他用戶分享給定城市的旅行體驗。

我的問題是,我需要描述整個系統架構,並決定如何組成後端解決方案。我沒有系統架構的經驗。

我已經看過Microsoft Azure可以在https://azure.microsoft.com/en-us/pricing/details/app-service/,特別是標準S1計劃選項。但是我不知道如果這個解決方案是足夠的,如果該應用的用戶羣將是,比方說,20.000個用戶?並且是否包含在這個NoSQL數據庫中?

我很抱歉,如果存在類似的問題,我已經忽略了!

希望任何人都可以用一些總體建議湊錢

乾杯!

回答

0
- (void)viewDidLoad 
{ 
    [super viewDidLoad]; 
    mapView = [[MKMapView alloc]initWithFrame: 
     CGRectMake(10, 100, 300, 300)]; 
     mapView.delegate = self; 
     mapView.centerCoordinate = CLLocationCoordinate2DMake(37.32, -122.03); 
     mapView.mapType = MKMapTypeHybrid; 
     CLLocationCoordinate2D location; 
     location.latitude = (double) 37.332768; 
     location.longitude = (double) -122.030039; 
     // Add the annotation to our map view 
     MapAnnotation *newAnnotation = [[MapAnnotation alloc] 
     initWithTitle:@"Apple Head quaters" andCoordinate:location]; 
     [mapView addAnnotation:newAnnotation]; 
     CLLocationCoordinate2D location2; 
     location2.latitude = (double) 37.35239; 
     location2.longitude = (double) -122.025919; 
     MapAnnotation *newAnnotation2 = [[MapAnnotation alloc] 
     initWithTitle:@"Test annotation" andCoordinate:location2]; 
     [mapView addAnnotation:newAnnotation2]; 
     [self.view addSubview:mapView]; 

} 


// When a map annotation point is added, zoom to it (1500 range) 
- (void)mapView:(MKMapView *)mv didAddAnnotationViews:(NSArray *)views 
{ 
    MKAnnotationView *annotationView = [views objectAtIndex:0]; 
    id <MKAnnotation> mp = [annotationView annotation]; 
    MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance 
    ([mp coordinate], 1500, 1500); 
    [mv setRegion:region animated:YES]; 
    [mv selectAnnotation:mp animated:YES]; 
} 

你可以根據你 注編輯:你需要實現彈出(自定義)。

+0

謝謝你的回答。但是,我不太確定這是否會回答我的問題,這個問題可能有些寬泛,也許含糊不清。我更多地尋求關於鏈接解決方案是否足夠以及是否可以使用NoSQL數據庫的建議。或者如果另一種解決方案會更好。 – masterp

1

應用服務僅提供虛擬主機功能。這是一個相當廣泛的功能,幷包含大量的縮放功能。它可以擴展(如果您編寫的後端是無狀態的,則可以運行多個副本),並具有您需要的所有DevOps需求。

對於基本的後端,您將要添加其他功能。 DocumentDb或Azure表存儲都提供NoSQL功能,不同之處在於延遲,查詢能力和彈性。您還可以選擇SQL數據庫,blob存儲或將自己的數據庫或第三方數據庫放入架構中。

系統架構過於寬泛而模糊,沒有真正的要求。詢問一個具體的解決方案是否適合這種廣泛和模糊的解決方案在這裏並不合適。

相關問題