Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Ndewo, Habr! Nke a bụ usoro nke m mbipụta gara aga, nke m ga-ekwu maka nhọrọ maka itinye ozi n'ahịrị na-eji JMeter.

Anyị na-eme ụgbọ ala data maka nnukwu ụlọ ọrụ gọọmenti etiti. Ụdị arịrịọ dị iche iche, mgbanwe, ụzọ mgbagwoju anya. Maka nnwale, ịkwesịrị izipu ọtụtụ ozi na kwụ n'ahịrị. Iji aka bụ ihe mgbu nke ọ bụghị onye chiropractor ọ bụla nwere ike ijikwa.

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Okwu Mmalite

Ọ bụ ezie na m ga-anagide ihe mgbu a na mbụ. Ọ malitere na RFHUtil. Dị ike, ma dị egwu na egwu: Ọfọn, ị maara Rus.

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Ọ dị mkpa n'ọnọdụ ụfọdụ, mana ọ na-agbadata nwayọ ma ọ bụrụ na ejiri ya mee ihe.
Nnwale dị mma agaghị ekwe omume na ya.

Na JMeter ihe niile adịla mfe. Mgbe ọkwa mbụ nke ịmụta na ịmara ya, olileanya malitere ịmalite maka ule obi ụtọ.

M na-eji JMS Publisher na JMS debanyere aha samplers. N'adịghị ka JMS Point-to-point, ụzọ abụọ a dị ka ọ dabara adaba iji. Dịka ọmụmaatụ, na onye debanyere aha na JMS Selector ị nwere ike ịkọwapụta mgbanwe, mana site na Point-to-point ị nweghị ike (ma ọ bụ usoro a abụghị nke doro anya).

Na-akwado samplers

Onye nbipụta JMS

  • Ntọala - Nlereanya ọ bụla. Apache na-atụ aro jiri nhọrọ a ma ọ bụrụ na akọwapụtara ahịrị / isiokwu site na mgbanwe.
  • Mmebi (ms) = 120000. Ọ bụrụ na ọdịda, arịrịọ ule ga-apụ n'anya n'ahịrị mgbe nkeji 2 gachara.
  • Jiri ụdị nnyefe anaghị adịgide adịgide? - eziokwu. IBM kwadorona ọnọdụ na-adịgide adịgide na-eme ka a hụ na nchekwa nke ozi ndị a pụrụ ịdabere na ya na ihe omume ọdịda mberede. Na mgbanwe ngwa ngwa na ọnọdụ na-adịghị adịgide adịgide. Maka ebumnuche nnwale, ọsọ dị mkpa karịa.

N'ime onye mbipụta ọ bụla, m na-edobe ngwongwo jms nke onye debanyere aha ga-eji na JMS Selector. Maka nrubeisi nke ọ bụla, a na-ewepụta uru na-enweghị usoro na mmewere atụmatụ nnwale Onye ọrụ:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

N'ụzọ dị otú a ị pụrụ ijide n'aka na a na-agụ ozi ziri ezi.

“Oghere” ikpeazụ nke onye mbipụta JMS ahaziburu:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Onye debanyere aha JMS

  • Ntọala - Nlereanya ọ bụla. Ọfọn, ị ghọtara.
  • Oge nkwụsị (ms) = 100000. Ọ bụrụ na arịrịọ ahụ abịaghị na kwụ n'ahịrị mgbe 100 sekọnd nke nchere, mgbe ahụ ihe na-ezighị ezi.
  • Kwụsị n'etiti ihe atụ? - eziokwu.

JMS Selector - ọ dabara nke ọma ihe. Onye debanyere aha JMS ikpeazụ:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Otu esi eme ihe gbasara mkpụrụedemede Cyrillic na ozi ekesara. Na JMeter, na ndabara, ka emechara ya, a na-egosipụta ya n'ụzọ gbagọrọ agbagọ. Iji zere nke a ma nwee ọmarịcha na ike mgbe niile na ebe niile, ịkwesịrị:

  1. Tinye arụmụka JVM na "onye na-ebupụta" JMeter:
    -Dfile.encoding=UTF-8
  2. Tinye JSR223 PostProcessor na onye debanyere aha nwere ahịrị dị egwu:
    prev.setDataEncoding("UTF-8")

Zipu ederede

Nhọrọ kacha umengwụ. Kwesịrị ekwesị maka ihichapụ ule edere ọhụrụ. Ma ọ bụ maka ikpe mgbe ịchọrọ izipu opekata mpe ihe. Họrọ nhọrọ Isi mmalite ozi - Textarea ma tinye ahụ nke ozi ahụ na ngọngọ ederede:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Nyefe faịlị

Nhọrọ kachasị. Kwesịrị ekwesị maka ọtụtụ ọnọdụ. Họrọ nhọrọ Isi mmalite ozi - Site na faịlụ ma gosi ụzọ nke ozi dị n'ọhịa Faịlụ - Aha faịlụ:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Ịnyefe faịlụ na mpaghara ederede

Nhọrọ kachasị mma. Kwesịrị ekwesị maka ọtụtụ ọnọdụ + enwere ike iji na JMS Point-to-point ebe enweghị nhọrọ izipu nke abụọ:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Na-agafe n'usoro byte

Nhọrọ kacha sie ike. Kwesịrị ekwesị maka ịlele nnyefe arịrịọ na-ezighi ezi ruo na byte, na-enweghị mgbagha, SMS na mkpasu iwe. Ị gaghị enwe ike ime nke a na ndabara JMeter. ebe a A gwara m gbasara nke a.

Ya mere m ga-ebudata isi mmalite ma gbanwee koodu Onye debanyere aha JMS.

Dochiri na usoro extractContent(..) ahịrị:

buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");

na:

byte[] bytes = new byte[(int) bytesMessage.getBodyLength()];
bytesMessage.readBytes(bytes);
try {
	buffer.append(new String(bytes, "UTF-8"));
} catch (UnsupportedEncodingException e) {
	throw new RuntimeException(e);
}

ma wughachi JMeter.

Naanị ihe fọdụrụ bụ ịgbakwunye ole na ole JSR223 Samplers. Nke mbụ bụ n'ihu otu ụzọ mbipụta akwụkwọ / ndị debanyere aha ka imepụta faịlụ DAT nwere bytes enweghị usoro:

import org.apache.commons.lang3.RandomUtils;

import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;

vars.put("PATH_TO_BYTES", "C:temprandomBytes.dat");
File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
byte[] arr = RandomUtils.nextBytes((int)(Math.random()*10000));
        try {
            FileOutputStream fos = new FileOutputStream(RESULT_FILE);
            fos.write(arr);
            fos.close();
        } catch (IOException e) {
            System.out.println("file not found");
        }

Nke abụọ - na njedebe nke edemede ahụ, na-ehichapụ faịlụ:

import java.io.File;

File RESULT_FILE = new File(vars.get("PATH_TO_BYTES"));
RESULT_FILE.delete();

Ma echefukwala itinye ụzọ na faịlụ dị na onye nkwusa:

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

Nakwa nlele na nkwuputa JSR223 maka onye debanyere aha - tulee bytes isi iyi na ndị rutere n'ahịrị onye nnata:

import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.Arrays;

Path path = Paths.get(vars.get("PATH_TO_BYTES"), new String[0]);
byte[] originalArray = Files.readAllBytes(path);
byte[] changedArray = ctx.getPreviousResult().getResponseData();
System.out.println(changedArray.length);

if (Arrays.equals(originalArray, changedArray))
	{
     	SampleResult.setResponseMessage("OK");

	} else {
	   SampleResult.setSuccessful(false);
     	   SampleResult.setResponseMessage("Comparison failed");
	   SampleResult.setResponseData("Bytes have changed","UTF-8");
     	   IsSuccess=false;
	}

nkwubi

Akọwara m ụzọ anọ iji zipu ozi na kwụ n'ahịrị, nke m na-eji kwa ụbọchị na-eme ihe. Enwere m olileanya na ozi a ga-eme ka ndụ gị dịkwuo mfe. Na n'ihu, m na-eme atụmatụ ikwu banyere ahụmahụ m nke ịnwale mgbanwe mgbanwe ebe enwere kwụ n'ahịrị na njedebe na nchekwa data ma ọ bụ faịlụ faịlụ na nke ọzọ.

Chekwa oge gị. Daalụ maka nlebara anya gị.

Queues na JMeter: ịkekọrịta ya na onye mbipụta na onye debanyere aha

isi: www.habr.com

Tinye a comment