Flare是广泛投产于腾讯广告后台的现代化C++开发框架,包含了基础库、RPC、各种客户端等。主要特点为易用性强、长尾延迟低。
Flare是腾讯吸收先前服务框架和业界开源项目及最新研究成果开发的现代化的后台服务开发框架,旨在提供针对目前主流软硬件环境下的易用、高性能、平稳的服务开发能力。
Flare项目开始于2019年,目前广泛应用于腾讯广告的众多后台服务,拥有数以万计的运行实例,在实际生产系统上经受了足够的考验。于2021年5月开源。
特点现代C++设计风格,广泛采用了C++11/14/17/2a的新的语法特性和标准库提供了 M:N的线程模型的微线程实现Fiber,方便业务开发人员以便利的同步调用语法编写高性能的异步调用代码支持基于消息的流式RPC支持除了RPC外,还提供了一系列便利的基础库,比如字符串、时间日期、编码处理、压缩、加密解密、配置、HTTP客户端等,方便快速上手开发业务代码提供了灵活的扩充机制。方便支持多种协议、服务发现、负载均衡、监控告警、调用追踪等针对现代体系结构做了大量的优化。比如 NUMA感知的调度组和对象池、零拷贝缓冲区等高质量的代码。严格遵守 GoogleC++代码规范,测试覆盖率达80%完善的文档和示例以及调试支持,方便快速上手系统要求Linux3.10或以上内核,暂不支持其他操作系统x86-64处理器,也支持aarch64及ppc64le,但是未在生产环境上实际使用过GCC8或以上版本的编译器
评论