搜狗服务器引擎Workflow(搜狗Workflow)是一个C++并行计算与异步网络引擎。

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

功能特点:

你可以用来:

1、快速搭建http服务器:

#include

#include "workflow/WFHttpServer.h"

int main()

{

WFHttpServer server([](WFHttpTask *task) {

task->get_resp()->append_output_body("Hello World!");

});

if (server.start(8888) == 0) { // start server on port 8888

getchar(); // press "Enter" to end.

server.stop();

}

return 0;

}

2、作为万能异步客户端。目前支持http,redis,mysql和kafka协议。

轻松构建效率极高的spider。

3、实现自定义协议client/server,构建自己的RPC系统。

srpc就是以它为基础,作为独立项目开源。支持srpc,brpc,trpc和thrift等协议。

4、构建异步任务流,支持常用的串并联,也支持更加复杂的DAG结构。

5、作为并行计算工具使用。除了网络任务,我们也包含计算任务的调度。所有类型的任务都可以放入同一个流中。

6、在Linux系统下作为文件异步IO工具使用,性能超过任何标准调用。磁盘IO也是一种任务。

7、实现任何计算与通讯关系非常复杂的高性能高并发的后端服务。

8、构建微服务系统。

项目内置服务治理与负载均衡等功能。

编译和运行环境:

1、项目支持Linux,macOS,Windows,Android等操作系统。

Windows版以windows分支发布,使用iocp实现异步网络。用户接口与Linux版一致。

2、支持所有CPU平台,包括32或64位x86处理器,大端或小端arm处理器,国产loongson龙芯处理器实测支持。

3、需要依赖于OpenSSL,推荐OpenSSL 1.1及以上版本。

不喜欢SSL的用户可以使用nossl分支,代码更简洁。但仍需链接crypto。

4、项目使用了C++11标准,需要用支持C++11的编译器编译。但不依赖boost或asio。

5、项目无其它依赖。如需使用kafka协议,需自行安装lz4,zstd和snappy几个压缩库。

  • Workflow 引擎 服务器 搜狗

下载地址

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。