Serverless的应用场景
虽然 Serverless 的应用很广泛,但是也有使用上的局限性,Serverless 比较适合的场景有以下一些: - 异步的并发,组件可独立部署和扩展 - 应对突发或服务使用量不可预测(主要是为了节约成本,因为 Serverless 应用在不运行时不收费) - 短暂、无状态的应用,对冷启动时间不敏感 - 需要快速开发迭代的业务
基于此,我们发现,Serverless非常适合做实时文件处理、周期性的数据处理和移动及 Web 应用后端等。下面,我们通过一个游戏应用为例来说明什么是 Serverless 应用。
通常,一款移动端游戏至少包含如下几个特性: - 移动端友好的用户体验 - 用户管理和权限认证 - 关卡、升级等游戏逻辑,游戏排行,玩家的等级、任务等信息
所以,技术可能是下面这样的: - 一个 app 前端,iOS 或者安卓 - 用 Java 写的后端,使用 JBoss 或者 Tomcat 做 server 运行 - 使用关系型数据库存储用户数据,如 MySQL
不过,这样的架构虽然开发起来比较容易,但是维护起来确十分复杂,前端开发、后端的开发都需要十分专业的人员、环境的配置,还要有人专门维护数据库、应用的更新和升级。