作者归档:lazyseq

lazyseq

关于lazyseq

One man's constant is another man's variable.

关于 7 月 31 日 AppSo 应用的部分用户收到重复推送的说明及致歉

7 月 31 日下午,我们收到爱范儿团队的通知了解到他们发布的 AppSo 应用部分用户在中午 12 点之后的半小时里收到了多至 27 次的重复推送通知。我们的工程师在当天下午定位了故障原因:我们在给大量用户推送时会遍历数据库来逐批发送推送,在这个过程中如果有已发送推送的设备记录发生更新,就可能再次出现在遍历过程中,更详细的技术性说明可以参考 StackOverflow 的这篇帖子 。触发这个条件的情况非常少见,但导致了这次推送故障。目前我们已经实现了防止类似情况发生的措施。

这次故障打扰了 AppSo 的很多用户,并给 AppSo 运营团队的工作带来了困扰。我们在此向他们诚挚道歉。

欢迎体验「LeanCloud 咨询师」内测版

leancloud%e5%92%a8%e8%af%a2%e5%b8%88

我们经常收到一些客户的反馈,希望 LeanCloud 能够为其产品开发提供更多的咨询服务而不仅限于云服务本身。过去我们对这样的需求比较谨慎,通常会采取对接独立开发者或者技术外包公司来满足这类需求,但对于结果却难以把控。与此同时,我们看到越来越多的产品是其他行业与互联网结合的产物,开发这些产品的公司往往优势并不在互联网技术方面,所以需要一些外部帮助来弥补缺口。因此我们决定推出「LeanCloud 咨询师」这项技术咨询服务(目前处于内测阶段),旨在指导客户通过最佳实践来降低产品开发过程中的风险,卓有成效地完成产品开发。

「LeanCloud 咨询师」每月的服务费用为 5 万元,在任何一个工作日,由 1 位或以上的 LeanCloud 工程师专职负责您的项目。负责人会根据产品不同阶段的需求由擅长不同领域的工程师担任,必要时会有多位工程师参与。服务内容包括:

  • 为产品的技术架构提出建议。
  • 通过即时通讯工具与您的团队对接,快速解决技术问题(不限于 LeanCloud 相关的问题,也包括产品开发中的其他问题)。
  • 帮助实现产品的关键功能,解决技术难点。
  • 通过代码审核发现程序缺陷、性能问题和安全隐患。

继续阅读

LeanCloud 已经支持微信小程序开发啦!

wechat

从微信小程序为外界所知的第一天起,就有很多 LeanCloud 用户问我们什么时候可以支持小程序。微信小程序以跨平台的 API 为开发者提供了移动端的基本能力,而 LeanCloud 则大大简化了产品的后端开发、部署、运维,所以使用 LeanCloud 的后端服务开发微信小程序无疑是一个提高效率、降低成本的绝妙搭配。

LeanCloud 最新版的 JavaScript SDK 包含了对小程序的支持。目前所有功能包括对象存储、文件存储、用户系统、实时消息等都可以按照 JavaScript 存储 SDKJavaScript 实时通讯 SDK 的原有用法正常使用。在以后的版本里我们还将推出针对微信小程序的新功能和改进,比如微信用户和 LeanCloud 用户系统的一键关联、前端组件和后端数据服务更紧密的集成等等。

在微信小程序中使用 LeanCloud 的方法请参考 详细文档 ,欢迎在我们的 社区 提出反馈和建议。

LeanCloud 将于 9 月 1 日起统一实行预充值 + 按天扣费

从 2016 年 9 月 1 日开始,LeanCloud 平台的付费方式将统一更改为按天扣费。届时用户需要预先为账户充值,用户当日使用的服务达到了收费标准后所产生的费用将于次日凌晨从账户余额中扣除。当账户余额不足或为负数时,各项服务将暂停直至账户余额恢复充足。短信服务因其消费特性仍然保持实时扣费。

为了方便用户使用 LeanCloud 平台,一直以来我们对大部分服务都采用「先使用,后付费」的按月结算的方式。而云引擎、云缓存等服务因为存在被滥用的潜在风险,所以需要按照预充值和按天扣费的方式来结算。

由于我们的大部分用户都同时使用多项服务,以上按月和按天的两种结算方式容易给一些用户带来困扰。比如当我们把上月未支付的账单金额从用户的账户余额中扣除时,账户余额一旦为零或负数,就会导致云引擎等按天计费的服务无法正常使用。为此,我们决定将 LeanCloud 整个平台的计费和扣费方式统一为按天扣费。

现有用户需要注意以下两个时间点:

  • 9 月 1 日 :短信余额合并至账户余额,月付费模式取消,按天扣费开始执行。
  • 9 月 15 日 :自动余额检查开启。如果余额不足,服务将停止。请务必在此前确保账户中有足够余额。 如果由于公司财务流程而无法在此日期前完成充值的用户,请及时联系我们。

为了避免因为账户余额不足而影响到服务的连续性,我们在控制台中增加了可自定义的 账户余额报警功能 ,用户需要根据自己的情况设置合适的报警阈值并及时充值。

9 月 1 日以后,我们将继续向用户发送每月的账单和费用汇总,此账单仅供参考而无需支付(2016 年 8 月账单仍需支付)。前一日的费用明细可以通过 控制台 > 账务 > 交易历史 > 消费历史 来查询。

为让 LeanCloud 更好地服务用户并保持长期健康的发展,我们需要根据反馈不时地对产品进行调整。当需要进行这样用户可见的改变时,我们将尽力让老用户以最平滑的方式进行过渡。感谢大家对 LeanCloud 的长期支持!

LeanCloud 与腾讯合作推出腾讯云移动开发解决方案

LeanCloud-×-腾讯云

我们很高兴地宣布 LeanCloud 和腾讯云团队经过数月的共同努力与紧密合作,为腾讯云用户打造的 腾讯云移动开发解决方案 正式发布了。该解决方案能够显著地降低开发难度和成本,加快移动应用、智能硬件、智能家居、SaaS 服务等各类产品的开发进程,大大缩短产品的上市时间(time-to-market)。腾讯云移动开发解决方案提供了数据存储、云引擎、实时通信、推送通知、数据统计等诸多服务,每项服务均在腾讯云的基础设施之上由 LeanCloud 的技术提供。

使用更接近业务和应用层面的云服务来开发产品是大势所趋。随着 Apple 和 Google 分别在各自的生态圈大力推动 CloudKit 和 Firebase 的发展,AWS 也推出了 Lambda 和 API Gateway 等更高层的服务以顺应无服务器架构(Serverless Architecture)的发展趋势。LeanCloud 是这个领域起步最早的实践者之一,已经支撑了近十万个应用、网站、游戏和硬件产品,LeanCloud 美国节点正式发布仅仅数月,也已经为出海的中国科技公司带来了实际的价值和便利。越来越多的产品不再选择从服务器开始从零构建自己的线上能力,而是使用 LeanCloud 这样更贴近业务和场景的服务让产品尽快面市,并在快速迭代中拉开与竞争对手的距离。通过与腾讯云的合作,我们可以把 LeanCloud 的各项服务以及 LeanCloud 所代表的更高效的产品开发方式带给更多的用户。我们也期待在未来能够进一步与腾讯云在基础设施和网络资源方面开展合作,为用户提供更好的产品和服务。

腾讯云移动开发解决方案与 LeanCloud 保持基本一致的价格体系,服务于腾讯云用户体系,并使用腾讯云的账号和财务系统。LeanCloud 主站将不受这次合作影响,所有账号、应用和数据都仅存放于 LeanCloud 的自有服务器。

我们理解此次合作可能会为 LeanCloud 的用户及关注者带来一些疑虑,因此有必要在此进行说明。LeanCloud 是一个中立、独立的云服务平台,与任何第三方的合作都以此为基础。LeanCloud 注重保护数据隐私和安全、维护用户利益的原则和价值观也被我们的合作伙伴和用户所认同。

LeanCloud 数据存储服务增加性能统计功能

为帮助用户更容易地掌握应用的存储负载量以及采取必要的性能优化措施,我们最近上线了存储 API 性能统计功能。现在您可以通过开发者后台的 存储 > API 统计 > API 性能 菜单查看到每日或指定期间内应用的最大并发数、每秒请求数 / QPS、所有请求的最大或平均响应时间等指标数据。

api-performance

这些指标的含义如下:

  • 最大并发数
    并发数是指服务器同时在处理的请求数。一天的最大并发数就是一天里同时在处理的请求数的最大值。
  • 最大 QPS
    QPS 是指 query per second,也就是每秒请求数。这是一天里每秒请求数的最大值。
  • 最大响应时间
    一个请求的响应时间是服务器从收到这个请求到完成处理并发回结果的时间。一天的最大响应时间就是这一天里所有请求当中最耗时的一个请求所对应的时间。
  • 平均响应时间
    一天里所有请求的响应时间的平均值。
  • 80%、90%、95% 响应时间上限
    反映一天内响应时间的分布。将一天内的请求按照响应时间从小到大排序,截取前 x% 的请求,其最大响应时间就是 x% 响应时间上限。如果 95% 响应时间上限是 20ms,意味着当天有 95% 的请求响应时间是低于 20 毫秒的。对大多数应用而言,在一天当中难免出现少数比较慢的请求,这些数字排除了少数异常情况,对衡量真实的用户体验往往比最大响应时间更有参考价值。

继续阅读

LeanCloud Update: 提高稳定性、改进计费方式、支持专属/私有集群

LeanCloud 近期经历了比以往更频繁的稳定性方面的事故,其中有的是因为我们容量规划上的不足导致服务收到异常流量影响,有的是对我们上游服务商的域名攻击,有的是针对 LeanCloud 的 DDoS 攻击。LeanCloud 一直将服务的稳定性视为生命线,每次事故之后,都会严肃地总结并明确改进方案。我们也会把事故报告发布到博客上,确保用户们知晓事故原因和过程,以及后续我们要执行的改进措施。

为让用户了解我们为此所做出的努力,我们想向大家通报一下在改进措施方面的进展。

已经完成的改进措施有:

  • 为应对将来可能出现的上游服务商域名被攻击的情况,实现更灵活的域名动态切换,以便在必要时及时切换至其他域名,保证云服务对外服务的可用。
  • 完善应对 DDoS 攻击的策略和措施,把受攻击后恢复服务的时间缩短到分钟级。
  • 事故公告流程增加了短信通知渠道,确保开发者及时收到信息。(我们在最近的 DDoS 攻击的几十分钟内一共给所有用户发送了三次短信及时更新进展)。

正在进行的措施有:

  • 增加新的监控措施,对前端网络入包量进行监控,防止网络转发量超过 VM 能力限制。
  • 调整前端 VM 配置,使用高包量机型,增大处理能力。
  • 改进前端服务器扩容方式,使用 docker 镜像来加快新节点部署上线的进度。
  • API 服务对外增加多路备选域名,降低针对域名的攻击造成的影响。

除了技术上的改进外,我们也对计费方式中的不合理之处进行了重新思考。过去我们的存储和实时消息服务都是按照一个月的总使用量来计费的,这样造成了一些问题。比如如果一个应用在一个月里发生了 10 亿次 API 调用,我们并不区分这些调用是平均分布在整个月,还是集中在少数几天。而这两种情况对容量规划的要求是非常不同的,如果不做区分,就容易造成资源上的分配不及时,给运维工作造成风险和压力。另外由于存储和实时消息是按月后付费,LeanEngine、LeanCache、短信是实时扣费,不同的计费周期和方式给很多用户造成了财务流程上的困扰。所以我们将把所有服务调整为一致的 实时扣费的模式 ,并且存储和实时消息服务将调整为按每天用户设定的容量上限收费,其中数据存储的计费依据将是并发请求数的上限,实时消息服务的计费依据将是当日使用服务的用户数上限。这样用户可以自己调整预留的资源,确保满足需求。由于计费周期缩短到天,也能满足只在特定日期有超高流量的应用兼顾较低的预算和充足的资源。

具体的方案和数字我们还在制定,会在第一时间与用户沟通。同时我们也会确保老用户有平滑的过渡体验。

针对由于受企业和政府政策限制对数据的物理位置或服务性能有特殊要求的用户,我们开始 提供专属集群和私有集群的方案 ,让用户可以拥有独享的 LeanCloud 服务集群。这样的服务也适用于为了优化目标用户的体验,希望把服务部署在特定机房的客户。例如有的应用为了兼顾国内外用户的体验,可能会选择香港有较好大陆线路的机房。如果您有这方面的需求,可以发邮件至 support@leancloud.cn 进行咨询。

LeanCloud 平台致力于为自身建立健康、可持续的发展模式,为客户提供稳定、可靠、中立的服务。感谢您对 LeanCloud 的长期支持。我们一直在不断努力,以不辜负用户对我们的信任。