惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

J
Java Code Geeks
量子位
腾讯CDC
A
About on SuperTechFans
小众软件
小众软件
Microsoft Azure Blog
Microsoft Azure Blog
T
Tailwind CSS Blog
V
V2EX
B
Blog RSS Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
GbyAI
GbyAI
Recent Announcements
Recent Announcements
Microsoft Security Blog
Microsoft Security Blog
博客园 - 叶小钗
罗磊的独立博客
宝玉的分享
宝玉的分享
WordPress大学
WordPress大学
大猫的无限游戏
大猫的无限游戏
IT之家
IT之家
V
Visual Studio Blog
D
DataBreaches.Net
博客园 - 三生石上(FineUI控件)
月光博客
月光博客
有赞技术团队
有赞技术团队

LeanCloud

LeanCloud 无了? 8 月 1 日起, LeanCloud 国际版共享域名不再向中国大陆提供服务 LeanCloud 凉了吗? LeanCloud 将加入心动/TapTap 关于我在使用 LeanCloud 时候遇到的的一些情况分享 Leancloud 又双叒叕挂了,炸站了 为什么 LeanCloud 中国版云引擎的标准版实例价格是 ¥ 1/天,国际版的是 $1/天? leancloud 强制绑定域名, valine 没得玩了 Leancloud 又挂了 这回 Leancloud 域名被锁定到底是因为啥 Leancloud 挂了 LeanCloud 怎么使用 JavaScript 的 API 保存富文本? 做了一个 LeanCloud 数据存储的导出工具 Leancloud 的价格方案是不是有点不合理啊 LeanCloud 发布了多客户端实时同步数据的功能,欢迎试用 如何在 LeanCloud 开通 cdn 加速 LeanCloud 的云引擎是什么配置,为什么免费版的性能还比阿里云的最低配要快? 有没有 leancloud 代替方案或开源产品推荐? 国内短信价格下调 17%, 2016 年 7 月 5 日零时生效 怎样才能写得一手好代码? 赞 Leanote LeanCloud 的推送服务稳定性捉急啊,两分钟前好好的突然又不行了。。。另外大家都用什么 Android 推送服务,求推荐 又来。。。LeanCloud 中国节点的后端存储集群出现问题 Leancloud 又挂了?全国都无法 ping 通 leanapp.cn 下域名无法验证微信? LeanCloud 你们的 push 是不是挂掉了,发了几个都不行啊 请允许我水一下,每次敲打 AV.Object...,都会让我下意识的乱想,不能好好的工作,你们设计的时候是如何考虑的,虽然我知道是之前品牌的简称…… 使用 New Relic 监控云引擎应用的性能 「产品更新」高效内存存储服务 LeanCache 正式发布 基于 LeanCloud 云引擎的 Web 全栈方案: LeanEngine-Full-Stack
LeanCloud 和阿里云到底有什么区别?
LeanCloudRRY · 2016-05-24 · via LeanCloud

不是很了解 LeanCloud 的开发者经常会问「 LeanCloud 与已有的很多云服务有什么区别呢?」下面我们就以国内比较有代表性的阿里云为例,跟我们做下对比。

产品的区别

进入阿里云网站可以看到阿里云的产品介绍。产品列表有弹性计算、数据库、存储与 CDN 、网络、大规模计算、云盾、管理与监控、应用服务、互联网中间件、移动服务、域名与网站等,每个选项下面又有非常多的子产品列表,提供的服务种类繁多。个人感觉几乎开发中需要使用的服务器产品,阿里云应该都提供了。这些产品更偏向于较底层的服务,用户要想使用起来需要具备一定的能力。

阿里云官网部分截图

LeanCloud 则完全不同。它提供了四项产品,分别是 LeanStorage (数据、文件存储及云引擎)、 LeanMessage (短信、推送及实时通讯服务)、 LeanAnalytics (统计分析服务)、 LeanModules (各种其他通用组件)。看起来很精简却有些抽象,那这些产品具体又能满足什么需求呢?

概念上的区别

阿里云提供的是类似于 AWS (亚马逊的云服务)一样的传统云服务。使用了阿里云你就不用再去操心那些与硬件和底层运维相关的事情,比如硬盘损坏、主机托管、服务器配置网络等等。

但如果想要开发一个自己的 App ,你仍然需要在阿里云上购买机器,选择部署到哪个机房,还要购买数据库,选择数据具体是怎样的规格,然后还要对这台机器进行完整的配置。虽然比没有云服务的日子已经轻松了许多,但这些操作仍然需要一个专业的工程师才能很好地完成。

而使用 LeanCloud 用户却不需要操心这些事情,可以说基本上不用考虑服务器的细节。

LeanCloud 提供的是 BaaS 服务( Backend as a Service 后端即服务),又被称为云服务 2.0 。简而言之,云服务 1.0 解决的是不再让你担心服务器,而 BaaS 的目标是帮你解决全部服务器运维,甚至是部分后端业务逻辑。那 LeanCloud 究竟是怎么做到的呢?回答这个问题之前,我们看下一个 App 一般都是什么样子。

以 LeanCloud 的用户「懂球帝」为参考,不论什么产品基本上都需要一套账号系统,目前较通用的做法是使用手机号码注册,发送短信验证;基于这个账号还要存储一些数据项,如昵称、头像等信息,再到真正的主业务逻辑,需要通过服务器基于某个逻辑运算出结果交给客户端做展示。

那么我们再考虑一个问题,为什么我们每次做一个产品都要反反复复地开发这些差不多一样的逻辑呢?比如账号系统、数据存储、短信验证、邮件验证、推送服务甚至是即时聊天,有没有办法让这些东西拿来就用,让自己能够最快速地投入开发呢?当然有办法,这就是 LeanCloud 所做的事情。

具体使用 LeanCloud

来举个具体例子。在 LeanCloud 中想要实现一套账号系统共分为三步:注册账号、创建一个应用、下载对应的 SDK 。就这三步?难道不用写代码吗?是的,不用写代码你其实已经拥有了一套支持 ACL (访问权限控制)、支持短信验证注册、支持邮件注册这样具备完整安全体系的账号系统,客户端工程师只需直接使用即可。例如, Web 前端通过 JavaScript SDK 在浏览器使用账户系统,具体代码如下:

// 创建一个实例
const user = new AV.User();
// 设置用户名
user.set('username', 'wangxiao);
// 设置密码
user.set('password', 123456789);
// 注册
user.signUp().then(user => {
  // 注册成功
}, error => {
  // 注册失败
});

再如经常被使用的短信验证功能,你不需要去找服务端工程师去开发一个专用接口,而是直接在浏览器中调用 JavaScript SDK 的方法(支持模板来定制短信内容),具体代码如下:

// 发送手机验证码
AV.Cloud.requestSmsCode({
  mobilePhoneNumber: '182xxxx5548'
}).then(() => {
  // 发送成功
}, error => {
  // 发送失败
});

// 校验验证码
AV.Cloud.verifySmsCode('1234', '182xxxx5548')
.then(() => {
  // 验证成功
}, error => {
  // 验证失败
});

// 短信模板
AV.Cloud.requestSmsCode({
  mobilePhoneNumber: '182xxxx5548',
  template: 'Template_Name',
  ttttName: '自定义模板变量名'
}).then(() => {
  // 发送成功
}, error => {
  // 发送失败
});

短信验证仅仅是我们所开放的众多功能中的一项,你还可以使用 SDK 轻松实现数据存储、文件存储( CDN )、推送、即时聊天等实用功能。如此以来你的开发效率会大幅提升,服务器端对于你来说完全是透明的,这样就能把所有精力集中到研发核心产品上去,而后续的数据运营和管理工作可以直接在 LeanCloud 的控制台中进行,甚至在初期你都不需要给运营人员编写一个对应的管理后台。

控制台中的数据管理界面

成本的区别

选择传统的云服务,你可能需要更多地去了解服务端的结构,要综合考虑在云服务上搭建出一套自己的系统所付出的成本,还需要找到合适的工程师去维护这些服务,找到后端工程师来开发服务端很多通用的业务逻辑。

如果使用 LeanCloud 这些事情都不用去考虑,直接使用相应的服务即可。同时我们的云服务按照使用量计费,并提供了一定额度的免费使用量,在初期用户量少的时候基本不会产生什么费用,只有当用户量增长到一定量级时才会产生相应的费用。总之使用 LeanCloud 不仅仅省去了后期运维的成本,还减少了后端工程师的工作量,加速产品迭代。