Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Kia ora, Habr! He pakipaki tenei ki taku Tuhinga o mua, ka korero ahau mo nga whiringa mo te whakatakoto i nga karere ki nga rarangi ma te whakamahi i te JMeter.

Kei te mahi matou i tetahi pahi raraunga mo tetahi kamupene e haangai nui ana. Nga momo ahua tono, whakarereke, ararere uaua. Mo te whakamatautau, me tuku he maha o nga karere ki te rarangi. Ma te ringaringa he mamae e kore e taea e nga chiropractor katoa te hapai.

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Whakataki

Ahakoa me whakakororia e au tenei mamae i te tuatahi. I timata katoa me RFHUtil. He kaha, engari he kino, he whakamataku: Ae, e mohio ana koe ki a Rus.

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

He mea nui i etahi wa, engari kei te heke haere tonu ina whakamahia kaha.
Ko te whakamatautau ngawari kaore e taea ki a ia.

Ma te JMeter kua ngawari nga mea katoa. Whai muri i te wahanga tuatahi o te mohio me te waia ki a ia, ka tiimata te tumanako mo te whakamatautau hari.

Kei te kaha ahau ki te whakamahi i nga tauira JMS Publisher me JMS Kaiohauru. Kaore i rite ki te JMS Point-to-Point, he pai ake te whakamahi i tenei takirua. Hei tauira, me te Kaiohauru i te Kaiwhiri JMS ka taea e koe te tohu i tetahi taurangi, engari me te Tohu-ki-Ira kaore e taea e koe (kaore ranei tenei tikanga e tino kitea).

Te whakarite tauira

JMS Kaiwhakaputa

  • Tatūnga - Ia Tauira. Apache kupu tohutohu whakamahia tenei whiringa mena ka tohua nga rarangi/kaupapa ma nga taurangi.
  • Whakamutunga (ms) = 120000. Ki te rahua, ka ngaro nga tono whakamatautau i te rarangi i muri i te 2 meneti.
  • Whakamahia te aratau tuku-kore? - pono. IBM whakaaetiaKo taua aratau tohe ka whakarite kia tiakina pono nga karere kua tukuna mena ka rahua ohorere. Na te whakawhiti tere i roto i te aratau kore-mau. Mo nga kaupapa whakamatautau, he mea nui ake te tere.

I ia Kaiwhakaputa ka whakatakotoria e ahau he taonga jms ka whakamahia e te Kaiohauru ki te Kaiwhiri JMS. Mo ia tukunga, ka hangaia he uara matapōkere ki te huānga mahere whakamātautau Tawhā Kaiwhakamahi:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Ma tenei ka tino mohio koe kua panuihia te karere tika.

Ko te "patea" whakamutunga o te Kaiwhakaputa JMS i whirihora-mua:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Kaiohauru JMS

  • Tatūnga - Ia Tauira. Kaati, ka marama koe.
  • Timeout (ms) = 100000. Ki te kore te tono e tae mai ki te rarangi i muri i te 100 hēkona o te tatari, katahi ka he.
  • Kati i waenganui i nga tauira? - pono.

Kaiwhiri JMS - tino watea mea. Kaiohauru JMS Whakamutunga:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Me pehea te mahi ki te reta a Cyrillic i roto i nga karere tuku. I roto i te JMeter, ma te taunoa, i muri i te panuitanga, ka whakaatuhia kopikopiko. Hei karo i tenei me te pai ki te nui me te kaha i nga wa katoa me nga waahi katoa, me:

  1. Taapirihia he tohenga JVM ki te "kaiwhakarewa" JMeter:
    -Dfile.encoding=UTF-8
  2. Taapirihia te JSR223 PostProcessor ki te Kaiohauru me te raina groovy:
    prev.setDataEncoding("UTF-8")

Tukuna kupu

Ko te kōwhiringa mangere. He pai mo te patuiro i nga whakamatautau hou kua tuhia. Mo nga keehi ranei ka hiahia koe ki te tuku i tetahi mea iti rawa. Kōwhiri kōwhiringa Puna karere - Textarea ka waiho te tinana o te karere ki roto i te paraka kupu:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Whakawhiti kōnae

Ko te kōwhiringa tino noa. He pai mo te nuinga o nga ahuatanga. Kōwhiri kōwhiringa Puna karere - Mai i te konae me tohu te ara ki te karere i te mara Kōnae - Ingoa Kōnae:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Te whakawhiti i te konae ki te mara kuputuhi

Ko te kōwhiringa tino whai kiko. He pai mo te nuinga o nga ahuatanga + ka taea te whakamahi i te JMS Point-to-Point kaore he whiringa tuku tuarua:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Te whakawhiti i te huinga paita

Ko te kōwhiringa tino uaua. He pai mo te tirotiro i te tuku tika o nga tono ki raro ki te paita, kaore he whakakorikori, SMS me te raruraru. Kare e taea e koe tenei i te JMeter taunoa. konei I tino korerotia mai ki ahau mo tenei.

Na me tango e au puna me te whakarereke waehere Kaiohauru JMS.

I whakakapihia i roto i te tikanga extractContent(..) raina:

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

runga:

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);
}

ka hanga ano a JMeter.

Ko nga mea e toe ana ko te taapiri i etahi tauira JSR223. Ko te mea tuatahi kei mua i te takirua Kaiwhakaputa/Kaiohauru ki te hanga i tetahi konae DAT kei roto nga paita matapōkere:

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");
        }

Ko te tuarua - i te mutunga o te tuhinga, ka mukua te konae:

import java.io.File;

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

A kaua e wareware ki te taapiri i te ara ki te konae kei Publisher:

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Me hoki he haki i roto i te JSR223 Assertion for Subscriber - whakatairitehia nga paita puna me era ka tae ki te rarangi o te kaiwhiwhi:

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;
	}

mutunga

I whakaahuahia e ahau nga huarahi e wha ki te tuku karere ki nga rarangi, ka whakamahia e au ia ra i roto i nga mahi. Te ti'aturi nei au na enei korero ka ngawari ake to oranga. I te wa e haere tonu ana, ka whakamahere ahau ki te korero mo taku wheako ki te whakamatautau i tetahi whakawhitinga kei reira he rarangi i tetahi pito me tetahi papaarangi, punaha konae ranei i tetahi atu.

Whakaorangia to wa. Na ka mihi mo to aro.

Tūtira me JMeter: tiritahi me te Kaituku me te Kaiohauru

Source: will.com

Tāpiri i te kōrero