Bonjou, Habr! Sa a se yon fen nan mwen an piblikasyon anvan, nan ki mwen pral pale sou opsyon pou mete mesaj nan keu lè l sèvi avèk JMeter.
Nou ap fè yon otobis done pou yon gwo konpayi federal. Divès fòma demann, transfòmasyon, routage konplike. Pou tès, ou bezwen voye anpil mesaj nan keu la. Manyèlman se yon doulè ke se pa tout kiropratisyen ka okipe.
Entwodiksyon
Malgre ke mwen te oblije sipòte doulè sa a nan premye. Tout bagay te kòmanse ak RFHUtil. Pwisan, men gòch ak pè: Oke, ou konnen Ris.
Endispansab nan kèk ka, men piti piti dekline nan ka ta gen itilizasyon aktif.
Tès pratik se enposib ak li.
Avèk JMeter tout bagay vin pi fasil. Apre premye etap la nan metrize ak abitye ak li, espwa te kòmanse dimanchye pou tès kè kontan.
Mwen aktivman itilize JMS Publisher ak echantiyon JMS Subscriber yo. Kontrèman ak JMS Point-to-Point, pè sa a te sanble pi pratik pou itilize. Pa egzanp, avèk Subscriber nan JMS Selector ou ka presize yon varyab, men ak Point-to-Point ou pa kapab (oswa metòd sa a pa trè evidan).
Prepare echantiyon yo
JMS Piblikatè
Enstalasyon - Chak echantiyon. Apache rekòmande itilize opsyon sa a si ke moun kap kriye/sijè yo espesifye atravè varyab.
Expiration (ms) = 120000. Nan ka echèk, demann tès yo pral disparèt nan keu la apre 2 minit.
Sèvi ak mòd livrezon ki pa pèsistan? - vre. IBM apwouvemòd ki pèsistan asire prezèvasyon serye nan mesaj transmèt nan evènman an nan yon echèk toudenkou. Ak pi vit echanj nan mòd ki pa pèsistan. Pou rezon tès, vitès la pi enpòtan.
Nan chak Piblikatè mwen mete yon pwopriyete jms ke Abònen a pral itilize nan Seleksyon JMS la. Pou chak soumèt, yo pwodwi yon valè o aza nan eleman plan tès Paramèt itilizatè a:
Nan fason sa a ou ka asire w ke mesaj ki kòrèk la li.
"Vid" final la nan yon Editè JMS ki te deja konfigirasyon:
JMS abònen
Enstalasyon - Chak echantiyon. Oke, ou konprann.
Timeout (ms) = 100000. Si demann lan pa rive nan keu a apre 100 segonn nan ap tann, Lè sa a, yon bagay ale mal.
Sispann ant echantiyon yo? - vre.
JMS Seleksyon - byen pratik bagay. Final JMS abònen:
Ki jan fè fas ak alfabè a sirilik nan mesaj transmèt. Nan JMeter, pa default, apre koreksyon, li parèt kwochi. Pou evite sa a epi jwi gwo ak pwisan toujou ak tout kote, ou bezwen:
Ajoute yon agiman JVM nan "lanseur" JMeter:
-Dfile.encoding=UTF-8
Ajoute JSR223 PostProcessor nan abònen ak liy groovy:
prev.setDataEncoding("UTF-8")
Voye tèks
Opsyon ki pi parese. Apwopriye pou debogaj tès ki fèk ekri. Oswa pou ka lè ou bezwen voye omwen yon ti bagay. Chwazi opsyon Sous mesaj - Textarea epi mete kò mesaj la nan yon blòk tèks:
File transfè
Opsyon ki pi komen. Apwopriye pou pifò senaryo. Chwazi opsyon Sous mesaj - Soti nan dosye epi endike chemen mesaj la nan jaden an File - Non fichye:
Transfere yon dosye nan yon jaden tèks
Opsyon ki pi versatile. Apwopriye pou pifò senaryo + yo ka itilize nan JMS Point-to-Point kote pa gen okenn dezyèm opsyon voye:
Pase yon etalaj byte
Opsyon ki pi difisil. Apwopriye pou tcheke transmisyon infaillibl egzat demann desann nan byte a, san yo pa distòsyon, SMS ak perturbation. Ou pa pral kapab fè sa nan JMeter default la. isit la Mwen te definitivman te di sou sa a.
Se konsa, mwen te oblije telechaje sous epi modifye kòd JMS abònen.
Ranplase nan metòd la extractContent(..) liy:
buffer.append(bytesMessage.getBodyLength() + " bytes received in BytesMessage");
Mwen te dekri kat fason yo voye mesaj nan keu, ke mwen itilize chak jou nan pratik. Mwen espere enfòmasyon sa yo fè lavi ou pi fasil. An kontinyasyon, mwen planifye pou pale sou eksperyans mwen nan tès yon echanj kote gen yon keu nan yon bout ak yon baz done oswa sistèm dosye nan lòt la.