19 април, 2024

Джонатан Ишмаел, водещ технически архитект в BBC, обясни в блог публикация защо BBC Online функционира безсървърно и как бива оптимизирано. Ключът се крие в AWS Lambda за повечето от core имплементациите, поради способността му да скалира изключително бързо. Това е от съществено значение предвид огромния трафик и натоварванията в медията.

Например по време на изборите в САЩ уебсайтът на BBC News получава посещения от над 165 милиона уникални браузъра от цял ​​свят.

По време на изборната седмица стекът на Web Core беше средно с 80 000 заявки в минута, достигайки 120 000 към нашата платформа. Тези рекуести са същите, които преминават през лейърите за трафик мениджмънт (кешове) пред очите ни. Така, в своя пик, нашите ръководители на трафик и CDN виждаха 2,5 милиона показвания на страници в минута (около 41 000 заявки в секунда),” пише Ишмаел.

Инженерите на BBC използват безсървърни решения за две високо интензивни CPU области на приложението, които изискват непредсказуемо скалиране. Първото е приложението React, което рендва HTML от страната на сървъра, а „второто е бизнес логическият лейър, който трансформира данните от много различни BBC системи в общ модел на данни“. Те изпълняват над 100 милиона безсървърни извиквания на функции на ден.

Източник: https://medium.com/bbc-design-engineering/delivering-bbc-online-using-serverless-79d4a9b0da16

Източник: https://medium.com/bbc-design-engineering/optimising-serverless-for-bbc-online-118fe2c04beb

Кеширането се извършва между Lambda лейърите, за да се намалят верижните функции, в които една Lambda се обръща към друга и след това изчаква тя да приключи. Тази верига води до допълнителни разходи, тъй като различните Lambda се таксуват пропорционално на времето за изпълнение, дори когато са на празен ход. Друга причина е позволяването на бекенд безсървърната функция да опреснява кеша в бекграунда, без да се налага потребителската заявка да я чака.

Като пример, нека вземем актуалната новина около атаката на Лондонския мост през ноември 2019 г. Трафик профила в кеша за тази страница доведе до 3 пъти увеличение на трафика за една минута (4k req / s до 12k req / s) последвано от почти удвояване на трафика няколко минути по-късно (12k req / s до 20k req / s)Тези ключови моменти са критични за BBC и са тези, в които публиката се обръща към нас. Не трябва да се проваляме. Всяка технология, която изберем, трябва да може да реагира на тези модели на трафик.

Целият блог пост на Ишмаел можете да прочетете ТУК.

Тагове: , , , , , , , , , , , , , , , ,
Author