Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Strikingly网站集群架构纵览
Search
Linghui Gong
July 26, 2017
Technology
0
300
Strikingly网站集群架构纵览
本演讲将为各位介绍Strikingly如何基于AWS的服务和基础设施优化网站集群架构,为数以百万计的用户网站提供快速、安全、高可用的网站服务。
Linghui Gong
July 26, 2017
Tweet
Share
More Decks by Linghui Gong
See All by Linghui Gong
OpenResty在Strikingly网站集群中的应用
danielglh
0
200
打造国际化产品:Strikingly的I18n实践
danielglh
4
1k
基于AWS Lambda的无服务器架构在Strikingly中的应用
danielglh
0
400
Other Decks in Technology
See All in Technology
生成AI時代 文字コードを学ぶ意義を見出せるか?
hrsued
1
570
標準技術と独自システムで作る「つらくない」SaaS アカウント管理 / Effortless SaaS Account Management with Standard Technologies & Custom Systems
yuyatakeyama
3
1.3k
AWS テクニカルサポートとエンドカスタマーの中間地点から見えるより良いサポートの活用方法
kazzpapa3
2
550
HiMoR: Monocular Deformable Gaussian Reconstruction with Hierarchical Motion Representation
spatial_ai_network
0
110
プロダクトエンジニアリング組織への歩み、その現在地 / Our journey to becoming a product engineering organization
hiro_torii
0
130
生成AI時代の開発組織・技術・プロセス 〜 ログラスの挑戦と考察 〜
itohiro73
1
270
Wasm元年
askua
0
150
Observability infrastructure behind the trillion-messages scale Kafka platform
lycorptech_jp
PRO
0
140
BigQuery Remote FunctionでLooker Studioをインタラクティブ化
cuebic9bic
3
320
Liquid Glass革新とSwiftUI/UIKit進化
fumiyasac0921
0
230
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
230
PHP開発者のためのSOLID原則再入門 #phpcon / PHP Conference Japan 2025
shogogg
4
850
Featured
See All Featured
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.5k
Code Reviewing Like a Champion
maltzj
524
40k
Designing for Performance
lara
609
69k
Adopting Sorbet at Scale
ufuk
77
9.4k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
124
52k
Balancing Empowerment & Direction
lara
1
380
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
The Cost Of JavaScript in 2023
addyosmani
51
8.5k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Transcript
© 2017, Amazon Web Services, Inc. or its Affiliates. All
rights reserved. 龚凌晖,Strikingly首席架构师 肖凌,AWS解决方案架构师 2017.07.26 Strikingly网站集群架构纵览 支持数以百万计的快速、安全、高可用的网站
计算的演化 Amazon EC2 Amazon ECS Lambda Function
基于云端的无服务器架构 让用户集中于业务逻辑 服务器部署与利用率问题 可靠性与容错 扩展性 运维与管理
无服务架构的构建 AWS Lambda Amazon DynamoDB Amazon SNS Amazon API Gateway
Amazon SQS Amazon Kinesis Amazon S3 编排与状态管理 API网关 消息与队列 分析 管理与监控 计算 存储 数据库 AWS X-Ray AWS Step Functions 无服务器架构的构件 Amazon Athena
关于 Strikingly
我们的产品 • 第一家从 Y Combinator 孵化的中 国初创企业 • 用户来自200多个国家和地区 •
支持各种尺寸的电脑和移动设备 • 支持6种语言的产品界面和客户服务 • https://www.sxl.cn/ • 2016年4月正式推出 • 主要针对中国大陆用户 • 本土化的产品特性 • 独立于Strikingly的品牌
如何创建一个网站?
None
如何创建托管一个网站? 如何创建一个网站?
我们关心一个网站…… • 是否可以弹性扩展,快速响应? • 是否具备一定程度的高可用性? • 是否全球访问快速稳定? • 是否具备数据传输的安全性?
AWS解决方案 • EC2 + ELB + ASG • RDS +
Multi-AZ Replication + S3 Backup • Cloudfront + AWS Certificate Manager
如何托管一个数百万个网站? 如何托管一个网站?
我们关心每个网站…… • 是否可以弹性扩展,快速响应? • 是否具备一定程度的高可用性? • 是否具备数据传输的安全性? • 是否全球访问快速稳定?
初始方案
JavaScript 模板 • 代码灵活,便于设计模板 • 网页编辑器和网页重用代码 • 客户端渲染开销大 • SEO不友好
网页模板设计 用户网页数据 用户网页 JavaScript 模板渲染引擎 用户网站渲染
服务端渲染技术 网页模板设计 用户网页数据 用户网页 JavaScript 模板渲染引擎 渲染结果 网站服务器集群
待解决的问题 • 服务端渲染依赖于 JS Runtime • JS Runtime 渲染过程极其消耗 CPU
资源
20% 100% 用户网站流量波动
Serverless!
AWS Lambda 基于事件驱动的无服务器计算服务
产品特性 无需管理服务器 事件驱动 自动扩展 精确计费 节约成本
如何开始使用AWS Lambda? 将代码包装为 Lambda函数 选择合适的 运行环境 将代码打包 上传到AWS 事件驱动触发 执行Lambda函数
解决方案
新的问题 • 服务端渲染比较耗时,响应时间不理想 • 用户发布网站之后修改不频繁,反复渲染浪费资源 • 后端服务无法响应时,所有用户网站完全不可用
Cache!
缓存管理 • 缓存所有静态页面 • 网站页面 • 博客文章页面 • 产品详情页面 •
缓存部分API请求 • 密码保护网站 • 细粒度缓存刷新机制
解决方案
为什么使用S3? 简单易用 高可用性 成本优势 集成服务
集成服务:CSS样式表预处理 • CSS定义了网页的样式 • CSS加载缓慢,阻塞网页渲染 • 预处理关键区域CSS样式 • 异步延迟加载所有CSS
解决方案
网站全球加速 • CDN • 边缘节点缓存静态页面 • 用户访问最优边缘节点 • 提升网站的响应速度
新的需求 • HTTPS • 安全数据传输 • 提升SEO价值 • 浏览器安全标志
新的问题 • CDN + HTTPS? • 大量的域名接入 • 大量的HTTPS证书管理 •
主流的CDN提供商不支持这个特殊的场景
DIY (with AWS) !
如何获得HTTPS证书?
None
Let’s Encrypt • 免费的 CA(Certificate Authority) • 互联网安全研究组(ISRG)提供服务 • 标准
ACME API,提供自动化可能性 • 由 Mozilla,Akamai 等公司和机构支持
如何实现全球加速?
Amazon全球骨干网
Strikingly边缘节点 • 部署在世界各地的AWS区域 • 对终端访客提供HTTPS连接 • 提供定制的缓存机制 • 通过Amazon全球骨干网回源到主站 •
通过ECS部署边缘节点
如何引导访客访问最优节点?
None
None
总结 • 基于 AWS 造轮子 • EC2 + ELB +
ASG • RDS + Multi-AZ Replication + S3 Backup • API Gateway + Lambda • S3 + Lambda • ECS + Amazon Global Backbone • Route 53
我们在招聘! • 我们的团队:一支诞生于硅谷,扎根在中 国,快速成长的国际化创业团队 • 我们的成员:一群执着于产品,以技术和 设计为导向的年轻人 • 我们期待的:志同道合,乐观向上,保持 谦逊,不断突破,热爱创造价值的你
Thank you!