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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Linghui Gong
July 26, 2017
Technology
330
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Strikingly网站集群架构纵览
本演讲将为各位介绍Strikingly如何基于AWS的服务和基础设施优化网站集群架构,为数以百万计的用户网站提供快速、安全、高可用的网站服务。
Linghui Gong
July 26, 2017
More Decks by Linghui Gong
See All by Linghui Gong
OpenResty在Strikingly网站集群中的应用
danielglh
0
210
打造国际化产品:Strikingly的I18n实践
danielglh
4
1.1k
基于AWS Lambda的无服务器架构在Strikingly中的应用
danielglh
0
430
Other Decks in Technology
See All in Technology
Oracle AI Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
6
1.5k
Microsoft Build Keynoteふりかえり
tomokusaba
0
120
ACE-Step-1.5で見る 音楽生成AIのしくみと“破綻だけ直す”Retake機能の開発【zennfes spring 2026 登壇資料】
personabb
1
130
AIのReact習熟度を測る
uhyo
1
120
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
0
240
Disciplined Vibes: Scaling AI-Assisted Engineering
sheharyar
0
130
失敗を経て、Harness Engineering で 大切にしたいことを考える / Learning from Failure: What Matters in Harness Engineering
bitkey
PRO
1
310
小さく始める AI 活用推進 ― 日経電子版 Web チームの事例/nikkei-tech-talk47
nikkei_engineer_recruiting
0
220
"何を作るか"を任される エンジニアは、どう育つのか
yutaokafuji
1
600
MIERUNE JCT 発表資料「宇宙から伊能忠敬ごっこ」
syuchimu
0
210
SIer20年! 培ったスキルがスタートアップで輝く時
shucho0103
0
840
Claude Code の Sandbox 機能を Anthropic Sandbox Runtime(srt) で試そう!/lets-play-anthropic-sandbox-runtime
tomoki10
1
540
Featured
See All Featured
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
270
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Navigating Algorithm Shifts & AI Overviews - #SMXNext
aleyda
1
1.3k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.3k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Ethics towards AI in product and experience design
skipperchong
2
310
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
65
56k
Odyssey Design
rkendrick25
PRO
2
690
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.5k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
2k
A brief & incomplete history of UX Design for the World Wide Web: 1989–2019
jct
2
390
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!