ps lite本地模式使用簡介

2021-07-10 14:52:44 字數 1592 閱讀 4699

ps-lite是dmlc的子模組,下面介紹其簡單使用。

**:下面的**是簡單的實現worker向server push資料,在server上註冊乙個事件函式,對推送到server上的資料進行累加,然後worker在從server上pull回資料

#include "ps/ps.h"

#include

#include

#include

#include

using

namespace

std;

using

namespace ps;

template

struct kvserverdefaulthandle1 else

for (size_t i = 0; i < n; ++i) else

}server->response(req_meta, res);

}std::unordered_map

store;

};void startserver() );

}void runworker()

// push

int repeat = 1;

std::vector

ts;

for (int i = 0; i < repeat; ++i)

for (int t : ts) kv.wait(t);

// pull

std::vector

rets;

kv.wait(kv.pull(keys, &rets));

for(size_t i = 0; i < rets.size(); i++)

int main(int argc, char *argv)

#!/bin/bash

# set -x

if [ $#

-lt3 ]; then

echo

"usage: $0 num_servers num_workers bin [args..]"

exit -1;

fiexport dmlc_num_server=$1

shift

export dmlc_num_worker=$1

shift

bin=$1

shift

arg="$@"

# start the scheduler

export dmlc_ps_root_uri='127.0.0.1'

export dmlc_ps_root_port=8000

export dmlc_role='scheduler'

$$ &

# start servers

export dmlc_role='server'

for ((i=0; i<$; ++i)); do

$1 &

done

# start workers

export dmlc_role='worker'

for ((i=0; i<$; ++i)); do

$2 &

done

wait

Twitter Storm 本地模式簡介

發表於 由 本文翻譯自 這篇文章主要介紹storm的兩種操作方式之一 本地模式。要建立乙個程序內 集群 使用localcluster物件就可以了 12 3 importbacktype.storm.localcluster localcluster cluster newlocalcluster 然...

設計模式 策略模式(簡介和使用)

策略模式是一種定義了一系列演算法的方法,所有這些演算法完成的都是相同的工作,只是實現不同,它可以以相同的方式呼叫所有的演算法,減少了各種演算法類與使用演算法的類之間的耦合.簡單來說,策略模式就是將每個演算法都封裝起來,使他們之間可以互換.舉個例子,比如商場的不同優惠活動,有滿100返20 滿300返...

hive本地模式

看hive資料會看到hive本地模式這個介紹,下面是查詢網上資料後的一些整理 大多數的hadoop job是需要hadoop集群來處理大資料的,不過,有時hive的輸入資料量是非常小的。在這種情況下,為查詢執行任務的時間消耗可能會比實際job的執行時間要多的多,因此hive0.7版本後hive開始支...