ภาษาอังกฤษภาษาฝรั่งเศสสเปน

Ad


ไอคอน Fav ของ OnWorks

memcaslap - ออนไลน์ในคลาวด์

เรียกใช้ memcaslap ในผู้ให้บริการโฮสต์ฟรีของ OnWorks ผ่าน Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

นี่คือคำสั่ง memcaslap ที่สามารถเรียกใช้ในผู้ให้บริการโฮสต์ฟรีของ OnWorks โดยใช้เวิร์กสเตชันออนไลน์ฟรีของเรา เช่น Ubuntu Online, Fedora Online, โปรแกรมจำลองออนไลน์ของ Windows หรือโปรแกรมจำลองออนไลน์ของ MAC OS

โครงการ:

ชื่อ


memaslap - libmemcached เอกสารประกอบ

เรื่องย่อ


memaslap [ตัวเลือก]

--ช่วยด้วย

MEMCACHED_SERVERS

DESCRIPTION


เมสแลป เป็นเครื่องมือสร้างโหลดและวัดประสิทธิภาพสำหรับเซิร์ฟเวอร์ memcached มันสร้าง
เวิร์กโหลดที่กำหนดค่าได้ เช่น เธรด การทำงานพร้อมกัน การเชื่อมต่อ รันไทม์ เขียนทับ
อัตราการพลาด, ขนาดคีย์, ขนาดค่า, สัดส่วนการรับ/กำหนด, ปริมาณงานที่คาดหวัง, และอื่นๆ
นอกจากนี้ยังทดสอบการตรวจสอบข้อมูล การตรวจสอบเวลาหมดอายุ UDP ไบนารี
โปรโตคอล, การทดสอบ facebook, การทดสอบการจำลองแบบ, การรับหลายรายการและการเชื่อมต่อใหม่ ฯลฯ

Memaslap จัดการการเชื่อมต่อเครือข่ายเช่น memcached ด้วย libevent แต่ละเธรดของ memaslap
ถูกผูกไว้กับแกน CPU เธรดทั้งหมดไม่สื่อสารกันและมี
การเชื่อมต่อซ็อกเก็ตหลายจุดในแต่ละเธรด การเชื่อมต่อแต่ละครั้งจะรักษาการกระจายขนาดคีย์
การกระจายขนาดค่าและการกระจายคำสั่งด้วยตัวเอง

คุณสามารถระบุเซิร์ฟเวอร์ผ่านทาง เม็มสแลป --เซิร์ฟเวอร์ ตัวเลือกหรือผ่านตัวแปรสภาพแวดล้อม
MEMCACHED_SERVERS.

คุณลักษณะเด่น


Memslap ได้รับการพัฒนาเพื่อวัตถุประสงค์ดังต่อไปนี้:

จัดการการเชื่อมต่อเครือข่ายด้วย libevent แบบอะซิงโครนัส

ตั้งค่าทั้ง TCP และ UDP เพื่อใช้ IO ที่ไม่บล็อก

ปรับปรุงการทำงานคู่ขนาน: ประสิทธิภาพที่สูงขึ้นในสภาพแวดล้อมแบบมัลติเธรด

ปรับปรุงประสิทธิภาพของเวลา: ความเร็วในการประมวลผลที่เร็วขึ้น

สร้างคีย์และมูลค่าได้อย่างมีประสิทธิภาพมากขึ้น การกระจายขนาดคีย์และขนาดค่า
การกระจายสามารถกำหนดค่าได้

รองรับคำสั่ง get, multi-get และ set; การกระจายคำสั่งสามารถกำหนดค่าได้

รองรับอัตราการพลาดที่ควบคุมได้และอัตราการเขียนทับ

รองรับข้อมูลและการตรวจสอบเวลาหมดอายุ

รองรับข้อมูลสถิติการทุ่มตลาดเป็นระยะ

รองรับการเชื่อมต่อ TCP นับพัน

รองรับโปรโตคอลไบนารี

รองรับการทดสอบ facebook (ตั้งค่าด้วย TCP และ multi-get ด้วย UDP) และการทดสอบการจำลอง

รายละเอียด


มีประสิทธิภาพ การดำเนินงาน of เครือข่าย
สำหรับ memaslap ทั้ง TCP และ UDP ใช้ IO เครือข่ายที่ไม่บล็อก เหตุการณ์เครือข่ายทั้งหมดคือ
จัดการโดย libevent เป็น memcached โมดูลเครือข่ายของ memaslap นั้นคล้ายกับ memcached
Libevent สามารถมั่นใจได้ว่า memaslap สามารถจัดการเครือข่ายได้อย่างมีประสิทธิภาพ

มีประสิทธิภาพ การดำเนินงาน of มัลติเธรด และ ภาวะพร้อมกัน
Memslap มีการนำมัลติเธรดไปใช้กับ memcached ที่คล้ายคลึงกัน Memslap สร้างหนึ่ง
หรือหัวข้อที่ปกครองตนเองมากขึ้น แต่ละเธรดจะถูกผูกไว้กับคอร์ CPU หนึ่งคอร์หากระบบทดสอบ
การตั้งค่าความสัมพันธ์หลักของ CPU

นอกจากนี้ แต่ละเธรดยังมีอิสระในการจัดการเหตุการณ์ของเครือข่าย แต่ละกระทู้
มีการทำงานพร้อมกันที่ปกครองตนเองตั้งแต่หนึ่งรายการขึ้นไป และการทำงานพร้อมกันแต่ละครั้งมีหนึ่งซ็อกเก็ตขึ้นไป
การเชื่อมต่อ การทำงานพร้อมกันทั้งหมดไม่สื่อสารกันแม้ว่าจะเป็น
ในกระทู้เดียวกัน

Memslap สามารถสร้างการเชื่อมต่อซ็อกเก็ตได้หลายพันครั้ง และการทำงานพร้อมกันแต่ละครั้งจะมีหลายสิบ
การเชื่อมต่อซ็อกเก็ต การทำงานพร้อมกันแต่ละครั้งแบบสุ่มหรือตามลำดับจะเลือกหนึ่งซ็อกเก็ต
การเชื่อมต่อจากพูลการเชื่อมต่อซ็อกเก็ตเพื่อให้ทำงาน ดังนั้น memaslap จึงสามารถรับประกันการทำงานพร้อมกันแต่ละครั้งได้
จัดการการเชื่อมต่อหนึ่งซ็อกเก็ตในเวลาใดก็ตาม ผู้ใช้สามารถระบุจำนวน
การทำงานพร้อมกันและการเชื่อมต่อซ็อกเก็ตของแต่ละการทำงานพร้อมกันตามที่คาดไว้
ภาระงาน

มีประสิทธิภาพ การดำเนินงาน of การสร้าง สำคัญ และ ความคุ้มค่า
เพื่อปรับปรุงประสิทธิภาพของเวลาและประสิทธิภาพของพื้นที่ memaslap จะสร้างสุ่ม
ตารางอักขระที่มีอักขระ 10M คำต่อท้ายของคีย์และค่าทั้งหมดถูกสร้างขึ้น
จากตารางอักขระสุ่มนี้

Memslap ใช้ออฟเซ็ตในตารางอักขระและความยาวของสตริงเพื่อระบุa
สตริง สามารถบันทึกหน่วยความจำได้มาก แต่ละคีย์ประกอบด้วยสองส่วน คำนำหน้าและส่วนต่อท้าย NS
คำนำหน้าคือ uint64_t, 8 ไบต์ ในการตรวจสอบชุดข้อมูลก่อนหน้านี้ memaslap จำเป็นต้อง
ตรวจสอบให้แน่ใจว่าแต่ละคีย์ไม่ซ้ำกัน ดังนั้นจึงใช้คำนำหน้าเพื่อระบุคีย์ คำนำหน้าไม่สามารถ
รวมอักขระที่ไม่ถูกต้อง เช่น 'r', 'n', '0' และ ' ' และ memaslap มีอัลกอริทึม
เพื่อให้แน่ใจว่า

Memslap ไม่ได้สร้างวัตถุทั้งหมด (คู่คีย์-ค่า) ในตอนเริ่มต้น เท่านั้น
สร้างอ็อบเจ็กต์มากพอที่จะเติมเต็มหน้าต่างงาน (อ็อบเจ็กต์เริ่มต้น 10K) ของแต่ละอัน
พร้อมกัน แต่ละอ็อบเจ็กต์มีข้อมูลพื้นฐาน คีย์นำหน้า คีย์ต่อท้าย . ดังต่อไปนี้
ออฟเซ็ตในตารางอักขระ ความยาวคีย์ ออฟเซ็ตค่าในตารางอักขระ และค่า
ความยาว.

ในกระบวนการทำงาน การทำงานพร้อมกันแต่ละครั้งจะเลือกออบเจ็กต์จาก
หน้าต่างเพื่อดำเนินการตั้งค่าหรือรับการดำเนินการ พร้อมกันนั้น ทุก ๆ เหตุการณ์ที่เกิดขึ้นพร้อมกัน
วัตถุนอกหน้าต่างและเพิ่มวัตถุใหม่เข้าไป

ง่าย แต่ มีประโยชน์ งาน การกำหนด
Memslap ใช้ libevent เพื่อกำหนดเวลาการทำงานพร้อมกันทั้งหมดของเธรดและการทำงานพร้อมกันแต่ละครั้ง
กำหนดเวลางานตามหน้าต่างงานในเครื่อง Memslap ถือว่าถ้าเกิดพร้อมกันแต่ละครั้ง
คงการกระจายคีย์ การกระจายค่า และการกระจายคำสั่งเหมือนเดิม จาก
ภายนอก memaslap จะเก็บการกระจายทั้งหมดโดยรวม แต่ละหน้าต่างงานมีจำนวนมาก
ของอ็อบเจ็กต์ แต่ละอ็อบเจ็กต์เก็บข้อมูลพื้นฐาน เช่น คีย์ ค่า เวลาหมดอายุ และ
เร็ว ๆ นี้. เมื่อใดก็ได้ วัตถุทั้งหมดในหน้าต่างจะคงคีย์และค่าเดิมและคงที่ไว้
การกระจาย. ถ้าวัตถุถูกเขียนทับ ค่าของวัตถุจะถูกปรับปรุง
Memslap ตรวจสอบข้อมูลหรือเวลาหมดอายุตามข้อมูลวัตถุที่เก็บไว้ใน
หน้าต่างงาน

Libevent เลือกการทำงานพร้อมกันเพื่อจัดการตามเหตุการณ์เครือข่ายเฉพาะ จากนั้น
การทำงานพร้อมกันจะเลือกคำสั่ง (รับหรือตั้งค่า) เพื่อดำเนินการตามคำสั่ง
การกระจาย. ถ้ามันจำเป็นต้องถีบของเก่าออกและเพิ่มของใหม่เพื่อที่จะเก็บ
คีย์และการกระจายค่าเดียวกัน ออบเจ็กต์ใหม่ต้องมีความยาวคีย์เท่ากันและ
ความยาวค่า

หากเซิร์ฟเวอร์ memcached มีแคชสองชั้น (หน่วยความจำและ SSD) ให้เรียกใช้ memaslap ด้วย different
ขนาดหน้าต่างสามารถรับอัตราการพลาดแคชที่แตกต่างกัน หาก memaslap เพิ่มวัตถุลงใน .เพียงพอ
หน้าต่างที่จุดเริ่มต้นและแคชของ memcached ไม่สามารถเก็บวัตถุทั้งหมดได้
เริ่มต้น จากนั้น memaslap จะได้รับวัตถุบางอย่างจากเลเยอร์แคชที่สอง มันทำให้เกิด
เลเยอร์แคชแรกที่พลาดไป เพื่อให้ผู้ใช้สามารถระบุขนาดหน้าต่างที่ต้องการได้
อัตราการพลาดของชั้นแคชแรก

มีประโยชน์ การดำเนินงาน of หลายเซิร์ฟเวอร์ , ยูดีพี ทีซีพี หลายรับ และ ไบนารี โปรโตคอล
เนื่องจากแต่ละเธรดมีการควบคุมตนเอง memaslap สามารถกำหนดเธรดที่แตกต่างกันเพื่อจัดการ
เซิร์ฟเวอร์ memcached ที่แตกต่างกัน นี่เป็นเพียงวิธีหนึ่งที่ memaslap ทดสอบหลายตัว
เซิร์ฟเวอร์ ข้อจำกัดเพียงอย่างเดียวคือจำนวนเซิร์ฟเวอร์ไม่สามารถมากกว่า
จำนวนเธรด อีกวิธีหนึ่งในการทดสอบเซิร์ฟเวอร์หลายเครื่องคือการทดสอบการจำลองแบบ แต่ละ
การทำงานพร้อมกันมีการเชื่อมต่อซ็อกเก็ตเดียวไปยังแต่ละเซิร์ฟเวอร์ memcached สำหรับการนำไปปฏิบัติ
memaslap สามารถตั้งค่าบางอ็อบเจ็กต์เป็นหนึ่งเซิร์ฟเวอร์ memcached และรับอ็อบเจ็กต์เหล่านี้จาก
เซิร์ฟเวอร์อื่นๆ

โดยค่าเริ่มต้น Memslap จะได้รับครั้งเดียว หากผู้ใช้ระบุตัวเลือกการรับหลายตัว memaslap จะ
รวบรวมพอรับคำสั่งและแพ็คและส่งคำสั่งด้วยกัน

Memslap ทดสอบทั้งโปรโตคอล ASCII และโปรโตคอลไบนารี แต่ทำงานบน ASCII
โปรโตคอลโดยค่าเริ่มต้น Memslap โดยค่าเริ่มต้นจะทำงานบนโปรโตคอล TCP แต่ยังทดสอบ UDP
เนื่องจาก UDP ไม่น่าเชื่อถือ แพ็คเกจที่ตกหล่นและแพ็คเกจที่ไม่เป็นระเบียบอาจเกิดขึ้น เมมสแลป
สร้างบัฟเฟอร์หน่วยความจำเพื่อจัดการกับปัญหาเหล่านี้ Memslap พยายามอ่านคำตอบทั้งหมด
ข้อมูลของคำสั่งเดียวจากเซิร์ฟเวอร์และจัดลำดับข้อมูลการตอบสนองใหม่ หากบางแพ็คเกจได้รับ
หายไปกลไกการหมดเวลารอสามารถมั่นใจได้ว่าแพ็คเกจที่อบครึ่งหนึ่งจะถูกยกเลิกและ
คำสั่งต่อไปจะถูกส่ง

การใช้


ด้านล่างนี้คือตัวอย่างการใช้งานบางส่วน:

memaslap -s 127.0.0.1:11211 -S 5 วินาที

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

memaslap -s 127.0.0.1:11211 -F กำหนดค่า -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F กำหนดค่า -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F กำหนดค่า -t 2m -d 50 -a -n 40

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

ผู้ใช้ต้องระบุเซิร์ฟเวอร์อย่างน้อยหนึ่งเครื่องเพื่อเรียกใช้ memaslap พารามิเตอร์ที่เหลือมี
ค่าเริ่มต้นดังแสดงด้านล่าง:

หมายเลขเธรด = 1 การทำงานพร้อมกัน = 16

รันไทม์ = 600 วินาที ไฟล์คอนฟิกูเรชัน = NULL

ขนาดคีย์ = 64 ขนาดค่า = 1024

รับ/ชุด = 9:1 ขนาดหน้าต่าง = 10k

ดำเนินการหมายเลข = 0 รับครั้งเดียว = true

Multi-get = false จำนวนซ็อกเก็ตของการทำงานพร้อมกันแต่ละครั้ง = 1

เชื่อมต่อใหม่ = การตรวจสอบข้อมูลเท็จ = false

การตรวจสอบเวลาหมดอายุ = โปรโตคอล ASCII เท็จ = true

โปรโตคอลไบนารี = ข้อมูลสถิติการทุ่มตลาดเท็จ

เป็นระยะ = false

สัดส่วนการเขียนทับ = 0% UDP = false

TCP = จริง จำกัด ปริมาณงาน = false

การทดสอบ Facebook = การทดสอบการจำลองแบบเท็จ = false

คีย์ ขนาด, ความคุ้มค่า ขนาด และ คำสั่ง การกระจาย
การแจกแจงทั้งหมดอ่านจากไฟล์การกำหนดค่าที่ระบุโดยผู้ใช้ with
“—cfg_cmd” ตัวเลือก หากผู้ใช้ไม่ได้ระบุไฟล์การกำหนดค่า memaslap จะทำงาน
ด้วยการกระจายเริ่มต้น (ขนาดคีย์ = 64, ขนาดค่า = 1024, รับ/ตั้งค่า = 9:1) สำหรับ
ข้อมูลเกี่ยวกับวิธีการแก้ไขไฟล์คอนฟิกูเรชัน โปรดดูที่ “ไฟล์คอนฟิกูเรชัน”
มาตรา.

ขนาดคีย์ขั้นต่ำคือ 16 ไบต์; ขนาดคีย์สูงสุดคือ 250 ไบต์ ความแม่นยำของ
สัดส่วน 0.001 สัดส่วนการกระจายจะถูกปัดเศษเป็นทศนิยม 3 ตำแหน่ง

ขนาดค่าต่ำสุดคือ 1 ไบต์; ขนาดค่าสูงสุดคือ 1M ไบต์ ความแม่นยำของ
สัดส่วน 0.001 สัดส่วนการกระจายจะถูกปัดเศษเป็นทศนิยม 3 ตำแหน่ง
ปัจจุบัน memaslap ทดสอบชุดและรับคำสั่งเท่านั้น และทดสอบชุด 100% และรับ 100%
สำหรับการรับ 100% มันจะตั้งค่าออบเจ็กต์บางอย่างไปยังเซิร์ฟเวอร์

มัลติเธรด และ ภาวะพร้อมกัน
ประสิทธิภาพสูงของ memaslap ได้ประโยชน์จากกำหนดการพิเศษของเธรดและ
พร้อมกัน การระบุจำนวนที่เหมาะสมเป็นสิ่งสำคัญ หมายเลขเริ่มต้นของ
เธรดคือ 1; จำนวนเริ่มต้นของการทำงานพร้อมกันคือ 16 ผู้ใช้สามารถใช้ “—threads” และ
“--concurrency” เพื่อระบุตัวแปรเหล่านี้

หากระบบทดสอบการตั้งค่าความสัมพันธ์ของ CPU และจำนวนเธรดที่ผู้ใช้ระบุ
มากกว่า 1 memaslap จะพยายามผูกแต่ละเธรดกับคอร์ CPU ที่แตกต่างกัน ดังนั้นถ้า
คุณต้องการที่จะได้รับ memaslap ประสิทธิภาพที่ดีที่สุด จะดีกว่าที่จะระบุจำนวน
เธรดเท่ากับจำนวนคอร์ของ CPU จำนวนเธรดที่ผู้ใช้ระบุได้
ยังน้อยกว่าหรือมากกว่าจำนวนคอร์ของ CPU เพราะข้อจำกัดของ
การดำเนินการ จำนวนการเกิดพร้อมกันอาจเป็นทวีคูณของจำนวน
หัวข้อ

1. สำหรับระบบแกนซีพียู 8 คอร์

ตัวอย่างเช่น:

--threads=2 --concurrency=128

--threads=8 --concurrency=128

--threads=8 --concurrency=256

--threads=12 --concurrency=144

2. สำหรับระบบแกนซีพียู 16 คอร์

ตัวอย่างเช่น:

--threads=8 --concurrency=128

--threads=16 --concurrency=256

--threads=16 --concurrency=512

--threads=24 --concurrency=288

memaslap ทำงานได้ดีมาก เมื่อใช้ในการทดสอบประสิทธิภาพของเซิร์ฟเวอร์ memcached
โดยส่วนใหญ่ คอขวดคือเครือข่ายหรือเซิร์ฟเวอร์ ถ้าด้วยเหตุผลบางอย่างผู้ใช้
ต้องการจำกัดประสิทธิภาพของ memaslap มีสองวิธีในการทำเช่นนี้:

ลดจำนวนเธรดและการทำงานพร้อมกัน ใช้ตัวเลือก “--tps” ที่ memaslap
ให้เพื่อจำกัดปริมาณงาน ตัวเลือกนี้ช่วยให้ผู้ใช้ได้รับสิ่งที่คาดหวัง
ปริมาณงาน ตัวอย่างเช่น สมมติว่าปริมาณงานสูงสุดคือ 50 kops/s สำหรับรายการเฉพาะ
การกำหนดค่า คุณสามารถระบุปริมาณงานให้เท่ากับหรือน้อยกว่าปริมาณงานสูงสุด
โดยใช้ตัวเลือก “--tps”

หน้าต่าง ขนาด
โดยส่วนใหญ่ ผู้ใช้ไม่จำเป็นต้องระบุขนาดหน้าต่าง หน้าต่างเริ่มต้น
ขนาด 10k. สำหรับ Schooner Memcached ผู้ใช้สามารถระบุขนาดหน้าต่างที่แตกต่างกันเพื่อรับ
อัตราการพลาดแคชที่แตกต่างกันขึ้นอยู่กับกรณีทดสอบ Memslap ทดสอบแคชพลาดอัตราระหว่าง
0% และ 100% หากคุณใช้ยูทิลิตี้นี้เพื่อทดสอบประสิทธิภาพของ Schooner Memcached คุณ
สามารถระบุขนาดหน้าต่างที่เหมาะสมเพื่อรับอัตราการพลาดแคชที่คาดไว้ สูตรสำหรับ
การคำนวณขนาดหน้าต่างเป็นดังนี้:

สมมติว่าขนาดคีย์คือ 128 ไบต์ และขนาดค่าคือ 2048 ไบต์ และ
พร้อมกัน=128.

1. แคชขนาดเล็ก cache_size=1M, 100% cache miss (ข้อมูลทั้งหมดได้รับจาก SSD) win_size=10k

2. cache_size=4G

(1). แคชพลาดอัตรา 0%

win_size=8k

(2). แคชพลาดอัตรา 5%

win_size=11k

3. cache_size=16G

(1). แคชพลาดอัตรา 0%

win_size=32k

(2). แคชพลาด

ให้คะแนน 5%

win_size=46k

สูตรคำนวณขนาดหน้าต่างสำหรับ cache miss rate 0%:

cache_size / ทำงานพร้อมกัน / (key_size + value_size) * 0.5

สูตรคำนวณขนาดหน้าต่างสำหรับ cache miss rate 5%:

cache_size / ทำงานพร้อมกัน / (key_size + value_size) * 0.7

การตรวจสอบ
Memslap ทดสอบทั้งการตรวจสอบข้อมูลและการตรวจสอบเวลาหมดอายุ ผู้ใช้สามารถใช้
"--verify=" หรือ "-v" เพื่อระบุสัดส่วนของการตรวจสอบข้อมูล ในทางทฤษฎี มันทดสอบ
การตรวจสอบข้อมูล 100% ผู้ใช้สามารถใช้ "--exp_verify=" หรือ "-e" เพื่อระบุสัดส่วน
ของการตรวจสอบเวลาหมดอายุ ตามทฤษฎีแล้ว จะทดสอบการตรวจสอบเวลาหมดอายุ 100% ระบุ
ตัวเลือก "--verbose" เพื่อรับข้อมูลข้อผิดพลาดโดยละเอียดเพิ่มเติม

ตัวอย่างเช่น: --exp_verify=0.01 –verify=0.1 หมายความว่า 1% ของอ็อบเจ็กต์ที่ตั้งค่าด้วย
เวลาหมดอายุ 10% ของวัตถุที่ได้รับจะถูกตรวจสอบ หากได้รับสิ่งของแล้ว
memaslap จะตรวจสอบเวลาหมดอายุและค่า

หลายเซิร์ฟเวอร์ และ หลายการกำหนดค่า
Memslap ทดสอบเซิร์ฟเวอร์หลายเครื่องโดยใช้เธรดที่ควบคุมตนเอง มีข้อจำกัดว่า
จำนวนเซิร์ฟเวอร์ต้องไม่เกินจำนวนเธรด Memslap กำหนดหนึ่ง
เธรดเพื่อจัดการเซิร์ฟเวอร์อย่างน้อยหนึ่งเครื่อง ผู้ใช้สามารถใช้ตัวเลือก "--servers=" หรือ "-s" เพื่อ
ระบุหลายเซิร์ฟเวอร์

ตัวอย่างเช่น:

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

คำสั่งด้านบนหมายความว่ามี 6 เธรด โดยแต่ละเธรดมี 6 การทำงานพร้อมกัน
และเธรดนั้น 0 และ 3 จัดการเซิร์ฟเวอร์ 0 (10.1.1.1) เธรด 1 และ 4 จัดการเซิร์ฟเวอร์ 1
(10.1.1.2); และเธรดที่ 2 และ 5 จัดการเซิร์ฟเวอร์ 2 (10.1.1.3)

เธรดและการทำงานพร้อมกันทั้งหมดใน memaslap นั้นควบคุมตนเอง

memaslap ก็เช่นกัน ผู้ใช้สามารถเริ่มต้นอินสแตนซ์ memaslap ได้หลายอินสแตนซ์ ผู้ใช้สามารถเรียกใช้
memaslap บนเครื่องไคลเอนต์ต่าง ๆ เพื่อสื่อสารกับเซิร์ฟเวอร์ memcached เดียวกันที่
เหมือนกัน. ขอแนะนำให้ผู้ใช้เริ่ม memaslap ที่แตกต่างกันบนเครื่องต่างๆ โดยใช้
การกำหนดค่าเดียวกัน

วิ่ง กับ ดำเนินการ จำนวน โหมด or เวลา โหมด
memaslap เริ่มต้นทำงานด้วยโหมดเวลา เวลาทำงานเริ่มต้นคือ 10 นาที ถ้าถึงเวลา
ออก memaslap จะออก อย่าระบุทั้งโหมดตัวเลขและโหมดเวลาพร้อมกัน
เวลา; เพียงระบุหนึ่งรายการแทน

ตัวอย่างเช่น:

--time=30s (หมายความว่าการทดสอบจะทำงาน 30 วินาที)

--execute_number=100000 (หมายความว่าหลังจากรันคำสั่ง 100000 คำสั่ง การทดสอบจะออก)

การถ่ายโอนข้อมูล สถิติ ข้อมูล เป็นระยะ
ผู้ใช้สามารถใช้ "--stat_freq=" หรือ "-S" เพื่อระบุความถี่ได้

ตัวอย่างเช่น:

--stat_freq=20 วินาที

Memslap จะดัมพ์สถิติของคำสั่ง (get and set) ที่ความถี่ของทุก ๆ
20 วินาที

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับรูปแบบของข้อมูลสถิติการทุ่มตลาด โปรดดูที่ “รูปแบบของ
ส่วนผลลัพธ์”

หลายรับ
ผู้ใช้สามารถใช้ "--division=" หรือ "-d" เพื่อระบุจำนวนคีย์ multi-get Memslap โดย
ค่าเริ่มต้นเดียวได้รับด้วย TCP Memslap ยังทดสอบการตรวจสอบข้อมูลและเวลาหมดอายุ
การยืนยันการรับหลายรายการ

Memslap ทดสอบ multi-get ทั้ง TCP และ UDP เนื่องจากการใช้งานที่แตกต่างกันของ
โปรโตคอล ASCII และโปรโตคอลไบนารี มีความแตกต่างบางประการระหว่างทั้งสอง สำหรับ
โปรโตคอล ASCII memaslap จะส่ง "multi-get" หนึ่งรายการไปยังเซิร์ฟเวอร์หนึ่งครั้ง สำหรับเลขฐานสอง
โปรโตคอล memaslap ส่งคำสั่ง get หลายตัวพร้อมกันเป็น "multi-get" ไปยัง
เซิร์ฟเวอร์

UDP และ TCP
Memslap ทดสอบทั้ง UDP และ TCP สำหรับ TCP memaslap จะไม่เชื่อมต่อเซิร์ฟเวอร์ memcached อีกครั้ง
หากขาดการเชื่อมต่อซ็อกเก็ต หากการเชื่อมต่อซ็อกเก็ตทั้งหมดสูญหายหรือเซิร์ฟเวอร์ memcached
ขัดข้อง memaslap จะออก หากผู้ใช้ระบุตัวเลือก “--เชื่อมต่อใหม่” เมื่อ socket
ขาดการเชื่อมต่อ มันจะเชื่อมต่อใหม่

ผู้ใช้สามารถใช้ “--udp” เพื่อเปิดใช้งานคุณสมบัติ UDP ได้ แต่ UDP มาพร้อมกับข้อจำกัดบางประการ:

UDP ไม่สามารถตั้งค่าข้อมูลได้มากกว่า 1400 ไบต์

UDP ไม่ได้รับการทดสอบโดยโปรโตคอลไบนารีเนื่องจากโปรโตคอลไบนารีของ memcached ไม่
ไม่ได้ทดสอบว่า

UDP ไม่ได้ทดสอบการเชื่อมต่อใหม่

Facebook ทดสอบ
ตั้งค่าข้อมูลด้วย TCP และ multi-get ด้วย UDP ระบุตัวเลือกต่อไปนี้:

"--facebook --ดิวิชั่น=50"

หากคุณต้องการสร้างการเชื่อมต่อ TCP นับพัน ให้ระบุ

"--conn_sock=" ตัวเลือก

ตัวอย่างเช่น: --facebook --division=50 --conn_sock=200

คำสั่งด้านบนหมายความว่า memaslap จะทำการทดสอบ facebook แต่ละ concurrency มี200
การเชื่อมต่อซ็อกเก็ต TCP และหนึ่งซ็อกเก็ต UDP

Memslap ตั้งค่าอ็อบเจ็กต์ด้วยซ็อกเก็ต TCP และรับ 50 อ็อบเจ็กต์หลายครั้งด้วย UDP
เบ้า.

หากคุณระบุ "--division=50" ขนาดคีย์ต้องน้อยกว่า 25 ไบต์เนื่องจาก UDP
ขนาดแพ็กเก็ตคือ 1400 ไบต์

การทำซ้ำ ทดสอบ
สำหรับการทดสอบการจำลอง ผู้ใช้ต้องระบุเซิร์ฟเวอร์ memcached อย่างน้อยสองเซิร์ฟเวอร์ ผู้ใช้สามารถ
ใช้ตัวเลือก “—rep_write=" เพื่อเปิดใช้งานคุณสมบัติ

ตัวอย่างเช่น:

--เซิร์ฟเวอร์=10.1.1.1:11211,10.1.1.2:11212 –rep_write=2

คำสั่งข้างต้นหมายความว่ามีเซิร์ฟเวอร์ memcached การจำลองแบบ 2 เซิร์ฟเวอร์ memaslap จะตั้งค่า
ออบเจ็กต์ไปยังทั้งเซิร์ฟเวอร์ 0 และเซิร์ฟเวอร์ 1 รับอ็อบเจ็กต์ที่ตั้งค่าเป็นเซิร์ฟเวอร์ 0 ก่อนจาก
เซิร์ฟเวอร์ 1 และยังรับวัตถุที่ตั้งค่าเป็นเซิร์ฟเวอร์ 1 ก่อนจากเซิร์ฟเวอร์ 0 หากเซิร์ฟเวอร์ 0
ขัดข้อง memaslap จะได้รับวัตถุจากเซิร์ฟเวอร์ 1 เท่านั้น หากเซิร์ฟเวอร์ 0 ฟื้นคืนชีพ
อีกครั้ง memaslap จะเชื่อมต่อเซิร์ฟเวอร์ 0 อีกครั้ง หากทั้งเซิร์ฟเวอร์ 0 และเซิร์ฟเวอร์ 1 ขัดข้อง memaslap
จะออก

รองรับ พัน of TCP การเชื่อมต่อ
เริ่ม memaslap ด้วย "--conn_sock=" หรือ "-n" เพื่อเปิดใช้งานคุณลักษณะนี้ ตรวจสอบให้แน่ใจว่า .ของคุณ
ระบบสามารถทดสอบการเปิดไฟล์นับพันและสร้างซ็อกเก็ตได้นับพัน อย่างไรก็ตาม,
คุณลักษณะนี้จะไม่ทดสอบการเชื่อมต่อใหม่หากซ็อกเก็ตตัดการเชื่อมต่อ

ตัวอย่างเช่น:

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

คำสั่งดังกล่าวหมายความว่า memaslap เริ่มต้น 8 เธรด แต่ละเธรดมี 16
concurrency แต่ละ concurrency มี 128 TCP socket connection และจำนวนทั้งหมด
การเชื่อมต่อซ็อกเก็ต TCP คือ 128 * 128 = 16384

รองรับ ไบนารี โปรโตคอล
เริ่ม memaslap ด้วยตัวเลือก "--ไบนารี" หรือ "-B" เพื่อเปิดใช้งานคุณสมบัตินี้ มันทดสอบทั้งหมด
คุณสมบัติข้างต้นยกเว้น UDP เนื่องจาก memcached ล่าสุด 1.3.3 ไม่ได้ใช้ไบนารี
โปรโตคอล UDP

ตัวอย่างเช่น:

--ไบนารี่

เนื่องจาก memcached 1.3.3 ไม่ได้ใช้โปรโตคอล UDP แบบไบนารี memaslap จึงไม่ทดสอบ UDP
นอกจากนี้ memcached 1.3.3 ไม่ได้ทดสอบการรับหลายรายการ หากคุณระบุ "--division=50"
ตัวเลือกมันเพียงแค่ส่ง 50 คำสั่งร่วมกันเป็น “mulit-get” ไปยังเซิร์ฟเวอร์

การกำหนดค่า ไฟล์


ส่วนนี้อธิบายรูปแบบของไฟล์การกำหนดค่า โดยค่าเริ่มต้นเมื่อไม่มี
มีการระบุไฟล์การกำหนดค่า memaslap อ่านค่าเริ่มต้นที่อยู่ที่ ~/.memaslap.cnf.

ด้านล่างนี้คือไฟล์การกำหนดค่าตัวอย่าง:

-------------------------------------------------- -------------------------
#ความคิดเห็นควรเริ่มต้นด้วย '#'
#กุญแจ
#start_len end_len สัดส่วน
#
#ช่วงความยาวของคีย์ตั้งแต่ start_len ถึง end_len
#start_len ต้องเท่ากับหรือมากกว่า 16
#end_len ต้องเท่ากับหรือน้อยกว่า 250
#start_len ต้องเท่ากับหรือมากกว่า end_len
#memaslap จะสร้างคีย์ตามช่วงคีย์
#proportion: ระบุคีย์ที่สร้างจากบัญชีช่วงหนึ่งสำหรับยอดรวม
สร้างคีย์
#
#example1: ช่วงคีย์ 16~100 บัญชี 80%
# ช่วงคีย์ 101~200 บัญชี 10%
# ช่วงคีย์ 201~250 บัญชี 10%
# ทั้งหมดควรเป็น 1 (0.8+0.1+0.1 = 1)
#
# 16 100
# 101 200
# 201 249
#
#example2: คีย์ทั้งหมดมีความยาว 128 ไบต์
#
# 128 128
สำคัญ
128 128 1
#ค่า
#start_len end_len สัดส่วน
#
#value ช่วงความยาวจาก start_len ถึง end_len
#start_len ต้องเท่ากับหรือมากกว่า 1
#end_len ต้องเท่ากับหรือน้อยกว่า 1M
#start_len ต้องเท่ากับหรือมากกว่า end_len
#memaslap จะสร้างค่าตามช่วงค่า
#สัดส่วน: ระบุค่าที่สร้างจากบัญชีช่วงหนึ่งสำหรับ
มูลค่าสร้างทั้งหมด
#
#example1: ช่วงค่า 1~1000 บัญชีสำหรับ 80%
# ช่วงค่า 1001~10000 บัญชี 10%
# ช่วงค่า 10001~100000 บัญชี 10%
# ทั้งหมดควรเป็น 1 (0.8+0.1+0.1 = 1)
#
# 1 1000
# 1001 10000
# 10001 100000
#
#example2: ความยาวของค่าทั้งหมดคือ 128 ไบต์
#
# 128 128
ความคุ้มค่า
2048 2048 1
#ซม
#cmd_type cmd_สัดส่วน
#
#currently memaslap เฉพาะการทดสอบรับและตั้งค่าคำสั่ง
#
#cmd_type
#เซ็ต0
#รับ1
#
#example: ตั้งค่าบัญชีคำสั่ง 50%
# รับบัญชีคำสั่ง 50%
# ทั้งหมดควรเป็น 1 (0.5+0.5 = 1)
#
#cmd
# 0
# 1
cmd
0 0.1
1.0 0.9

FORMAT OF เอาท์พุท


ในตอนเริ่มต้น memaslap จะแสดงข้อมูลการกำหนดค่าบางอย่างดังนี้:

เซิร์ฟเวอร์ : 127.0.0.1:11211

จำนวนกระทู้: 1

พร้อมกัน: 16

เวลาทำงาน: 20s

ขนาดหน้าต่าง: 10k

กำหนดสัดส่วน: set_prop=0.10

รับสัดส่วน: get_prop=0.90

ที่ไหน
เซิร์ฟเวอร์ : "เซิร์ฟเวอร์"
เซิร์ฟเวอร์ที่ใช้โดย memaslap

นับจำนวนเธรด
จำนวนเธรด memaslap ที่รันด้วย

ภาวะพร้อมกัน
จำนวน memaslap ที่ทำงานพร้อมกันทำงานด้วย

เวลาทำงาน
นานแค่ไหนที่จะเรียกใช้ memaslap

ขนาดหน้าต่าง
ขนาดหน้าต่างงานของการทำงานพร้อมกันแต่ละครั้ง

กำหนดสัดส่วน
สัดส่วนของชุดคำสั่ง

ได้สัดส่วน
สัดส่วนของคำสั่งรับ

ผลลัพธ์ของสถิติไดนามิกมีลักษณะดังนี้:

-------------------------------------------------- -------------------------------------------------- -----------------------------
รับสถิติ
พิมพ์ เวลา Ops TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
เฉลี่ย(เรา) Std_dev Geo_dist
งวดที่ 5 345826 69165 65.3 0 27 2198 203
95.43 177.29
โกลบอล 20 1257935 62896 71.8 0 26 3791 224
117.79 192.60

ตั้งค่าสถิติ
พิมพ์ เวลา Ops TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
เฉลี่ย(เรา) Std_dev Geo_dist
งวดที่ 5 38425 7685 7.3 0 42 628 240
88.05 220.21
โกลบอล 20 139780 6989 8.0 0 37 3790 253
117.93 224.83

สถิติทั้งหมด
พิมพ์ เวลา Ops TPS(ops/s) Net(M/s) Get_miss Min(us) Max(us)
เฉลี่ย(เรา) Std_dev Geo_dist
งวดที่ 5 384252 76850 72.5 0 27 2198 207
94.72 181.18
โกลบอล 20 1397720 69886 79.7 0 26 3791 227
117.93 195.60
-------------------------------------------------- -------------------------------------------------- -----------------------------

ที่ไหน
รับสถิติ
ข้อมูลสถิติของคำสั่งรับ

ตั้งค่าสถิติ
ข้อมูลสถิติของชุดคำสั่ง

สถิติทั้งหมด
ข้อมูลสถิติทั้งรับและตั้งค่าคำสั่ง

ระยะเวลา
ผลลัพธ์ภายในระยะเวลา

เหตุการณ์ที่
ผลสะสม

Ops
การดำเนินงานทั้งหมด

TPS
ปริมาณงาน การดำเนินการ/วินาที

สุทธิ
อัตราเครือข่าย

รับ_พลาด
รับสิ่งของกี่ชิ้นไม่ได้

นาที
เวลาตอบสนองขั้นต่ำ

แม็กซ์
เวลาตอบสนองสูงสุด

เฉลี่ย:
เวลาตอบสนองโดยเฉลี่ย

Std_dev
ค่าเบี่ยงเบนมาตรฐานของเวลาตอบสนอง

Geo_dist
การกระจายทางเรขาคณิตตามฟังก์ชันเลขชี้กำลังตามธรรมชาติ

ในตอนท้าย memaslap จะแสดงผลดังนี้:

-------------------------------------------------- -------------------------------------------------- -----------------------------
รับสถิติ (1257956 เหตุการณ์)
ต่ำสุด: 26
สูงสุด: 3791
เฉลี่ย: 224
ภูมิศาสตร์: 192.60
มาตรฐาน: 116.23
บันทึก2 Dist:
4:0 10 84490 215345
8:484890 459823 12543 824
12: 31

ตั้งค่าสถิติ (139782 เหตุการณ์)
ต่ำสุด: 37
สูงสุด: 3790
เฉลี่ย: 253
ภูมิศาสตร์: 224.84
มาตรฐาน: 116.83
บันทึก2 Dist:
4:0 0 4200 16988
8:50784 65574 2064 167
12: 5

สถิติทั้งหมด (1397738 เหตุการณ์)
ต่ำสุด: 26
สูงสุด: 3791
เฉลี่ย: 227
ภูมิศาสตร์: 195.60
มาตรฐาน: 116.60
บันทึก2 Dist:
4:0 10 88690 232333
8:535674 525397 14607 991
12: 36

cmd_get: 1257969
cmd_set: 139785
get_misses: 0
Verify_misses: 0
Verify_failed: 0
หมดอายุ_get: 0
unexpired_unget: 0
ไบต์ที่เขียน: 242516030
read_bytes: 1003702556
object_bytes: 152086080
แพ็กเก็ต_ความผิดปกติ: 0
แพ็กเก็ต_ดรอป: 0
udp_หมดเวลา: 0

รันไทม์: 20.0s ปฏิบัติการ: 1397754 TPS: 69817 Net_rate: 59.4M/s
-------------------------------------------------- -------------------------------------------------- -----------------------------

ที่ไหน
รับสถิติ
รับสถิติเวลาตอบสนอง

ตั้งค่าสถิติ
ตั้งค่าสถิติของเวลาตอบสนอง

สถิติทั้งหมด
ทั้งรับและตั้งค่าสถิติเวลาตอบสนอง

นาที
เวลาตอบสนองที่สะสมและต่ำสุด

แม็กซ์
เวลาตอบสนองที่สะสมและสูงสุด

เฉลี่ย
เวลาตอบสนองที่สะสมและโดยเฉลี่ย

มาตรฐาน
ค่าเบี่ยงเบนมาตรฐานของเวลาตอบสนอง

ล็อก 2 ดิสท
การกระจายทางเรขาคณิตตามลอการิทึม2

cmd_get
รับคำสั่งทั้งหมดเสร็จสิ้น

cmd_set
เสร็จสิ้นคำสั่งชุดทั้งหมด

get_misses
ไม่สามารถรับวัตถุได้กี่ชิ้นจากเซิร์ฟเวอร์

Verify_misses
จำนวนวัตถุต้องตรวจสอบแต่ไม่สามารถรับได้

Verify_failed
วัตถุมีค่ายืนยงกี่ชิ้น

หมดอายุ_get
มีกี่ชิ้นที่หมดอายุ แต่เราได้รับมา

ยังไม่หมดอายุ_unget
มีของกี่ชิ้นที่ยังไม่หมดอายุแต่เราไม่สามารถรับได้

write_bytes
จำนวนไบต์ที่เขียนทั้งหมด

read_bytes
ไบต์ที่อ่านทั้งหมด

object_bytes
ไบต์ของอ็อบเจ็กต์ทั้งหมด

แพ็คเก็ต_disorder
จำนวนแพ็คเกจ UDP ที่ไม่เป็นระเบียบ

แพ็คเก็ต_ดรอป
จำนวนแพ็คเกจ UDP ที่สูญหาย

udp_timeout
หมดเวลา UDP กี่ครั้ง

เรียกใช้เวลา
เวลาทำงานทั้งหมด

Ops
การดำเนินงานทั้งหมด

TPS
ปริมาณงาน การดำเนินการ/วินาที

อัตราสุทธิ
อัตราเฉลี่ยของเครือข่าย

OPTIONS


-NS, --เซิร์ฟเวอร์=
แสดงรายการเซิร์ฟเวอร์อย่างน้อยหนึ่งเครื่องที่จะเชื่อมต่อ จำนวนเซิร์ฟเวอร์ต้องน้อยกว่าจำนวนเธรด
เช่น: --servers=localhost:1234,localhost:11211

-NS, --กระทู้=
จำนวนเธรดที่จะเริ่มต้น ดีกว่า เท่ากับหมายเลข CPU ค่าเริ่มต้น 8

-ค, --การทำงานพร้อมกัน=
จำนวนการทำงานพร้อมกันเพื่อจำลองพร้อมโหลด ค่าเริ่มต้น 128

-NS, --conn_sock=
จำนวนถุงเท้า TCP ต่อการทำงานพร้อมกัน ค่าเริ่มต้น 1

-NS, --execute_number=
จำนวนการดำเนินการ (รับและตั้งค่า) ที่จะดำเนินการสำหรับการทดสอบที่กำหนด ค่าเริ่มต้น 1000000

-NS, --เวลา=
การทดสอบทำงานนานแค่ไหน คำต่อท้าย: s-seconds, m-minutes, h-hours, d-days เช่น:
--เวลา=2ชม.

-NS, --cfg_cmd=
โหลดไฟล์กำหนดค่าเพื่อรับคำสั่ง คีย์ และรายการแจกจ่ายค่า

-w, --win_size=
ขนาดหน้าต่างงานของแต่ละภาวะพร้อมกัน คำต่อท้าย: K, M เช่น: --win_size=10k ค่าเริ่มต้น
10k

-NS, --fixed_size=
ความยาวคงที่ของค่า

-ใน, --ยืนยัน=
สัดส่วนของการยืนยันวันที่ เช่น --verify=0.01

-NS, --ดิวิชั่น=
จำนวนคีย์เพื่อรับหลายครั้ง ค่าดีฟอลต์ 1 หมายถึง single get

-NS, --stat_freq=
ความถี่ของข้อมูลสถิติการทุ่มตลาด คำต่อท้าย: s-seconds, m-minutes เช่น:
--resp_freq=10 วินาที

-e, --exp_verify=
สัดส่วนของอ็อบเจ็กต์ที่มีเวลาหมดอายุ เช่น --exp_verify=0.01 ค่าเริ่มต้น no
วัตถุที่มีเวลาหมดอายุ

-o, --เขียนทับ=
สัดส่วนของวัตถุที่ต้องเขียนทับ เช่น --overwrite=0.01 ค่าเริ่มต้น ไม่เคย
เขียนทับวัตถุ

-R, --เชื่อมต่อใหม่
เชื่อมต่อการทดสอบอีกครั้ง เมื่อปิดการเชื่อมต่อ จะทำการเชื่อมต่อใหม่

-U, --อู๊ด
การทดสอบ UDP, memaslap เริ่มต้นใช้ TCP, พอร์ต TCP และพอร์ต UDP ของเซิร์ฟเวอร์ต้องเหมือนกัน

-a, --เฟสบุ๊ค
ไม่ว่าจะเป็นการเปิดใช้งานคุณสมบัติการทดสอบ facebook ตั้งค่าด้วย TCP และ multi-get ด้วย UDP

-B, --ไบนารี่
ไม่ว่าจะเป็นการเปิดใช้งานโปรโตคอลไบนารี ค่าเริ่มต้นด้วยโปรโตคอล ASCII

-NS, --tps=
ปริมาณงานที่คาดหวัง คำต่อท้าย: K เช่น --tps=10k

-NS, --rep_write=
เซิร์ฟเวอร์ที่ n แรกสามารถเขียนข้อมูลได้ เช่น --rep_write=2

-b, --รายละเอียด
ไม่ว่าจะแสดงข้อมูลรายละเอียดเมื่อการตรวจสอบล้มเหลว

-h, --ช่วยด้วย
แสดงข้อความนี้แล้วออก

-V, --รุ่น
แสดงเวอร์ชันของแอปพลิเคชันแล้วออก

ตัวอย่าง


memaslap -s 127.0.0.1:11211 -S 5 วินาที

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

memaslap -s 127.0.0.1:11211 -F กำหนดค่า -t 2m -w 40k -S 20s -o 0.2

memaslap -s 127.0.0.1:11211 -F กำหนดค่า -t 2m -T 4 -c 128 -d 20 -P 40k

memaslap -s 127.0.0.1:11211 -F กำหนดค่า -t 2m -d 50 -a -n 40

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

หน้าหลัก


หากต้องการทราบข้อมูลเพิ่มเติม โปรดตรวจสอบ: http://libmemcached.org/

ผู้เขียน


หมิงเฉียง จ้วง[ป้องกันอีเมล]> (เทคโนโลยี Schooner) Brian Aker, <‐
[ป้องกันอีเมล]>

ใช้ memcaslap ออนไลน์โดยใช้บริการ onworks.net


เซิร์ฟเวอร์และเวิร์กสเตชันฟรี

ดาวน์โหลดแอพ Windows & Linux

  • 1
    สวก
    สวก
    SWIG คือเครื่องมือพัฒนาซอฟต์แวร์
    ที่เชื่อมโปรแกรมที่เขียนด้วยภาษา C และ
    C++ ที่มีระดับสูงหลากหลาย
    ภาษาโปรแกรม SWIG ใช้กับ
    แตกต่าง...
    ดาวน์โหลด SWIG
  • 2
    WooCommerce Nextjs ตอบสนองธีม
    WooCommerce Nextjs ตอบสนองธีม
    ตอบสนองธีม WooCommerce ที่สร้างขึ้นด้วย
    JS, Webpack, Babel, Node และ . ถัดไป
    Express โดยใช้ GraphQL และ Apollo
    ลูกค้า. ร้านค้า WooCommerce ใน React (
    ประกอบด้วย: สินค้า...
    ดาวน์โหลด WooCommerce Nextjs React Theme
  • 3
    Archlabs_repo
    Archlabs_repo
    แพ็คเกจ repo สำหรับ ArchLabs นี่คือ
    แอปพลิเคชันที่สามารถดึงข้อมูลได้
    ราคาเริ่มต้นที่
    https://sourceforge.net/projects/archlabs-repo/.
    ได้รับการโฮสต์ใน OnWorks ใน...
    ดาวน์โหลด archlabs_repo
  • 4
    โครงการ Zephyr
    โครงการ Zephyr
    โครงการ Zephyr คือคนรุ่นใหม่
    ระบบปฏิบัติการแบบเรียลไทม์ (RTOS) ที่
    รองรับฮาร์ดแวร์หลายตัว
    สถาปัตยกรรม มันขึ้นอยู่กับ
    เคอร์เนลขนาดเล็ก...
    ดาวน์โหลดโครงการ Zephyr
  • 5
    SCCons
    SCCons
    SCons เป็นเครื่องมือสร้างซอฟต์แวร์
    ที่เป็นทางเลือกที่เหนือกว่า
    เครื่องมือสร้าง "Make" แบบคลาสสิกที่
    เราทุกคนรู้จักและชื่นชอบ SCCons คือ
    ดำเนินการก...
    ดาวน์โหลด SCCons
  • 6
    พีเอสอินท์
    พีเอสอินท์
    PSeInt เป็นล่ามรหัสหลอกสำหรับ
    นักศึกษาการเขียนโปรแกรมที่พูดภาษาสเปน
    จุดประสงค์หลักคือเพื่อเป็นเครื่องมือสำหรับ
    การเรียนรู้และทำความเข้าใจพื้นฐาน
    แนวคิด...
    ดาวน์โหลด PSeInt
  • เพิ่มเติม»

คำสั่ง Linux

Ad