EnglishFrenchSpanyol

Ad


Favicon OnWorks

memcaslap - Dalam talian di Awan

Jalankan memcaslap dalam penyedia pengehosan percuma OnWorks melalui Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS

Ini ialah perintah memcaslap yang boleh dijalankan dalam penyedia pengehosan percuma OnWorks menggunakan salah satu daripada berbilang stesen kerja dalam talian percuma kami seperti Ubuntu Online, Fedora Online, emulator dalam talian Windows atau emulator dalam talian MAC OS.

JADUAL:

NAMA


memaslap - libmemcached Documentation

SINOPSIS


memaslap [pilihan]

- membantu

MEMCACHED_SERVERS

DESCRIPTION


memaslap ialah penjanaan beban dan alat penanda aras untuk pelayan memcached. Ia menjana
beban kerja boleh dikonfigurasikan seperti benang, mata wang, sambungan, masa jalan, tulis ganti,
kadar ketinggalan, saiz kunci, saiz nilai, perkadaran dapatkan/tetapkan, jangkaan daya pengeluaran dan sebagainya.
Tambahan pula, ia juga menguji pengesahan data, pengesahan masa tamat, UDP, binari
protokol, ujian facebook, ujian replikasi, multi-dapat dan penyambungan semula, dsb.

Memaslap menguruskan sambungan rangkaian seperti memcached dengan libevent. Setiap utas memaslap
terikat dengan teras CPU, semua benang tidak berkomunikasi antara satu sama lain, dan ada
beberapa sambungan soket dalam setiap benang. Setiap sambungan mengekalkan pengedaran saiz kunci,
pengedaran saiz nilai, dan pengedaran arahan dengan sendirinya.

Anda boleh menentukan pelayan melalui memslap --pelayan pilihan atau melalui pembolehubah persekitaran
MEMCACHED_SERVERS.

CIRI-CIRI


Memslap dibangunkan untuk tujuan berikut:

Mengurus sambungan rangkaian dengan libevent secara tak segerak.

Tetapkan kedua-dua TCP dan UDP untuk menggunakan IO tidak menyekat.

Meningkatkan keselarian: prestasi yang lebih tinggi dalam persekitaran berbilang benang.

Meningkatkan kecekapan masa: kelajuan pemprosesan yang lebih pantas.

Menjana kunci dan nilai dengan lebih cekap; pengedaran saiz kunci dan saiz nilai
pengedaran boleh dikonfigurasikan.

Menyokong perintah get, multi-get, dan set; pengedaran arahan boleh dikonfigurasikan.

Menyokong kadar kehilangan terkawal dan kadar tulis ganti.

Menyokong data dan pengesahan masa tamat tempoh.

Menyokong lambakan maklumat statistik secara berkala.

Menyokong beribu-ribu sambungan TCP.

Menyokong protokol binari.

Menyokong ujian facebook (ditetapkan dengan TCP dan multi-get dengan UDP) dan ujian replikasi.

BUTIRAN


Berkesan pelaksanaan of rangkaian.
Untuk memaslap, kedua-dua TCP dan UDP menggunakan IO rangkaian tidak menyekat. Semua acara rangkaian adalah
diuruskan oleh libevent sebagai memcached. Modul rangkaian memaslap adalah serupa dengan memcached.
Libevent boleh memastikan memaslap boleh mengendalikan rangkaian dengan sangat cekap.

Berkesan pelaksanaan of berbilang benang and serentak
Memslap mempunyai pelaksanaan berbilang benang yang serupa dengan memcached. Memslap mencipta satu
atau lebih banyak benang yang ditadbir sendiri; setiap benang terikat dengan satu teras CPU jika sistem menguji
menetapkan pertalian teras CPU.

Selain itu, setiap utas mempunyai libevent untuk mengurus acara rangkaian; setiap utas
mempunyai satu atau lebih mata wang yang ditadbir sendiri; dan setiap konkurensi mempunyai satu atau lebih soket
sambungan. Semua mata wang tidak berkomunikasi antara satu sama lain walaupun begitu
dalam benang yang sama.

Memslap boleh mencipta beribu-ribu sambungan soket, dan setiap concurrency mempunyai berpuluh-puluh sambungan
sambungan soket. Setiap konkurensi secara rawak atau berurutan memilih satu soket
sambungan dari kolam sambungan soketnya untuk dijalankan, jadi memaslap boleh memastikan setiap konkurensi
mengendalikan satu sambungan soket pada bila-bila masa. Pengguna boleh menentukan bilangan
sambungan concurrency dan soket setiap concurrency mengikut jangkaan mereka
beban kerja.

Berkesan pelaksanaan of menjana utama and nilai
Untuk meningkatkan kecekapan masa dan kecekapan ruang, memaslap mencipta rawak
jadual aksara dengan 10M aksara. Semua akhiran kunci dan nilai dijana
daripada jadual aksara rawak ini.

Memslap menggunakan offset dalam jadual aksara dan panjang rentetan untuk mengenal pasti a
tali. Ia boleh menjimatkan banyak memori. Setiap kunci mengandungi dua bahagian, awalan dan akhiran. The
awalan ialah uint64_t, 8 bait. Untuk mengesahkan set data sebelum ini, memaslap perlu
pastikan setiap kunci adalah unik, jadi ia menggunakan awalan untuk mengenal pasti kunci. Awalan tidak boleh
sertakan aksara haram, seperti 'r', 'n', '0' dan ' '. Dan memaslap mempunyai algoritma
untuk memastikan itu.

Memslap tidak menjana semua objek (pasangan nilai kunci) pada mulanya. Ia sahaja
menjana objek yang mencukupi untuk mengisi tetingkap tugas (default 10K objek) setiap satu
keselarasan. Setiap objek mempunyai maklumat asas berikut, awalan kunci, akhiran kunci
mengimbangi dalam jadual aksara, panjang kunci, mengimbangi nilai dalam jadual aksara dan nilai
panjang.

Dalam proses kerja, setiap concurrency secara berurutan atau rawak memilih objek daripada
tetingkap untuk melakukan operasi set atau mendapatkan operasi. Pada masa yang sama, setiap konkurensi bermula
objek keluar dari tetingkapnya dan menambah objek baharu ke dalamnya.

Mudah tetapi berguna tugasan penjadualan
Memslap menggunakan libevent untuk menjadualkan semua konkurensi benang, dan setiap konkurensi
menjadualkan tugas berdasarkan tetingkap tugas tempatan. Memslap menganggap bahawa jika setiap concurrency
menyimpan pengedaran kunci, pengedaran nilai dan pengedaran arahan yang sama, daripada
di luar, memaslap menyimpan semua pengedaran secara keseluruhan. Setiap tetingkap tugas termasuk banyak
daripada objek, setiap objek menyimpan maklumat asasnya, seperti kunci, nilai, masa tamat dan
seterusnya. Pada bila-bila masa, semua objek dalam tetingkap menyimpan kunci dan nilai yang sama dan tetap
pengedaran. Jika objek ditimpa, nilai objek akan dikemas kini.
Memslap mengesahkan data atau masa tamat mengikut maklumat objek yang disimpan dalam
tetingkap tugas.

Libevent memilih konkurensi yang hendak dikendalikan berdasarkan acara rangkaian tertentu. Kemudian
concurrency memilih arahan (dapatkan atau tetapkan) untuk dikendalikan berdasarkan arahan
pengedaran. Jika ia perlu menendang keluar objek lama dan menambah objek baru, untuk mengekalkan
pengagihan kunci dan nilai yang sama, objek baharu mesti mempunyai panjang kunci yang sama dan
panjang nilai.

Jika pelayan memcached mempunyai dua lapisan cache (memori dan SSD), menjalankan memaslap dengan berbeza
saiz tetingkap boleh mendapat kadar kehilangan cache yang berbeza. Jika memaslap menambah objek yang mencukupi ke dalam
windows pada mulanya, dan cache memcached tidak boleh menyimpan semua objek
dimulakan, maka memaslap akan mendapat beberapa objek daripada lapisan cache kedua. Ia menyebabkan
lapisan cache pertama yang terlepas. Jadi pengguna boleh menentukan saiz tetingkap untuk mendapatkan yang diharapkan
kadar ketinggalan lapisan cache pertama.

Berguna pelaksanaan of berbilang pelayan , UDP, TCP, berbilang-dapat and perduaan protokol
Oleh kerana setiap utas ditadbir sendiri, memaslap boleh menetapkan utas yang berbeza untuk dikendalikan
pelayan memcached yang berbeza. Ini hanyalah salah satu cara memaslap menguji berbilang
pelayan. Satu-satunya had ialah bilangan pelayan tidak boleh lebih besar daripada
bilangan benang. Cara lain untuk menguji berbilang pelayan adalah untuk ujian replikasi. setiap satu
concurrency mempunyai satu sambungan soket ke setiap pelayan memcached. Untuk pelaksanaan,
memaslap boleh menetapkan beberapa objek kepada satu pelayan memcached, dan mendapatkan objek ini daripada
pelayan lain.

Secara lalai, Memslap mendapat tunggal. Jika pengguna menentukan pilihan berbilang dapatkan, memaslap akan
kumpulkan cukup dapatkan arahan dan bungkus dan hantar arahan bersama-sama.

Memslap menguji kedua-dua protokol ASCII dan protokol binari, tetapi ia berjalan pada ASCII
protokol secara lalai. Memslap secara lalai berjalan pada protokol TCP, tetapi ia juga menguji UDP.
Oleh kerana UDP tidak boleh dipercayai, pakej yang digugurkan dan pakej yang tidak mengikut pesanan mungkin berlaku. Memslap
mencipta penimbal memori untuk menangani masalah ini. Memslap cuba membaca semua respons
data satu arahan daripada pelayan dan menyusun semula data tindak balas. Jika beberapa pakej mendapat
hilang, mekanisme tamat masa menunggu boleh memastikan bungkusan separuh masak akan dibuang dan
arahan seterusnya akan dihantar.

PENGGUNAAN


Di bawah adalah beberapa contoh penggunaan:

memaslap -s 127.0.0.1:11211 -S 5s

memaslap -s 127.0.0.1:11211 -t 2m -v 0.2 -e 0.05 -b

memaslap -s 127.0.0.1:11211 -F konfigurasi -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F konfigurasi -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F konfigurasi -t 2m -d 50 -a -n 40

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

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

Pengguna mesti menentukan satu pelayan sekurang-kurangnya untuk menjalankan memaslap. Selebihnya parameter mempunyai
nilai lalai, seperti yang ditunjukkan di bawah:

Nombor benang = 1 Concurrency = 16

Masa jalankan = 600 saat Fail konfigurasi = NULL

Saiz kunci = 64 Saiz nilai = 1024

Dapatkan/set = 9:1 Saiz tetingkap = 10k

Nombor laksana = 0 Perolehan tunggal = benar

Multi-get = palsu Bilangan soket setiap konkurensi = 1

Sambung semula = palsu Pengesahan data = palsu

Pengesahan masa tamat tempoh = protokol ASCII palsu = benar

Protokol binari = maklumat statistik Lambakan palsu

secara berkala = palsu

Perkadaran ganti = 0% UDP = palsu

TCP = benar Had daya tampung = palsu

Ujian Facebook = palsu Ujian replikasi = palsu

Utama saiz, nilai saiz and arahan Pengedaran.
Semua pengedaran dibaca daripada fail konfigurasi yang ditentukan oleh pengguna dengan
Pilihan “—cfg_cmd”. Jika pengguna tidak menentukan fail konfigurasi, memaslap akan dijalankan
dengan pengedaran lalai (saiz kunci = 64, saiz nilai = 1024, dapatkan/set = 9:1). Untuk
maklumat tentang cara mengedit fail konfigurasi, rujuk kepada "Fail Konfigurasi"
bawah seksyen ini.

Saiz kunci minimum ialah 16 bait; saiz kunci maksimum ialah 250 bait. Ketepatan daripada
perkadaran ialah 0.001. Perkadaran taburan akan dibundarkan kepada 3 tempat perpuluhan.

Saiz nilai minimum ialah 1 bait; saiz nilai maksimum ialah 1M bait. Ketepatan daripada
perkadaran ialah 0.001. Perkadaran taburan akan dibundarkan kepada 3 tempat perpuluhan.
Pada masa ini, memaslap hanya menguji set dan dapatkan arahan. Dan ia menguji 100% ditetapkan dan 100% mendapat.
Untuk mendapatkan 100%, ia akan menetapkan beberapa objek ke pelayan.

Berbilang benang and serentak
Prestasi tinggi memaslap mendapat manfaat daripada jadual khas benang dan
keselarasan. Adalah penting untuk menentukan bilangan mereka yang betul. Nombor lalai bagi
benang ialah 1; nombor lalai konkurensi ialah 16. Pengguna boleh menggunakan “—benang” dan
“--concurrency” untuk menentukan pembolehubah ini.

Jika sistem menguji tetapan pertalian CPU dan bilangan utas yang ditentukan oleh pengguna
lebih besar daripada 1, memaslap akan cuba mengikat setiap utas ke teras CPU yang berbeza. Jadi kalau
anda ingin mendapatkan prestasi terbaik memaslap, adalah lebih baik untuk menentukan bilangan
benang sama dengan bilangan teras CPU. Bilangan utas yang ditentukan oleh pengguna boleh
juga kurang atau lebih besar daripada bilangan teras CPU. Kerana keterbatasan
pelaksanaan, bilangan mata wang boleh menjadi gandaan bilangan
benang.

1. Untuk sistem 8 teras CPU

Sebagai contoh:

--threads=2 --concurrency=128

--threads=8 --concurrency=128

--threads=8 --concurrency=256

--threads=12 --concurrency=144

2. Untuk sistem 16 teras CPU

Sebagai contoh:

--threads=8 --concurrency=128

--threads=16 --concurrency=256

--threads=16 --concurrency=512

--threads=24 --concurrency=288

Memaslap berfungsi dengan baik, apabila digunakan untuk menguji prestasi pelayan memcached.
Selalunya, kesesakan adalah rangkaian atau pelayan. Jika atas sebab tertentu pengguna
ingin mengehadkan prestasi memaslap, terdapat dua cara untuk melakukannya:

Kurangkan bilangan benang dan mata wang. Gunakan pilihan “--tps” yang memaslap
menyediakan untuk mengehadkan daya pengeluaran. Pilihan ini membolehkan pengguna mendapatkan yang diharapkan
daya pengeluaran. Sebagai contoh, anggap bahawa daya pemprosesan maksimum ialah 50 kops/s untuk sesuatu tertentu
konfigurasi, anda boleh menentukan daya pemprosesan sama dengan atau kurang daripada daya pemprosesan maksimum
menggunakan pilihan "--tps".

Tetingkap saiz
Selalunya, pengguna tidak perlu menentukan saiz tetingkap. Tetingkap lalai
saiz 10k. Untuk Schooner Memcached, pengguna boleh menentukan saiz tetingkap yang berbeza untuk mendapatkannya
kadar kehilangan cache yang berbeza berdasarkan kes ujian. Memslap testss kadar kehilangan cache antara
0% dan 100%. Jika anda menggunakan utiliti ini untuk menguji prestasi Schooner Memcached, anda
boleh menentukan saiz tetingkap yang betul untuk mendapatkan kadar kehilangan cache yang dijangkakan. Formula untuk
pengiraan saiz tetingkap adalah seperti berikut:

Andaikan saiz kunci ialah 128 bait, dan saiz nilai ialah 2048 bait, dan
concurrency=128.

1. Cache kecil saiz_cache=1M, 100% cache terlepas (semua data dapat daripada SSD). win_size=10k

2. saiz_cache=4G

(1). kadar kehilangan cache 0%

win_size=8k

(2). kadar kehilangan cache 5%

win_size=11k

3. saiz_cache=16G

(1). kadar kehilangan cache 0%

win_size=32k

(2). tembolok rindu

kadar 5%

win_size=46k

Formula untuk mengira saiz tetingkap untuk kadar kehilangan cache 0%:

cache_size / concurrency / (key_size + value_size) * 0.5

Formula untuk mengira saiz tetingkap untuk kadar kehilangan cache 5%:

cache_size / concurrency / (key_size + value_size) * 0.7

Pengesahan
Memslap menguji kedua-dua pengesahan data dan pengesahan masa tamat. Pengguna boleh menggunakan
"--verify=" atau "-v" untuk menentukan perkadaran pengesahan data. Secara teori, ia menguji
100% pengesahan data. Pengguna boleh menggunakan "--exp_verify=" atau "-e" untuk menentukan perkadaran
pengesahan masa tamat. Secara teori, ia menguji 100% pengesahan masa tamat. Nyatakan
pilihan "--verbose" untuk mendapatkan maklumat ralat yang lebih terperinci.

Contohnya: --exp_verify=0.01 –verify=0.1 , ini bermakna 1% daripada objek yang ditetapkan dengan
masa tamat tempoh, 10% daripada objek yang diperoleh akan disahkan. Jika objek diperoleh,
memaslap akan mengesahkan masa tamat dan nilai.

berbilang pelayan and berbilang konfigurasi
Memslap menguji berbilang pelayan berdasarkan urutan yang ditadbir sendiri. Terdapat batasan itu
bilangan pelayan tidak boleh lebih daripada bilangan utas. Memslap memberikan satu
benang untuk mengendalikan satu pelayan sekurang-kurangnya. Pengguna boleh menggunakan pilihan "--servers=" atau "-s" untuk
tentukan berbilang pelayan.

Sebagai contoh:

--servers=10.1.1.1:11211,10.1.1.2:11212,10.1.1.3:11213 --threads=6 --concurrency=36

Perintah di atas bermakna terdapat 6 utas, dengan setiap utas mempunyai 6 mata wang
dan benang 0 dan 3 mengendalikan pelayan 0 (10.1.1.1); benang 1 dan 4 mengendalikan pelayan 1
(10.1.1.2); dan benang 2 dan 5 mengendalikan pelayan 2 (10.1.1.3).

Semua benang dan mata wang dalam memaslap adalah ditadbir sendiri.

Begitu juga memaslap. Pengguna boleh memulakan beberapa contoh memaslap. Pengguna boleh berlari
memaslap pada mesin klien yang berbeza untuk berkomunikasi dengan pelayan memcached yang sama di
sama. Adalah disyorkan bahawa pengguna memulakan memaslap yang berbeza pada mesin yang berbeza menggunakan
konfigurasi yang sama.

Main bersama melaksanakan nombor mod or masa mod
Memaslap lalai berjalan dengan mod masa. Masa larian lalai ialah 10 minit. Jika masa
keluar, memaslap akan keluar. Jangan nyatakan kedua-dua mod nombor laksana dan mod masa secara serentak
masa; tentukan satu sahaja.

Sebagai contoh:

--time=30s (Ini bermakna ujian akan berjalan 30 saat.)

--execute_number=100000 (Ini bermakna selepas menjalankan 100000 arahan, ujian akan keluar.)

Membuang statistik maklumat secara berkala.
Pengguna boleh menggunakan "--stat_freq=" atau "-S" untuk menentukan kekerapan.

Sebagai contoh:

--stat_freq=20s

Memslap akan membuang statistik arahan (dapatkan dan tetapkan) pada kekerapan setiap
20 saat.

Untuk maklumat lanjut tentang format lambakan maklumat statistik, rujuk “Format bagi
bahagian Output".

Berbilang-dapat
Pengguna boleh menggunakan "--division=" atau "-d" untuk menentukan kiraan kunci berbilang dapatkan. Memslap oleh
lalai mendapat tunggal dengan TCP. Memslap juga menguji pengesahan data dan masa tamat tempoh
pengesahan untuk multi-get.

Memslap testss multi-get dengan kedua-dua TCP dan UDP. Kerana pelaksanaan yang berbeza daripada
protokol ASCII dan protokol binari, terdapat beberapa perbezaan antara keduanya. Untuk
protokol ASCII, memaslap menghantar satu "multi-get" ke pelayan sekali. Untuk binari
protokol, memaslap menghantar beberapa perintah get tunggal bersama-sama sebagai "multi-get" ke
pelayan.

UDP and TCP
Memslap menguji kedua-dua UDP dan TCP. Untuk TCP, memaslap tidak menyambung semula pelayan memcached
jika sambungan soket terputus. Jika semua sambungan soket hilang atau pelayan memcached
ranap, memaslap akan keluar. Jika pengguna menentukan pilihan "--sambung semula" apabila soket
sambungan terputus, ia akan menyambungkannya semula.

Pengguna boleh menggunakan "--udp" untuk mendayakan ciri UDP, tetapi UDP datang dengan beberapa had:

UDP tidak boleh menetapkan data lebih daripada 1400 bait.

UDP tidak diuji oleh protokol binari kerana protokol binari memcached melakukannya
bukan ujian itu.

UDP tidak menguji penyambungan semula.

Facebook ujian
Tetapkan data dengan TCP dan multi-dapat dengan UDP. Nyatakan pilihan berikut:

"--facebook --division=50"

Jika anda ingin mencipta beribu-ribu sambungan TCP, nyatakan

"--conn_sock=" pilihan.

Contohnya: --facebook --division=50 --conn_sock=200

Perintah di atas bermaksud bahawa memaslap akan melakukan ujian facebook, setiap concurrency mempunyai 200
soket sambungan TCP dan satu soket UDP.

Memslap menetapkan objek dengan soket TCP dan berbilang mendapat 50 objek sekali dengan UDP
soket.

Jika anda menentukan "--division=50", saiz kunci mestilah kurang daripada 25 bait kerana UDP
saiz paket ialah 1400 bait.

replikasi ujian
Untuk ujian replikasi, pengguna mesti menentukan sekurang-kurangnya dua pelayan memcached. Pengguna boleh
gunakan pilihan "—rep_write=" untuk mendayakan ciri.

Sebagai contoh:

--servers=10.1.1.1:11211,10.1.1.2:11212 –rep_write=2

Perintah di atas bermakna terdapat 2 pelayan memcached replikasi, memaslap akan ditetapkan
objek ke pelayan 0 dan pelayan 1, dapatkan objek yang ditetapkan kepada pelayan 0 sebelum dari
pelayan 1, dan juga dapatkan objek yang ditetapkan kepada pelayan 1 sebelum daripada pelayan 0. Jika pelayan 0
ranap, memaslap hanya akan mendapat objek dari pelayan 1. Jika pelayan 0 hidup semula
sekali lagi, memaslap akan menyambung semula pelayan 0. Jika kedua-dua pelayan 0 dan pelayan 1 ranap, memaslap
akan keluar.

Menyokong beribu-ribu of TCP sambungan
Mulakan memaslap dengan "--conn_sock=" atau "-n" untuk mendayakan ciri ini. Pastikan bahawa anda
sistem boleh menguji membuka beribu-ribu fail dan mencipta beribu-ribu soket. Walau bagaimanapun,
ciri ini tidak menguji penyambungan semula jika soket terputus.

Sebagai contoh:

--threads=8 --concurrency=128 --conn_sock=128

Perintah di atas bermaksud bahawa memaslap memulakan 8 utas, setiap utas mempunyai 16
mata wang, setiap mata wang mempunyai 128 sambungan soket TCP, dan jumlah bilangan
Sambungan soket TCP ialah 128 * 128 = 16384.

Menyokong perduaan protokol
Mulakan memaslap dengan pilihan "--binary" atau "-B" untuk mendayakan ciri ini. Ia menguji semua
ciri di atas kecuali UDP, kerana memcached terkini 1.3.3 tidak melaksanakan binari
Protokol UDP.

Sebagai contoh:

--perduaan

Memandangkan memcached 1.3.3 tidak melaksanakan protokol UDP binari, memaslap tidak menguji UDP.
Di samping itu, memcached 1.3.3 tidak menguji multi-get. Jika anda menyatakan "--division=50"
pilihan, ia hanya menghantar 50 perintah get bersama-sama sebagai "mulit-get" ke pelayan.

CONFIGURATION FAIL


Bahagian ini menerangkan format fail konfigurasi. Secara lalai apabila tidak
fail konfigurasi ditentukan memaslap membaca lalai yang terletak di ~/.memaslap.cnf.

Di bawah ialah contoh fail konfigurasi:

-------------------------------------------------- -------------------------
#komen hendaklah bermula dengan '#'
#kunci
#start_len end_len perkadaran
#
#julat panjang kunci dari start_len hingga end_len
#start_len mestilah sama dengan atau lebih daripada 16
#end_len mestilah sama dengan atau kurang daripada 250
#start_len mestilah sama dengan atau lebih besar daripada end_len
#memaslap akan menjana kunci mengikut julat kunci
#proportion: menunjukkan kunci yang dijana daripada satu akaun julat untuk jumlah keseluruhan
kunci yang dihasilkan
#
#example1: julat kunci 16~100 menyumbang 80%
# julat kunci 101~200 menyumbang 10%
# julat kunci 201~250 menyumbang 10%
# jumlah hendaklah 1 (0.8+0.1+0.1 = 1)
#
# 16 100 0.8
# 101 200 0.1
# 201 249 0.1
#
#example2: panjang semua kekunci ialah 128 bait
#
# 128 128 1
utama
128 128 1
#nilai
#start_len end_len perkadaran
#
julat panjang #nilai dari mula_len hingga akhir_len
#start_len mestilah sama dengan atau lebih daripada 1
#end_len mestilah sama dengan atau kurang daripada 1M
#start_len mestilah sama dengan atau lebih besar daripada end_len
#memaslap akan menjana nilai mengikut julat nilai
#proportion: menunjukkan nilai yang dijana daripada satu akaun julat untuk
jumlah nilai yang dijana
#
#example1: julat nilai 1~1000 menyumbang 80%
# julat nilai 1001~10000 menyumbang 10%
# julat nilai 10001~100000 menyumbang 10%
# jumlah hendaklah 1 (0.8+0.1+0.1 = 1)
#
# 1 1000 0.8
# 1001 10000 0.1
# 10001 100000 0.1
#
#example2: semua panjang nilai ialah 128 bait
#
# 128 128 1
nilai
2048 2048 1
#cmd
#cmd_type cmd_proportion
#
#pada masa ini memaslap hanya testss dapatkan dan tetapkan arahan.
#
#cmd_type
#set 0
#dapat 1
#
#example: tetapkan akaun arahan untuk 50%
# dapatkan akaun arahan untuk 50%
# jumlah hendaklah 1 (0.5+0.5 = 1)
#
# cmd
# 0 0.5
# 1 0.5
cmd
0 0.1
1.0 0.9

FORMAT OF OUTPUT


Pada mulanya, memaslap memaparkan beberapa maklumat konfigurasi seperti berikut:

pelayan : 127.0.0.1:11211

kiraan benang: 1

selaras: 16

masa larian: 20s

saiz tingkap: 10k

tetapkan perkadaran: set_prop=0.10

dapatkan perkadaran: get_prop=0.90

Lokasi
pelayan: "pelayan"
Pelayan yang digunakan oleh memaslap.

kiraan benang
Bilangan benang memaslap berjalan dengan.

serentak
Bilangan mata wang memaslap berjalan dengan.

masa berjalan
Berapa lama nak lari memaslap.

saiz tingkap
Saiz tetingkap tugas bagi setiap konkurensi.

tetapkan perkadaran
Perkadaran arahan yang ditetapkan.

dapatkan perkadaran
Perkadaran mendapatkan arahan.

Output statistik dinamik adalah seperti ini:

-------------------------------------------------- -------------------------------------------------- -----------------------------
Dapatkan Statistik
Ops Masa Taip TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
Purata(kami) Std_dev Geo_dist
Tempoh 5 345826 69165 65.3 0 27 2198 203
95.43 177.29
Global 20 1257935 62896 71.8 0 26 3791 224
117.79 192.60

Tetapkan Statistik
Ops Masa Taip TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
Purata(kami) Std_dev Geo_dist
Tempoh 5 38425 7685 7.3 0 42 628 240
88.05 220.21
Global 20 139780 6989 8.0 0 37 3790 253
117.93 224.83

Jumlah Statistik
Ops Masa Taip TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
Purata(kami) Std_dev Geo_dist
Tempoh 5 384252 76850 72.5 0 27 2198 207
94.72 181.18
Global 20 1397720 69886 79.7 0 26 3791 227
117.93 195.60
-------------------------------------------------- -------------------------------------------------- -----------------------------

Lokasi
Dapatkan Statistik
Maklumat statistik untuk mendapatkan arahan

Tetapkan Statistik
Maklumat statistik arahan set

Jumlah Statistik
Maklumat perangkaan bagi perintah get dan set

tempoh
Keputusan dalam tempoh

Global
Hasil terkumpul

Ops
Jumlah operasi

TPS
Throughput, operasi/saat

Bersih
Kadar rangkaian

Get_miss
Berapa banyak objek yang tidak dapat diperoleh

Min
Masa tindak balas minimum

Max
Masa tindak balas maksimum

Purata:
Purata masa tindak balas

Std_dev
Sisihan piawai masa tindak balas

Geo_dist
Taburan geometri berdasarkan fungsi eksponen semula jadi

Pada akhirnya, memaslap akan mengeluarkan sesuatu seperti ini:

-------------------------------------------------- -------------------------------------------------- -----------------------------
Dapatkan Statistik (1257956 acara)
Minimum: 26
Maks: 3791
Purata: 224
Geo: 192.60
Std: 116.23
Log2 Dist:
4: 0 10 84490 215345
8: 484890 459823 12543 824
12: 31

Tetapkan Statistik (139782 acara)
Minimum: 37
Maks: 3790
Purata: 253
Geo: 224.84
Std: 116.83
Log2 Dist:
4: 0 0 4200 16988
8: 50784 65574 2064 167
12: 5

Jumlah Statistik (1397738 acara)
Minimum: 26
Maks: 3791
Purata: 227
Geo: 195.60
Std: 116.60
Log2 Dist:
4: 0 10 88690 232333
8: 535674 525397 14607 991
12: 36

cmd_get: 1257969
cmd_set: 139785
get_rindu: 0
verify_rindu: 0
verify_failed: 0
expired_get: 0
unexpired_unget: 0
bait_tulis: 242516030
read_bait: 1003702556
bait_objek: 152086080
gangguan_paket: 0
packet_drop: 0
udp_timeout: 0

Masa tayangan: 20.0s Ops: 1397754 TPS: 69817 Net_rate: 59.4M/s
-------------------------------------------------- -------------------------------------------------- -----------------------------

Lokasi
Dapatkan Statistik
Dapatkan statistik masa tindak balas

Tetapkan Statistik
Tetapkan statistik masa tindak balas

Jumlah Statistik
Kedua-duanya mendapatkan dan menetapkan statistik masa tindak balas

Min
Masa tindak balas terkumpul dan minimum

Max
Masa tindak balas terkumpul dan maksimum

Purata
Masa tindak balas terkumpul dan purata

Jam
Sisihan piawai masa tindak balas

Log2 Dist
Taburan geometri berdasarkan logaritma 2

cmd_get
Jumlah selesaikan arahan

cmd_set
Jumlah set perintah yang dilakukan

get_miss
Berapa banyak objek yang tidak boleh diperolehi daripada pelayan

verify_rindu
Berapa banyak objek yang perlu disahkan tetapi tidak boleh mendapatkannya

sahkan_gagal
Berapa banyak objek dengan nilai mendesak

expired_get
Berapa banyak objek yang tamat tempoh tetapi kami mendapatnya

unexpired_unget
Berapa banyak objek yang belum tamat tempoh tetapi kami tidak boleh mendapatkannya

written_bait
Jumlah bait bertulis

read_bait
Jumlah bait bacaan

bait_objek
Jumlah bait objek

gangguan_paket
Berapa banyak pakej UDP adalah gangguan

packet_drop
Berapa banyak pakej UDP yang hilang

udp_timeout
Berapa kali tamat masa UDP berlaku

Masa berjalan
Jumlah masa larian

Ops
Jumlah operasi

TPS
Throughput, operasi/saat

Kadar_bersih
Kadar purata rangkaian

PILIHAN


-ya, --pelayan=
Senaraikan satu atau lebih pelayan untuk disambungkan. Kiraan pelayan mestilah kurang daripada kiraan rangkaian.
cth: --servers=localhost:1234,localhost:11211

-T, --benang=
Bilangan utas untuk dimulakan, lebih baik sama dengan nombor CPU. Lalai 8.

-c, --concurrency=
Bilangan konkurensi untuk disimulasikan dengan beban. Lalai 128.

-n, --conn_sock=
Bilangan stokin TCP setiap serentak. Lalai 1.

-x, --execute_number=
Bilangan operasi (dapatkan dan tetapkan) untuk dilaksanakan untuk ujian yang diberikan. Lalai 1000000.

-t, --masa=
Berapa lama ujian dijalankan, akhiran: s-saat, m-minit, h-jam, d-hari cth:
--masa=2j.

-F, --cfg_cmd=
Muatkan fail konfigurasi untuk mendapatkan senarai agihan arahan, kunci dan nilai.

-w, --win_size=
Saiz tetingkap tugasan bagi setiap konkurensi, akhiran: K, M cth: --win_size=10k. lalai
10k.

-X, --saiz_tetap=
Panjang nilai tetap.

-v, --sahkan=
Perkadaran pengesahan tarikh, cth: --verify=0.01

-d, --bahagian=
Bilangan kunci untuk berbilang perolehan sekali. Lalai 1, bermakna perolehan tunggal.

-S, --stat_freq=
Kekerapan lambakan maklumat statistik. akhiran: s-saat, m-minit, cth:
--resp_freq=10s.

-e, --exp_verify=
Perkadaran objek dengan masa tamat, cth: --exp_verify=0.01. No. lalai
objek dengan masa tamat

-o, --tulis ganti=
Perkadaran objek perlu ditulis ganti, cth: --overwrite=0.01. Lalai tidak pernah
timpa objek.

-R, --sambung semula
Ujian sambung semula, apabila sambungan ditutup ia akan disambung semula.

-U, --udp
Ujian UDP, memaslap lalai menggunakan TCP, port TCP dan port UDP pelayan mestilah sama.

-a, --facebook
Sama ada ia mendayakan ciri ujian facebook, ditetapkan dengan TCP dan multi-dapat dengan UDP.

-B, --perduaan
Sama ada ia membolehkan protokol binari. Lalai dengan protokol ASCII.

-P, --tps=
Jangkaan daya pengeluaran, akhiran: K, cth: --tps=10k.

-p, --rep_write=
Pelayan ke-2 boleh menulis data, cth: --rep_write=XNUMX.

-b, --verbose
Sama ada ia mengeluarkan maklumat terperinci apabila pengesahan gagal.

-h, - membantu
Paparkan mesej ini dan kemudian keluar.

-V, --versi
Paparkan versi aplikasi dan kemudian keluar.

CONTOH


memaslap -s 127.0.0.1:11211 -S 5s

memaslap -s 127.0.0.1:11211 -t 2m -v 0.2 -e 0.05 -b

memaslap -s 127.0.0.1:11211 -F konfigurasi -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F konfigurasi -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F konfigurasi -t 2m -d 50 -a -n 40

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

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

LAMAN UTAMA


Untuk mengetahui maklumat lanjut sila semak: http://libmemcached.org/

PENGARANG


Mingqiang Zhuang[e-mel dilindungi]> (Schooner Technolgy) Brian Aker, <‐
[e-mel dilindungi]>

Gunakan memcaslap dalam talian menggunakan perkhidmatan onworks.net


Pelayan & Stesen Kerja Percuma

Muat turun apl Windows & Linux

  • 1
    SWIG
    SWIG
    SWIG ialah alat pembangunan perisian
    yang menghubungkan atur cara yang ditulis dalam C dan
    C++ dengan pelbagai peringkat tinggi
    bahasa pengaturcaraan. SWIG digunakan dengan
    berbeza...
    Muat turun SWIG
  • 2
    Tema WooCommerce Nextjs React
    Tema WooCommerce Nextjs React
    Tema WooCommerce React, dibina dengan
    Seterusnya JS, Webpack, Babel, Node dan
    Ekspres, menggunakan GraphQL dan Apollo
    Pelanggan. Kedai WooCommerce dalam React(
    mengandungi: Produk...
    Muat turun Tema WooCommerce Nextjs React
  • 3
    archlabs_repo
    archlabs_repo
    Repo pakej untuk ArchLabs Ini adalah
    aplikasi yang juga boleh diambil
    dari
    https://sourceforge.net/projects/archlabs-repo/.
    Ia telah dihoskan dalam OnWorks di...
    Muat turun archlabs_repo
  • 4
    Projek Zephyr
    Projek Zephyr
    Projek Zephyr ialah generasi baharu
    sistem pengendalian masa nyata (RTOS) yang
    menyokong pelbagai perkakasan
    seni bina. Ia berdasarkan a
    inti tapak kecil...
    Muat turun Projek Zephyr
  • 5
    SCON
    SCON
    SCons ialah alat pembinaan perisian
    itu adalah alternatif yang lebih baik daripada
    alat binaan klasik "Buat" yang
    kita semua tahu dan suka. SCons ialah
    melaksanakan...
    Muat turun SCons
  • 6
    PSeInt
    PSeInt
    PSeInt ialah penterjemah kod pseudo untuk
    pelajar pengaturcaraan berbahasa Sepanyol.
    Tujuan utamanya adalah untuk menjadi alat untuk
    mempelajari dan memahami asas
    konsep...
    Muat turun PSeInt
  • Lebih »

Arahan Linux

Ad