All Projects → XiaoMi → pegasus-java-client

XiaoMi / pegasus-java-client

Licence: Apache-2.0 License
The official Java client for Pegasus

Programming Languages

java
68154 projects - #9 most used programming language

Labels

Projects that are alternatives of or similar to pegasus-java-client

Horus-Eye
Just Simple Code To Play With Android Payloads (;
Stars: ✭ 54 (+86.21%)
Mutual labels:  pegasus
Text-Summarization
Abstractive and Extractive Text summarization using Transformers.
Stars: ✭ 38 (+31.03%)
Mutual labels:  pegasus
pegasus-rocksdb
pegasus-rocksdb
Stars: ✭ 29 (+0%)
Mutual labels:  pegasus

Pegasus Java Client

Build Status

Build

mvn clean package -DskipTests

Install

mvn clean install -DskipTests

Test

To run test, you should start pegasus onebox firstly, and run test as:

mvn clean package

or specify one test:

mvn clean package -Dtest=TestPing

Configuration

Configure client by "pegasus.properties", for example:

meta_servers = 127.0.0.1:34601,127.0.0.1:34602,127.0.0.1:34603
operation_timeout = 1000
async_workers = 4
enable_perf_counter = true
perf_counter_tags = k1=v1,k2=v2,k3=v3
push_counter_interval_secs = 10

You can provide a parameter of 'configPath' when creating a client instance.

The format of 'configPath' should be one of these:

  • zk path: zk://host1:port1,host2:port2,host3:port3/path/to/config
  • local file path: file:///path/to/config
  • resource path: resource:///path/to/config

PerfCounter(Metrics)

Pegasus Java Client supports QPS and latency statistics of requests.

The related configurations are:

enable_perf_counter = true
perf_counter_tags = k1=v1,k2=v2,k3=v3
push_counter_interval_secs = 10

For each type of request(get, set, multiset, etc.), we collect 8 metrics:

  1. cps-1sec: the request's qps
  2. cps-1min: the request's queries per 1 minute
  3. cps-5min: the request's queries per 5 minutes
  4. cps-15min: the request's queries per 15 minutes
  5. latency-p50: the moving median of request's queries
  6. latency-p99: the moving p99 of request's queries
  7. lantecy-p999: the moving p999 of request's queries 8: latency-max: the moving max of request's queries

We use io.dropwizard.metrics library to calculate the request count.

Currently, metrics are integrated with open-falcon(http://open-falcon.com/), which push counters to local http agent http://127.0.0.1:1988/push/v1.

If you'd like to integrate pegasus client with other monitor system, please let us know ASAP.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].