搜狗重磅开源的又一力作:一个服务器引擎

Posted 非著名程序员

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了搜狗重磅开源的又一力作:一个服务器引擎相关的知识,希望对你有一定的参考价值。

【公众号回复 “1024”,免费领取程序员赚钱实操经验】

大家伙,我是章鱼猫。

今天给大家推荐的这个开源项目是来自于读者的投稿,是搜狗团队的一个开源项目,开源不到一年,就已经收获了 4.5 k 的star 了。

这个开源项目就是:Workflow

Workflow 是新一代基于任务流模型的C++异步调度编程范式,性能优异、生态丰富、通讯计算融为一体,解决了C++下异步开发的多个难点,目前已经是搜狗公司级C++标准,应用于搜狗大多数C++后端服务。

搜狗公司 C++ 服务器引擎,支撑搜狗几乎所有后端 C++ 在线服务,包括所有搜索服务,云输入法,在线广告等,每日处理超百亿请求。这是一个设计轻盈优雅的企业级程序引擎,可以满足大多数 C++ 后端开发需求。

主要特点:

  • 简单易上手,无依赖(适合初学者)

  • 性能和稳定性优异

  • 丰富的通用协议实现:HTTP、Redis、mysql、Kafka、WebSocket等

  • 统一计算、网络、文件IO等异步资源

  • 任务流管理(串行、并行、DAG)

  • 一致的解决方案形成一套完备的编程范式

可以用它快速搭建一个 Http 服务器,我们以实际代码说话,如何用 C++ 写一个简单的HttpServer

#include <stdio.h>
#include "workflow/WFHttpServer.h"

int main()
{
    WFHttpServer server([](WFHttpTask *task) {
        task->get_resp()->append_output_body("<html>Hello World!</html>");
    });

    if (server.start(8888) == 0) { // start server on port 8888
        getchar(); // press "Enter" to end.
        server.stop();
    }

    return 0;
}

它还有啥特点和功能呢?

Workflow的世界中:程序=协议+算法+任务流,其中最大的创新点就在于任务流,不同异步资源都可以被组装起来:

高吞吐、低成本、开发快,并且轻松达到几十万QPS!以下与nginxbrpc在固定数据长度下的QPS与并发度对比中,Workflow都有明显的优势:

开源项目地址:https://github.com/sogou/workflow

开源项目组织:搜狗架构团队

最近,章鱼猫建了一个「GitHub 精选交流群」,欢迎大家一起交流优秀开源项目,也可以宣传自己的开源项目,在 「GitHub 精选」公众号后台回复【加群】邀请你入群。

---特别推荐---

特别推荐:一个新的优质的专注分享各种浏览器插件、黑科技教程、各种你想不到的高效率软件及工具的公众号,「黑科技指北」,非常值得大家关注。点击下方公众号卡片,直接关注

以上是关于搜狗重磅开源的又一力作:一个服务器引擎的主要内容,如果未能解决你的问题,请参考以下文章

yyds! 开源软件杰出贡献人物魏永明的又一力作

Spring Cloud Tencent来自国内的又一巨头力作

重磅!微软在 GitHub 又一开源力作面世,代号「女娲」!

基于 vue-element-admin 升级的 Vue3 +TS +Element-Plus 版本的从0到1构建说明,有来开源组织又一精心开源力作

搜狗,年度优秀开源项目!

冰河又一MySQL力作出版(文末送书)!!