自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

搜狗又有兩大開源力作!你一個(gè)也不知道?

新聞
搜狗公司C++服務(wù)器引擎,支撐搜狗幾乎所有后端C++在線服務(wù),包括所有搜索服務(wù),云輸入法,在線廣告等,每日處理超百億請(qǐng)求。這是一個(gè)設(shè)計(jì)輕盈優(yōu)雅的企業(yè)級(jí)程序引擎,可以滿足大多數(shù)C++后端開發(fā)需求。

 前不久,搜狗正式宣布開源了一個(gè)C++服務(wù)器引擎——workflow。

搜狗公司C++服務(wù)器引擎,支撐搜狗幾乎所有后端C++在線服務(wù),包括所有搜索服務(wù),云輸入法,在線廣告等,每日處理超百億請(qǐng)求。這是一個(gè)設(shè)計(jì)輕盈優(yōu)雅的企業(yè)級(jí)程序引擎,可以滿足大多數(shù)C++后端開發(fā)需求。

目前,Workflow在Github上標(biāo)星2.8K,累計(jì)分支560(Github地址:https://github.com/sogou/workflow)

Sogou C++ Workflow在設(shè)計(jì)之初,就秉持著高性能與輕量級(jí)兩個(gè)核心理念。長(zhǎng)久以來,業(yè)界中優(yōu)化服務(wù)器性能都主要專注于如何跑滿cpu、如何單獨(dú)地讓網(wǎng)絡(luò)請(qǐng)求極速響應(yīng)等方面。而此次上線的搜狗Workflow則更專注于如何讓各種網(wǎng)絡(luò)資源被具體的調(diào)度器管理,使其盡可能地全部調(diào)度起來。

另一方面,對(duì)多通信計(jì)算資源融為一體的解決方案,進(jìn)一步提升了Workflow引擎的性能。

此項(xiàng)目最大的亮點(diǎn)可能是創(chuàng)新性引入了任務(wù)流的概念,Sogou C++ Workflow將資源高度封裝,用戶再也接觸不到連接池、線程池,包括想要做 aio 時(shí)的文件 fd與各種異步通知機(jī)制。這就意味著,在開發(fā)階段開發(fā)人員僅僅需要了解業(yè)務(wù)關(guān)系而不用關(guān)心內(nèi)部細(xì)節(jié),幫助開發(fā)者們實(shí)現(xiàn)自己復(fù)雜的業(yè)務(wù)邏輯。

功能特性

你可以將Workflow用于快速搭建http服務(wù)器:

  1. #include <stdio.h> 
  2. #include "workflow/WFHttpServer.h" 
  3.  
  4. int main() 
  5.     WFHttpServer server([](WFHttpTask *task) { 
  6.         task->get_resp()->append_output_body("<html>Hello World!</html>"); 
  7.     }); 
  8.  
  9.     if (server.start(8888) == 0) {  // start server on port 8888 
  10.         getchar(); // press "Enter" to end. 
  11.         server.stop(); 
  12.     } 
  13.  
  14.     return 0
  • 作為萬能異步客戶端。目前支持http,redis,mysql和kafka協(xié)議。
  • 實(shí)現(xiàn)自定義協(xié)議client/server,構(gòu)建自己的RPC系統(tǒng)。srpc就是以它為基礎(chǔ),作為獨(dú)立項(xiàng)目開源。支持srpc,brpc和thrift等協(xié)議。
  • 構(gòu)建異步任務(wù)流,支持常用的串并聯(lián),也支持更加復(fù)雜的DAG結(jié)構(gòu)。
  • 作為并行編程工具使用。除了網(wǎng)絡(luò)任務(wù),我們也包含計(jì)算任務(wù)的調(diào)度。所有類型的任務(wù)都可以放入同一個(gè)流中。
  • 在Linux系統(tǒng)下作為文件異步IO工具使用,性能超過任何標(biāo)準(zhǔn)調(diào)用。磁盤IO也是一種任務(wù)。
  • 實(shí)現(xiàn)任何計(jì)算與通訊關(guān)系非常復(fù)雜的高性能高并發(fā)的后端服務(wù)。
  • 構(gòu)建服務(wù)網(wǎng)格(service mesh)系統(tǒng)。項(xiàng)目?jī)?nèi)置服務(wù)治理與負(fù)載均衡等功能。

在Github上,搜狗還貼心給出了大量的workflow示例,具體如下:

 

 

此外,開源workflow幾個(gè)月后,,搜狗又宣布開源workflow的生態(tài)項(xiàng)目——srpc,這是一個(gè)基于workflow 打造的輕量級(jí)RPC框架。

srpc內(nèi)部實(shí)現(xiàn)層次精巧,非常注重縱向?qū)哟尾鸱趾蜋M向解耦。其中壓縮層、序列化層、協(xié)議層是互相解耦的,利用函數(shù)重載、派生子類實(shí)現(xiàn)父類接口和模版特化等多種多態(tài)方式,來實(shí)現(xiàn)內(nèi)部使用同一套代碼的高度復(fù)用。后續(xù)架構(gòu)升級(jí)或者用戶進(jìn)行二次開發(fā),無論是中間再加一層、還是某層內(nèi)橫向添加一種內(nèi)容,都不需要改動(dòng)現(xiàn)有的代碼,十分方便。(Github地址:https://github.com/sogou/srpc)

搜狗方面表示,目前,srpc已在搜狗搜索和搜狐集團(tuán)團(tuán)隊(duì)中多個(gè)線上業(yè)務(wù)中穩(wěn)定使用了一段時(shí)間。由于接口簡(jiǎn)介易上手,且直接打通workflow的任務(wù)流、計(jì)算調(diào)度、服務(wù)治理等功能,其對(duì)開發(fā)效率有了非常大的提升。

不知道你對(duì)搜狗這兩大開源神器感興趣么?

 

責(zé)任編輯:張燕妮 來源: 開源中國(guó)
相關(guān)推薦

2019-08-09 14:20:46

微信軟件手機(jī)

2011-04-01 09:49:54

Python

2014-01-22 16:19:06

游戲圈游戲創(chuàng)業(yè)移動(dòng)游戲

2020-06-12 09:20:33

前端Blob字符串

2020-07-28 08:26:34

WebSocket瀏覽器

2018-11-25 10:08:44

阿里巴巴技術(shù)開源

2019-11-29 16:49:42

HTML語言開發(fā)

2023-12-21 14:40:09

Python編程語言

2024-05-20 09:27:00

Web 開發(fā)CSS

2020-09-07 06:59:44

Kafka分布式場(chǎng)景

2018-06-06 00:06:48

開源存儲(chǔ)存儲(chǔ)軟件存儲(chǔ)

2020-04-27 10:34:23

HTTPDNSDNS網(wǎng)絡(luò)協(xié)議

2011-09-15 17:10:41

2022-10-13 11:48:37

Web共享機(jī)制操作系統(tǒng)

2009-12-10 09:37:43

2021-02-01 23:23:39

FiddlerCharlesWeb

2010-08-23 09:56:09

Java性能監(jiān)控

2009-04-14 21:38:05

LinuxUbuntu技巧

2023-07-07 14:47:46

JavaScript技巧

2020-12-14 07:51:16

JS 技巧虛值
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)