Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
© 2017, Amazon Web Services, Inc. or its Affiliates. All rights reserved. 龚凌晖,Strikingly首席架构师 肖凌,AWS解决方案架构师 2017.07.26 Strikingly网站集群架构纵览 支持数以百万计的快速、安全、高可用的网站
Slide 2
Slide 2 text
计算的演化 Amazon EC2 Amazon ECS Lambda Function
Slide 3
Slide 3 text
基于云端的无服务器架构 让用户集中于业务逻辑 服务器部署与利用率问题 可靠性与容错 扩展性 运维与管理
Slide 4
Slide 4 text
无服务架构的构建 AWS Lambda Amazon DynamoDB Amazon SNS Amazon API Gateway Amazon SQS Amazon Kinesis Amazon S3 编排与状态管理 API网关 消息与队列 分析 管理与监控 计算 存储 数据库 AWS X-Ray AWS Step Functions 无服务器架构的构件 Amazon Athena
Slide 5
Slide 5 text
关于 Strikingly
Slide 6
Slide 6 text
我们的产品 • 第一家从 Y Combinator 孵化的中 国初创企业 • 用户来自200多个国家和地区 • 支持各种尺寸的电脑和移动设备 • 支持6种语言的产品界面和客户服务 • https://www.sxl.cn/ • 2016年4月正式推出 • 主要针对中国大陆用户 • 本土化的产品特性 • 独立于Strikingly的品牌
Slide 7
Slide 7 text
如何创建一个网站?
Slide 8
Slide 8 text
No content
Slide 9
Slide 9 text
如何创建托管一个网站? 如何创建一个网站?
Slide 10
Slide 10 text
我们关心一个网站…… • 是否可以弹性扩展,快速响应? • 是否具备一定程度的高可用性? • 是否全球访问快速稳定? • 是否具备数据传输的安全性?
Slide 11
Slide 11 text
AWS解决方案 • EC2 + ELB + ASG • RDS + Multi-AZ Replication + S3 Backup • Cloudfront + AWS Certificate Manager
Slide 12
Slide 12 text
如何托管一个数百万个网站? 如何托管一个网站?
Slide 13
Slide 13 text
我们关心每个网站…… • 是否可以弹性扩展,快速响应? • 是否具备一定程度的高可用性? • 是否具备数据传输的安全性? • 是否全球访问快速稳定?
Slide 14
Slide 14 text
初始方案
Slide 15
Slide 15 text
JavaScript 模板 • 代码灵活,便于设计模板 • 网页编辑器和网页重用代码 • 客户端渲染开销大 • SEO不友好 网页模板设计 用户网页数据 用户网页 JavaScript 模板渲染引擎 用户网站渲染
Slide 16
Slide 16 text
服务端渲染技术 网页模板设计 用户网页数据 用户网页 JavaScript 模板渲染引擎 渲染结果 网站服务器集群
Slide 17
Slide 17 text
待解决的问题 • 服务端渲染依赖于 JS Runtime • JS Runtime 渲染过程极其消耗 CPU 资源
Slide 18
Slide 18 text
20% 100% 用户网站流量波动
Slide 19
Slide 19 text
Serverless!
Slide 20
Slide 20 text
AWS Lambda 基于事件驱动的无服务器计算服务
Slide 21
Slide 21 text
产品特性 无需管理服务器 事件驱动 自动扩展 精确计费 节约成本
Slide 22
Slide 22 text
如何开始使用AWS Lambda? 将代码包装为 Lambda函数 选择合适的 运行环境 将代码打包 上传到AWS 事件驱动触发 执行Lambda函数
Slide 23
Slide 23 text
解决方案
Slide 24
Slide 24 text
新的问题 • 服务端渲染比较耗时,响应时间不理想 • 用户发布网站之后修改不频繁,反复渲染浪费资源 • 后端服务无法响应时,所有用户网站完全不可用
Slide 25
Slide 25 text
Cache!
Slide 26
Slide 26 text
缓存管理 • 缓存所有静态页面 • 网站页面 • 博客文章页面 • 产品详情页面 • 缓存部分API请求 • 密码保护网站 • 细粒度缓存刷新机制
Slide 27
Slide 27 text
解决方案
Slide 28
Slide 28 text
为什么使用S3? 简单易用 高可用性 成本优势 集成服务
Slide 29
Slide 29 text
集成服务:CSS样式表预处理 • CSS定义了网页的样式 • CSS加载缓慢,阻塞网页渲染 • 预处理关键区域CSS样式 • 异步延迟加载所有CSS
Slide 30
Slide 30 text
解决方案
Slide 31
Slide 31 text
网站全球加速 • CDN • 边缘节点缓存静态页面 • 用户访问最优边缘节点 • 提升网站的响应速度
Slide 32
Slide 32 text
新的需求 • HTTPS • 安全数据传输 • 提升SEO价值 • 浏览器安全标志
Slide 33
Slide 33 text
新的问题 • CDN + HTTPS? • 大量的域名接入 • 大量的HTTPS证书管理 • 主流的CDN提供商不支持这个特殊的场景
Slide 34
Slide 34 text
DIY (with AWS) !
Slide 35
Slide 35 text
如何获得HTTPS证书?
Slide 36
Slide 36 text
No content
Slide 37
Slide 37 text
Let’s Encrypt • 免费的 CA(Certificate Authority) • 互联网安全研究组(ISRG)提供服务 • 标准 ACME API,提供自动化可能性 • 由 Mozilla,Akamai 等公司和机构支持
Slide 38
Slide 38 text
如何实现全球加速?
Slide 39
Slide 39 text
Amazon全球骨干网
Slide 40
Slide 40 text
Strikingly边缘节点 • 部署在世界各地的AWS区域 • 对终端访客提供HTTPS连接 • 提供定制的缓存机制 • 通过Amazon全球骨干网回源到主站 • 通过ECS部署边缘节点
Slide 41
Slide 41 text
如何引导访客访问最优节点?
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
No content
Slide 44
Slide 44 text
总结 • 基于 AWS 造轮子 • EC2 + ELB + ASG • RDS + Multi-AZ Replication + S3 Backup • API Gateway + Lambda • S3 + Lambda • ECS + Amazon Global Backbone • Route 53
Slide 45
Slide 45 text
我们在招聘! • 我们的团队:一支诞生于硅谷,扎根在中 国,快速成长的国际化创业团队 • 我们的成员:一群执着于产品,以技术和 设计为导向的年轻人 • 我们期待的:志同道合,乐观向上,保持 谦逊,不断突破,热爱创造价值的你
Slide 46
Slide 46 text
Thank you!