2017-09-05 227 views
0

我一直在寻找一个合适的回答这个问题,有位在前端开发背景的,但像SaaS的,PaaS的,等新概念,希望从专家那里的信息,可以帮助任何新手了解它的全部内容。为什么或什么时候应用需要服务器?

说我试图开发类似eBay的一个应用程序,需要来自用户的产品和销售回谁需要它的其他用户。

我的应用程序是否需要后端服务器?如果是这样,为什我已经将我的应用上传到Google Play商店或Apple Store。

像Heroku的或火力或AWS后端服务器如何帮助我的应用程序?

我可以实现在单一的应用程序两种不同的服务,譬如说例如,火力的后台数据库和Heroku的支付处理?

再次感谢您的时间和信息。

回答

0

除非您有建立分布式应用程序的经验,这些应用程序可以以一致的方式跨多个节点持久保存数据,并确保数据可用,否则我会说您绝对需要某种后端。除非你只计划进行用户到用户的交易,这可以依靠客户端应用程序之间的直接消息传递 - 这似乎毫无意义,并且与EBAY类产品的要求相差甚远。

在架构方面,你可以按照许多不同的方法,但在大部分时间里,你会需要某种形式的数据访问层。我建议研究三层软件设计模式(https://en.wikipedia.org/wiki/Multitier_architecture)以更好地理解这种类型的软件产品通常设计的方式。

确定您喜欢哪种类型的数据持久性之后,您需要设置移动应用将连接到的后端,以便从中检索数据(如销售产品,用户配置文件和评级以及您自己的历史记录等) 。当然,你也可以直接连接到应用程序的数据库,但这将是一个很大的错误 - 这意味着使数据库访问公开可用,从而暴露于攻击,更不用说你会很难找到用户注册和身份验证的解决方案,无论如何都必须通过其他方式提供。通常,您的后端还将管理用户注册和授权。

的Heroku,火力地堡和AWS都非常不同,各有各的长处和短处,但没有什么喜欢尝试出来,看看有什么最适合。您称之为“Google Server”和“Apple Server”听起来像是一种误解,您可能指的是Google Play商店和Apple Store。这些不是可用作后端的应用程序服务器,只能作为您的移动应用程序的存储库,用户可从中下载它,而不是其他任何应用程序服务器。

没有某种后端机制,使数据可用于多个用户的消耗的挑战将是压倒性的。

我知道这不是一个非常具体的答案,但是你的问题是相当广泛的,而且在进入更多细节之前,你似乎需要研究一些软件工程的基本基础。

0

的SaaS

答: SaaS的发音为 “软件即服务”。在外行人而言,任何人开发的任何软件,托管它的地方,你可以使用托管软件在软件项目/产品的第三方服务(如公共API),或直接使用它作为下像火力地堡任何许可的个人软件所提到。

的PaaS

回答 PaaS的发音为 “平台即服务”。在外行人而言,任何配置一些硬件,通过一些基于Web的应用程序公开的硬件控制或REST API,你可以使用硬件部署/运行/没有你的地方

后端服务器

有实际的硬件管理应用程序

回答首先,让我解释一下你的服务器。服务器是一个中间人谁服务,无论是要求它和所有的浏览器/移动应用作为客户端。所以,网络是关于客户端 - 服务器通信的。如上所述,eBay就像app一样从用户(客户端操作)获取产品,将其放在服务器上(客户端请求服务器在后台将该产品放到服务器上)和其他用户打开应用程序(客户端操作)和搜索产品(移动客户端请求服务器返回该产品,如果有效并符合搜索标准),他可以购买(移动客户端将请求服务器完成购买)

您必须明白,对于任何Web应用程序,移动应用程序或桌面应用程序之间的通信,总会有一台服务器。即使在文件共享应用程序,如shareit也,一个移动应用程序可以作为服务器和相同的应用程序在其他移动作品的客户。

是的,像Heroku的或火力或AWS后端服务器将帮助你的应用程序来完成您的申请业务流程。

是的,你可以实现在单一的应用程序两种不同的服务,譬如说例如,火力的后台数据库和Heroku的支付处理或托管应用程序/ API的。

相关问题