我需要Web服务器还是数据库?

时间:2016-07-13 09:02:35

标签: android database web server

我根本不熟悉网络服务或网络上的数据库(我使用的是本地数据库)。我正在开发基于Google地图的Android应用,需要访问我的数据库以保存/请求标记,并且需要从数千台设备访问该数据库(或者我希望如此)。

我是否需要一个Web服务器,以便Web上的应用程序可以管理数据库操作?或者我可以从每个设备调用数据库吗?我想后者是非常不安全的,但我真的对此事一无所知。

另外,对于答案,我应该使用Amazon Web Services还是Google App Engine?我已经读过Google App Engine更易于部署,但我不了解我对此应用程序的需求。

编辑1:我的应用用户需要在数据库中保存标记。如果Alice在纽约保存标记,Bob也需要看到该标记。标记不是个人的,它们是全球性的。因此,每个用户都需要访问同一个数据库。

2 个答案:

答案 0 :(得分:1)

嗯,在我看来,你需要一个保存标记纬度和纵向值的数据库。这可以通过您可能想到的不同方式完成。

但我建议您查找 Google自己的 Firebase ,其中包含以下内容:

Firebase structure

我最近开始使用他们的实时数据库,这很容易进入,他们有一个很棒的Android集成。另一个很好的优点是它是免费的,我不是在谈论试验,它是基于交通的。

适用于Android的Firebase入门:https://firebase.google.com/docs/android/setup

Android示例:https://firebase.google.com/docs/samples/#android

答案 1 :(得分:0)

根据我对Android的了解和理解,首先你将无法直接在Android应用程序中连接服务器数据库,如果你能做到,那么请检查下面的缺点。

有很多原因。

<强> 1。安全性 - 如果用户具有直接访问权限,他们可以从您的数据库中获取任何内容。此外,他们将在您的数据库中有一个密码。因此,如果您使用的SQL服务器存在缺陷,那么他们可以利用它。此外,如果您的权限设置错误,可能会擦除您的数据库。

<强> 2。速度 - 如果用户经常使用大型查询,那么它可能会使您的系统快速而不必要地陷入困境。如果您通过Web界面,可以限制它。

第3。辅助功能 - 几乎所有内容都支持Web查询。它需要特殊客户端直接访问SQL数据库。

所以,你不应该直接访问,而应该开发web api并访问它。

希望ypu明白了我想说的话