繁体   English   中英

如何创建可以从IOS(swift)应用程序连续接收数据的AWS服务器?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM