X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;ds=sidebyside;f=bin%2Fmemaslap.html;h=06264c2e38b959340d867d16ddfc95fe20fc324f;hb=3fc1f78f8a21346e8ddc81f5f97e49042cd3ac76;hp=29774661d8bf3ede7fdc70b1e6c5d4ceeffb7e98;hpb=b997cdd3e15a2c10dbbdf3383a64bfb0a405461e;p=awesomized%2Flibmemcached diff --git a/bin/memaslap.html b/bin/memaslap.html index 29774661..06264c2e 100644 --- a/bin/memaslap.html +++ b/bin/memaslap.html @@ -8,7 +8,7 @@ - memaslap - Load testing and benchmarking a server — libmemcached documentation + memaslap - Load testing and benchmarking a server — libmemcached 1.0.99 documentation @@ -60,6 +60,10 @@ +
+ 1.0 +
+ @@ -88,7 +92,6 @@
  • DESCRIPTION
  • CONSTANTS
  • THREADS AND PROCESSES
  • -
  • HOME
  • SEE ALSO
  • @@ -97,7 +100,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -107,16 +109,15 @@
  • Creating a pool of servers
  • Adding a value to the server
  • Fetching multiple values
  • -
  • HOME
  • SEE ALSO
  • Configuring Libmemcached
  • @@ -124,7 +125,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -135,7 +135,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -143,8 +142,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -152,7 +149,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -160,8 +156,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -169,8 +163,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -178,7 +170,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -186,7 +177,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -194,7 +184,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -202,7 +191,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -210,7 +198,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -221,8 +208,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -231,7 +216,6 @@
  • DESCRIPTION
  • RETURN
  • NOTES
  • -
  • HOME
  • SEE ALSO
  • @@ -239,8 +223,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -248,8 +230,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -257,8 +237,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -267,7 +245,6 @@
  • DESCRIPTION
  • NOTES
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -275,8 +252,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -289,8 +264,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -298,7 +271,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -306,15 +278,13 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • -
  • Coverting Errors, memcached_return_t, to strings
  • @@ -381,7 +350,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -389,7 +357,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • SEE ALSO
  • @@ -418,11 +385,10 @@

    Deriving Statistics from a Server

    @@ -450,21 +413,17 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • Client Applications

    @@ -490,8 +445,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -499,8 +452,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -508,8 +459,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -517,8 +466,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -526,8 +473,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -541,8 +486,6 @@
  • Format of output
  • OPTIONS
  • EXAMPLES
  • -
  • HOME
  • -
  • AUTHORS
  • SEE ALSO
  • @@ -550,16 +493,13 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • SEE ALSO
  • -
  • memexist - Check for the existance of a key
  • @@ -576,8 +514,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -585,8 +521,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • OPTIONS
  • -
  • HOME
  • -
  • AUTHOR
  • SEE ALSO
  • @@ -595,7 +529,6 @@ @@ -611,7 +543,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN VALUE
  • -
  • HOME
  • SEE ALSO
  • @@ -619,7 +550,6 @@
  • SYNOPSIS
  • DESCRIPTION
  • RETURN VALUE
  • -
  • HOME
  • SEE ALSO
  • @@ -704,9 +634,9 @@

    DESCRIPTION¶

    memaslap is a load generation and benchmark tool for memcached -servers. It generates configurable workload such as threads, concurrencies, +servers. It generates configurable workload such as threads, concurrency, connections, run time, overwrite, miss rate, key size, value size, get/set -proportion, expected throughput, and so on. Furthermore, it also testss data +proportion, expected throughput, and so on. Furthermore, it also tests data verification, expire-time verification, UDP, binary protocol, facebook test, replication test, multi-get and reconnection, etc.

    Memaslap manages network connections like memcached with @@ -746,11 +676,11 @@ memaslap can handle network very efficiently.

    Effective implementation of multi-threads and concurrency¶

    Memslap has the similar implementation of multi-threads to memcached. Memslap creates one or more self-governed threads; -each thread is bound with one CPU core if the system testss setting CPU +each thread is bound with one CPU core if the system tests setting CPU core affinity.

    In addition, each thread has a libevent to manage the events of the network; -each thread has one or more self-governed concurrencies; and each -concurrency has one or more socket connections. All the concurrencies don’t +each thread has one or more self-governed concurrency; and each +concurrency has one or more socket connections. All the concurrent tasks don’t communicate with each other even though they are in the same thread.

    Memslap can create thousands of socket connections, and each concurrency has tens of socket connections. Each concurrency randomly or @@ -784,7 +714,7 @@ into it.

    Simple but useful task scheduling¶

    -

    Memslap uses libevent to schedule all the concurrencies of +

    Memslap uses libevent to schedule all concurrent tasks of threads, and each concurrency schedules tasks based on the local task window. Memslap assumes that if each concurrency keeps the same key distribution, value distribution and commands distribution, from @@ -822,7 +752,7 @@ memcached server, and get these objects from the other servers.

    By default, Memslap does single get. If the user specifies multi-get option, memaslap will collect enough get commands and pack and send the commands together.

    -

    Memslap testss both the ASCII protocol and binary protocol, +

    Memslap tests both the ASCII protocol and binary protocol, but it runs on the ASCII protocol by default. Memslap by default runs on the TCP protocol, but it also tests UDP. Because UDP is unreliable, dropped packages and out-of-order @@ -845,19 +775,18 @@ be discarded and the next command will be sent.

    memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m -p 2

    The user must specify one server at least to run memaslap. The rest of the parameters have default values, as shown below:

    -

    Thread number = 1 Concurrency = 16

    +

    Thread number = 1 Concurrency = 16

    Run time = 600 seconds Configuration file = NULL

    Key size = 64 Value size = 1024

    Get/set = 9:1 Window size = 10k

    -

    Execute number = 0 Single get = true

    -

    Multi-get = false Number of sockets of each concurrency = 1

    +

    Execute number = 0 Single get = true

    +

    Multi-get = false Number of sockets of each concurrency = 1

    Reconnect = false Data verification = false

    -

    Expire-time verification = false ASCII protocol = true

    -

    Binary protocol = false Dumping statistic information

    -

    periodically = false

    +

    Expire-time verification = false ASCII protocol = true

    +

    Binary protocol = false Dumping statistic information periodically = false

    Overwrite proportion = 0% UDP = false

    -

    TCP = true Limit throughput = false

    -

    Facebook test = false Replication test = false

    +

    TCP = true Limit throughput = false

    +

    Facebook test = false Replication test = false

    Key size, value size and command distribution.¶

    All the distributions are read from the configuration file specified by user @@ -871,7 +800,7 @@ rounded to 3 decimal places.

    The minimum value size is 1 bytes; the maximum value size is 1M bytes. The precision of proportion is 0.001. The proportion of distribution will be rounded to 3 decimal places. -Currently, memaslap only testss set and get commands. And it +Currently, memaslap only tests set and get commands. And it testss 100% set and 100% get. For 100% get, it will preset some objects to the server.

    @@ -1029,7 +958,7 @@ option when socket connections are lost, it will reconnect them.

    User can use “–udp” to enable the UDP feature, but UDP comes with some limitations:

    UDP cannot set data more than 1400 bytes.

    -

    UDP is not testsed by the binary protocol because the binary protocol of +

    UDP is not tested by the binary protocol because the binary protocol of memcached does not tests that.

    UDP doesn’t tests reconnection.

    @@ -1084,7 +1013,7 @@ memcached 1.3.3 does not implement binary UDP protocol.

    Since memcached 1.3.3 doesn’t implement binary UDP protocol, memaslap does not tests UDP. In addition, memcached 1.3.3 does not tests multi-get. If you specify “–division=50” option, it just sends 50 get -commands together as “mulit-get” to the server.

    +commands together as “multi-get” to the server.

    @@ -1536,16 +1465,6 @@ server must be same.

    memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m

    memaslap -s 127.0.0.1:11211,127.0.0.1:11212 -F config -t 2m -p 2

    -
    -

    HOME¶

    -

    To find out more information please check: -http://libmemcached.org/

    -
    -
    -

    AUTHORS¶

    -

    Mingqiang Zhuang <mingqiangzhuang@hengtiansoft.com> (Schooner Technolgy) -Brian Aker, <brian@tangent.org>

    -

    SEE ALSO¶

    memcached(1) libmemcached(3)

    @@ -1572,7 +1491,7 @@ Brian Aker, <

    - © Copyright 2011-2020 Brian Aker, Michael Wallner + © Copyright