Facebook в субботу выпустила в субботу библиотеку компонентов C++, используемую самой сетью для работы некоторых частей ее инфраструктуры. Выпустив библиотеку под названием Folly, компания продолжила открывать исходные коды собственных технологий. В отношении Folly, Facebook заявляет, что этот библиотека является своего рода связующим звеном для работы внутренних программ Facebook.
Джордан Делонг, инженер по программному обеспечению Facebook, говорит, что Folly есть некоторые узкие места, которые компания надеется устранить при помощи сторонних программистов, предоставив им в обмен ответное право на использование Folly. Кроме того, библиотека в ее нынешнем виде слишком тесно привязана ко внутренним компонентами крупнейшей социальной сети, опубликовав ее в открытом доступе, разработчики надеются сделать библиотеку более универсальной.
Как известно, для работы собственной инфраструктуры сама Facebook полагается на открытые продукты, такие как Linux, MySQL, PHP и Memcached, кроме того, компания сама написала PHP-копилятор HipHop, помогающий PHP-кодам работать быстрее. Делонг говорит, что хотя для работы основной части ИТ-инфраструктуры компания и применяет стандартные открытые программы, их вся равно приходится тюнинговать под специфические нужды Facebook.
"Даже если сами разработчики и не планируют использовать приложения, созданные на Facebook, взглянуть на Folly все равно стоит, так как ее можно оптимизировать для других сред", - говорит Делонг. "Folly позволяет работать со многими интернет-ориентированными компонентами быстрее и эффективнее, чем ранее существавшие аналоги".;
Библиотека охватывает различные функциональные возможности. Один компонент оптимизирует потреблением памяти, другой снижает конкуренцию потоков за системные ресурсы. Встроенная утилита Atomic HashMap позволяет серверным системам быстрее освобождать блоки оперативной памяти, используемые под выполнение задач, кроме того здесь есть компоненты для манипуляции процессорными циклами, что редкость для библиотек C++.
Источник: CyberSecurity
|