部署云服务器难吗?

Is it hard to deploy a cloud server?

抱歉,我是网络服务器新手。我想为用户数据部署一个云服务器:

  1. 用户可以使用网页登录,验证码发送到用户phone。
  2. 用户可以在登录时操作他的数据(add/modify/remove)。
  3. Android/iPhone 客户端可以在登录时操作用户数据。
  4. 服务器应该有一个数据库用于存储,SQLLite 或其他。

使用Amazon/Ali-cloud云服务就好了,只要能加快我的部署速度。我不确定我是否需要 运行 到 H5、PHP/JSP、node.js 或其他 blob 中。你能为我提供一个指南,网络 link 或书籍吗?

而且,Android/IOS 应用程序和云服务器之间最流行的编程接口是什么? http post/get 或其他包装器 ?

您当然可以使用 Amazon Web Services 加快部署速度。这是我的建议:

  1. 对于网络服务器,

Amazon EC2: Launch an instance where you can install Apache/Nginx here. You will need a RDS instance running parallel with your server which will lower your need on server CPU/Mem, but will cost also.

  1. 对于数据库,这里有多种方法:

Amazon RDS: Launch an instance where you host your Database (mysql/...). This one will provide you with Database Name, Hostname, Users, ... which you can use to connect with your webserver in EC2. Your Android/IOS application can use RDS information for the database connection.

Amazon DynamoDB: Fast, Flexible for NoSQL (wonder if you want to use traditional database or NoSQL?): https://aws.amazon.com/amplify/

  1. 对于Mobile/Website访问控制,

AWS Cognito: Great for user-accounts, designed for real-time data model: https://aws.amazon.com/cognito/?nc1=f_ls

  1. 对于无服务器,如果你想 GET/PUT API 在你的网络服务器上 更容易,

AWS Lambda: https://aws.amazon.com/lambda/?nc1=f_ls

考虑到您刚刚开始使用您的应用程序,我建议您使用 serverless architecture with AWS Lambda 运行 您的业务逻辑。

主要优势:

  • 无需服务器管理 = 花时间构建应用程序而不是维护基础架构
  • 灵活缩放 = 根据您的实际需要进行缩放
  • 为价值付费 = 不要为不需要的资源付费
  • 自动化高可用性 = 无服务器提供内置可用性和容错能力

要了解有关无服务器的更多信息,您可能需要查看 Building Serverless Web Applications - 2017 AWS Online Tech Talks

现在说到深入,我建议查看 acloud.guru、cloud academy、udemy 或 linuxacademy 提供的无服务器在线培训以及您要使用的开发语言(Node.js常用于此类场景)。