BBC切换到Serverless支持的新网站架构 - Register

解道jdon 2020-11-07 20:12:23
Serverless 切换 支持 bbc 换到


BC网站是英国第六大最受欢迎的网站,大目前部分已经迁移到了Amazon Web Services(AWS),现在约有一半的网站是使用无服务器平台AWS Lambda呈现的。

BBC网站的大部分内容都是用PHP编写的,之前是托管在伦敦附近的两个数据中心,PHP其实也可在云中正常运行,迁移到云环境不是繁琐的事情,但是,BBC团队还是设计了一种基于无服务器计算的新架构。

Web流量最初会命中全球流量管理器(GTM),这是一种基于Nginx Web服务器的内部解决方案,其部分运行在本地(表明BBC并未完全放弃其数据中心),部分运行在AWS上。GTM“每秒处理数万个请求”。在访问AWS Lambda上运行的函数之前,AWS的第二层处理缓存和路由,这些功能使用JavaScript框架React来执行动态内容的服务器端呈现(SSR)。

服务器端渲染意味着浏览器无需进行大量工作就可以立即查看页面,因此页面应立即显示,尽管这会增加服务器的负担,但是,缓存可以缓解这种情况。工程师Alex Grigoryan负责向SSR的迁移,他测试了SSR与客户端渲染(CSR),并说:“当我们对SSR与CSR进行A / B测试时……我们的数据显示会尽早呈现”,尽管他指出服务器负载增加是SSR主要缺点。

使用Lambda能够按需自动缩放。每秒大约有2,000个lambda运行以创建BBC网站,Lambda的伸缩性比AWS Elastic Compute Cloud(EC2)上的VM更好,访问流量可能会立即上升; Lambda可以用EC2自动伸缩无法做到的方式来处理此问题。

 Lambda对于处理网站内容更新至关重要,这样网站就能保持最新状态。每个BBC页面通常都包含多个简单的Lambda执行,其中大多数在150毫秒内完成。

BBC网站的另一方面是请求内容的逻辑,Clark称之为“业务层”。内容是通过REST API提供给Web渲染层的,而一种称为快速不可知业务层的解决方案可以做到:允许不同的团队创建自己的业务逻辑。在满足相同要求的同时仍可以共享相同的系统如访问控制和缓存。

WebCore平台使用CI / CD来实现快速迭代,每天大约3个版本。构建大约需要3.5分钟,从拉取请求(合并新代码时)到在生产环境中运行它的平均时间为一天23分钟。

有人认为:在Lambda上运行一个BBC大小的站点绝对是浪费了政府补贴的预算,这绝对是疯狂的。与常规计算相比,Lambda VM时间有很大的增加。

 

    

版权声明
本文为[解道jdon]所创,转载请带上原文链接,感谢
https://www.jdon.com/55270

  1. [front end -- JavaScript] knowledge point (IV) -- memory leakage in the project (I)
  2. This mechanism in JS
  3. Vue 3.0 source code learning 1 --- rendering process of components
  4. Learning the realization of canvas and simple drawing
  5. gin里获取http请求过来的参数
  6. vue3的新特性
  7. Get the parameters from HTTP request in gin
  8. New features of vue3
  9. vue-cli 引入腾讯地图(最新 api,rocketmq原理面试
  10. Vue 学习笔记(3,免费Java高级工程师学习资源
  11. Vue 学习笔记(2,Java编程视频教程
  12. Vue cli introduces Tencent maps (the latest API, rocketmq)
  13. Vue learning notes (3, free Java senior engineer learning resources)
  14. Vue learning notes (2, Java programming video tutorial)
  15. 【Vue】—props属性
  16. 【Vue】—创建组件
  17. [Vue] - props attribute
  18. [Vue] - create component
  19. 浅谈vue响应式原理及发布订阅模式和观察者模式
  20. On Vue responsive principle, publish subscribe mode and observer mode
  21. 浅谈vue响应式原理及发布订阅模式和观察者模式
  22. On Vue responsive principle, publish subscribe mode and observer mode
  23. Xiaobai can understand it. It only takes 4 steps to solve the problem of Vue keep alive cache component
  24. Publish, subscribe and observer of design patterns
  25. Summary of common content added in ES6 + (II)
  26. No.8 Vue element admin learning (III) vuex learning and login method analysis
  27. Write a mini webpack project construction tool
  28. Shopping cart (front-end static page preparation)
  29. Introduction to the fluent platform
  30. Webpack5 cache
  31. The difference between drop-down box select option and datalist
  32. CSS review (III)
  33. Node.js学习笔记【七】
  34. Node.js learning notes [VII]
  35. Vue Router根据后台数据加载不同的组件(思考->实现->不止于实现)
  36. Vue router loads different components according to background data (thinking - & gt; Implementation - & gt; (more than implementation)
  37. 【JQuery框架,Java编程教程视频下载
  38. [jQuery framework, Java programming tutorial video download
  39. Vue Router根据后台数据加载不同的组件(思考->实现->不止于实现)
  40. Vue router loads different components according to background data (thinking - & gt; Implementation - & gt; (more than implementation)
  41. 【Vue,阿里P8大佬亲自教你
  42. 【Vue基础知识总结 5,字节跳动算法工程师面试经验
  43. [Vue, Ali P8 teaches you personally
  44. [Vue basic knowledge summary 5. Interview experience of byte beating Algorithm Engineer
  45. 【问题记录】- 谷歌浏览器 Html生成PDF
  46. [problem record] - PDF generated by Google browser HTML
  47. 【问题记录】- 谷歌浏览器 Html生成PDF
  48. [problem record] - PDF generated by Google browser HTML
  49. 【JavaScript】查漏补缺 —数组中reduce()方法
  50. [JavaScript] leak checking and defect filling - reduce() method in array
  51. 【重识 HTML (3),350道Java面试真题分享
  52. 【重识 HTML (2),Java并发编程必会的多线程你竟然还不会
  53. 【重识 HTML (1),二本Java小菜鸟4面字节跳动被秒成渣渣
  54. [re recognize HTML (3) and share 350 real Java interview questions
  55. [re recognize HTML (2). Multithreading is a must for Java Concurrent Programming. How dare you not
  56. [re recognize HTML (1), two Java rookies' 4-sided bytes beat and become slag in seconds
  57. 【重识 HTML ,nginx面试题阿里
  58. 【重识 HTML (4),ELK原来这么简单
  59. [re recognize HTML, nginx interview questions]
  60. [re recognize HTML (4). Elk is so simple