Ilarak eta JMeter: Publisher eta Subscriber-ekin partekatzea
Kaixo, Habr! Hau nire segida da aurreko argitalpena, eta bertan JMeter erabiliz mezuak ilaretan jartzeko aukerei buruz hitz egingo dut.
Enpresa federal handi baterako datu-bus bat egiten ari gara. Hainbat eskaera formatu, eraldaketa, bideratze korapilatsua. Proba egiteko, ilarara mezu asko bidali behar dituzu. Eskuz kiropraktiko guztiek kudeatu dezaketen mina da.
Sarrera
Hasieran min hori jasan behar izan nuen arren. RFHUtil-ekin hasi zen dena. Indartsua, baina baldar eta beldurgarria: Beno, ezagutzen duzu Rus.
Ezinbestekoa da kasu batzuetan, baina erabilera aktiboaren kasuan etengabe murrizten.
Proba erosoa ezinezkoa da horrekin.
JMeterrekin dena erraztu da. Masterizatu eta ohitzeko lehen etaparen ondoren, proba zoriontsuetarako itxaropena argitzen hasi zen.
JMS Publisher eta JMS Subscriber laginak aktiboki erabiltzen ditut. JMS Point-to-Point ez bezala, bikote hau erabiltzeko erosoagoa zirudien. Adibidez, Subscriber-en JMS Selector-en aldagai bat zehaztu dezakezu, baina Point-to-Point-ekin ezin (edo metodo hau ez da oso agerikoa).
Laginak prestatzea
JMS argitaletxea
Konfigurazioa - Lagin bakoitza. Apache gomendatzen du erabili aukera hau ilarak/gaiak aldagaien bidez zehazten badira.
Bidalketa modu iraunkorra erabili? - egia. IBM erreklamazioakmodu iraunkor horrek transmititutako mezuen kontserbazio fidagarria bermatzen du bat-bateko hutsegiterik gertatuz gero. Eta truke azkarragoa modu iraunkorrean. Proba egiteko, abiadura garrantzitsuagoa da.
Argitaratzaile bakoitzean Harpidedunak JMS Hautatzailean erabiliko duen jms propietate bat ezarri dut. Bidalketa bakoitzeko, ausazko balio bat sortzen da Erabiltzaile-parametroak proba-planaren elementuan:
Modu honetan mezu zuzena irakurri dela ziurtatu dezakezu.
Aurrez konfiguratutako JMS Publisher baten azken "hutsak":
Denbora-muga (ms) = 100000. Eskaera ilarara iristen ez bada 100 segundo itxaron ondoren, zerbait gaizki joan da.
Lagin artean gelditu? - egia.
JMS hautatzailea - nahiko erosoa gauza. Azken JMS harpideduna:
Igorritako mezuetan alfabeto zirilikoari nola aurre egin. JMeter-en, lehenespenez, zuzenketa egin ondoren, oker bistaratzen da. Hori saihesteko eta handiz eta indartsuaz beti eta nonahi gozatzeko, honako hau egin behar duzu:
Gehitu JVM argumentu bat JMeter "abiarazleari":
-Dfile.encoding=UTF-8
Gehitu JSR223 PostProcessor harpidedunari lerro groovy batekin:
prev.setDataEncoding("UTF-8")
Bidali testua
Aukera alferena. Idatzi berri diren probak arazketarako egokia. Edo gutxienez zerbait txikia bidali behar duzun kasuetarako. Hautatu aukera Mezuaren iturria - Textarea eta jarri mezuaren gorputza testu bloke batean:
Fitxategien transferentzia
Aukera ohikoena. Eszenatoki gehienetarako egokia. Hautatu aukera Mezuaren iturria - Fitxategitik eta adierazi eremuan mezuaren bidea Fitxategia - Fitxategiaren izena:
Fitxategi bat testu-eremu batera transferitzea
Aukera polifazetikoa. Eszenatoki gehienetarako egokia + JMS Point-to-Point-en erabil daiteke bigarren bidalketa aukerarik ez dagoenean:
Byte array bat pasatzea
Aukerarik zailena. Byterainoko eskaeren zehaztasunik gabeko transmisioa egiaztatzeko egokia, distortsio, SMS eta perturbaziorik gabe. Ezin izango duzu hori egin JMeter lehenetsian. Hemen Zalantzarik gabe, honi buruz esan zidaten.
Beraz, deskargatu behar izan nuen iturriak eta aldatu kodea JMS Harpideduna.
Metodoan ordezkatua extractContent(..) lerroa:
buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");
JSR223 Sampler pare bat gehitzea besterik ez da geratzen. Lehenengoa Argitaratzailea/Harpidedun bikotearen aurretik dago ausazko byteak dituen DAT fitxategi bat sortzeko:
Mezuak ilaretara bidaltzeko lau modu deskribatu nituen, praktikan egunero erabiltzen ditudanak. Espero dut informazio honek zure bizitza erraztea. Jarraian, mutur batean ilara bat dagoen eta bestean datu-base edo fitxategi sistema bat dagoen truke bat probatzeko esperientziari buruz hitz egiteko asmoa dut.
Aurreztu denbora. Eta eskerrik asko zure arretagatik.