[英]How do I create an AWS server that could recieve data continously from an IOS(swift) app?
我正在嘗試編寫IOS應用程序的代碼,並且已經為該應用程序指定了ec2服務器。 我想知道該應用程序如何將圖像數據發送到服務器。 ec2服務器將從使用該應用程序的所有用戶連續接收傳入的圖像數據。 然后,服務器將處理數據。 這類似於Instagram之類的應用程序所做的事情,但是當然規模並不大。
我是客戶端與服務器通信的初學者,想知道如何在我的應用程序中實現此功能。 我也不經常使用堆棧溢出,因此如果您需要更多信息,請告訴我是否做錯了什么。
更具體地說,用戶將在應用程序中發布圖像。 我目前已經設置了一個ec2服務器來接收該圖像。 我希望將用戶發布的所有圖像進行傳遞,處理,然后存儲在ec2服務器中。 有什么方法可以處理實際的數據傳遞。 這個問題有點籠統,因為我想知道在哪里看。 我是否需要編寫一個在后台不斷運行並在某個端口接收數據的腳本? 我可以使用其他服務來處理此問題嗎?
嗯,簡而言之,如果有許多用戶同時發送圖像,則在EC2上運行時會遇到問題。
研究在AWS上設置API Gateway <-> Lambda <-> DynamoDB or S3
。 那么你的客戶端可以POST
圖像/數據與一個HTTP請求的網關。
首先,您必須確定數據是流式傳輸(從服務器連續推送)還是存儲(根據需要從服務器拉出)。 您提供的Instagram示例表明您不需要實時流數據。
流傳輸解決方案更為復雜,通常可能需要諸如Web套接字(或AWS IoT
)之類的技術來完成。 存儲解決方案將更加簡單。
對於存儲,您可以選擇使用EC2
類的平台來創建和管理服務器(您需要一台以上的服務器才能擴展到許多用戶),也可以選擇使用Lamba
類的托管“無服務器”技術,而只需要提供以下功能即可:碼。 為了方便起見,折衷通常是價格。
對於圖像存儲,一種典型的模式是創建數據庫記錄,其中包含基礎圖像的S3
URL(以及任何元數據)。 您可以使用選擇的任何服務器技術創建此數據庫記錄並上傳文件。 Lambda可能需要API Gateway
服務器,但請記住,AWS開發工具包可以直接調用Lambda
函數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.