Acasă Finanțe personale Analizând performanța în Enterprise JavaBeans - dummies

Analizând performanța în Enterprise JavaBeans - dummies

Video: Modular Data Center Supports Ground Breaking Genome Research Analytics | Schneider Electric 2024

Video: Modular Data Center Supports Ground Breaking Genome Research Analytics | Schneider Electric 2024
Anonim

Analiza performanței este probabil una dintre cele mai complexe sarcini în proiectarea oricărei aplicații. Este o știință imprecisă, deoarece există mulți factori care intră în joc. Acestea sunt completate în aplicațiile Enterprise JavaBeans (EJB), în care performanța depinde în mare măsură de implementarea containerului EJB pe care îl utilizați. Concluzia este că nu puteți ști dacă luați deciziile corecte de performanță până când le testați.

Următoarele sunt câteva aspecte pe care trebuie să le țineți cont atunci când analizați problemele de performanță:

  • Nu toate containerele EJB sunt create egale. În timp ce fiecare container EJB trebuie să respecte specificația EJB, vânzătorii au latitudine largă în implementarea containerului EJB. Cerințele lor se concentrează pe rezultatele operațiunilor, nu pe eficiența unei operații. Unii furnizori vor face o treabă mai bună cu diferite porțiuni dintr-un container EJB. Trebuie să determinați unde pot fi obținute eficiențe într-un container EJB și unde vor avea loc blocaje de performanță. Singura modalitate de a ști asta cu certitudine este să încerci înainte de a cumpăra. Chiar și după cumpărarea unei soluții, ar trebui să se testeze principalele decizii de proiectare, cum ar fi utilizarea sau nu a fasolei entității EJB.
  • Performanța poate depinde de eficiența aplicației dvs. Există reguli generale pe care le puteți utiliza pentru a vă ajuta să determinați ce modele de aplicații sunt mai bune decât altele. Dar aceste linii directoare pot fi ușor invalidate cu o implementare necorespunzătoare. Cea mai bună modalitate de a vă asigura că evitați implementările necorespunzătoare este să efectuați recenzii de cod regulate - atunci când vă așezați cu toți colegii dvs. de codificare și doriți să vă revizuiți activitatea - în timpul proiectului dvs. EJB. Ar trebui să vă concentrați comentariile codului asupra analizei sursei și asigurându-vă că aceasta este bine concepută și eficientă. Revizuirile codului oferă o mare oportunitate pentru programatori de a învăța unul de celălalt.
  • Dezvoltați un prototip pentru a testa ipotezele de performanță. Iată un scenariu de probă. În calitate de dezvoltator de aplicații EJB, trebuie să decideți devreme dacă să utilizați fasole entitate sau nu pentru a gestiona interacțiunea cu o bază de date. Cele două opțiuni de bază ale dvs. sunt

Creați fasole entitate pentru a gestiona interacțiunea bazei de date. Fasolea entității poate simplifica interacțiunea bazei dvs. de date dintr-o perspectivă de programare a aplicațiilor. Dar ei pot, de asemenea, să exacte o penalizare de performanță. Unele dintre aceste pedepse pot fi controlate în modul în care implementați fasolea entității - adică folosind interfețele locale versus interfețele la distanță sau făcând obiecte cu granulație obișnuită.

Baza de date JDBC codifică direct în fasole de sesiune și evită folosirea totală a fasolei entitate. JDBC poate fi mai dificil de utilizat decât folosind fasolea entității cu persistența gestionată de containere. Acest curs poate, de asemenea, să vă submineze capacitatea de a profita de tranzacțiile gestionate de containerele EJB.

Pentru a determina care dintre cele două cursuri este mai adecvat, puteți efectua un test simplu:

1. Creați o entitate fasole și o fasole de sesiune care efectuează ambele operații pe același set de date dintr-o bază de date.

2. Scrieți un program simplu care măsoară timpul necesar invocării unui set de inserturi, actualizări, interogări și modificări în baza de date.

Acest al doilea program ar trebui să invocă fasolea sesiunii pentru un test și entitatea fasolei pentru un alt test - efectuând același set de operații pe fiecare.

3. Analizați rezultatele pentru a stabili dacă performanța va fi o problemă.

Dacă doriți o analiză mai performantă a performanțelor, puteți efectua etape individuale - pentru a identifica cea mai scumpă operație - și apoi încercați să modificați aceste operații pentru a genera câștiguri de performanță.

Pentru o entitate fasole, poate doriți să măsurați performanța în următoarele operații:

  • Cât timp durează obținerea unei referințe la o interfață la distanță sau la o interfață locală?
  • Care este diferența dintre performanța dintre efectuarea unei actualizări pe o interfață la distanță și o interfață locală?
  • Care este diferența dintre actualizarea mai multor rânduri într-o bază de date în JDBC și efectuarea unei actualizări pe mai multe rânduri utilizând metoda de acasă a unei entități fasole?

Răspunsurile la aceste întrebări vor fi diferite de containerele EJB în containerul EJB și vor fi, de asemenea, influențate de: a) driverul JDBC pe care îl alegeți; b) dacă utilizați pooling de conexiuni de baze de date sau nu; și c) eficiența implementărilor dvs. ale fasolei entității și a fasolei sesiunii. Veți fi probabil surprins de unele dintre rezultatele pe care le obțineți - testele ca acestea au un mod de a contesta ipotezele dvs. cu privire la performanța fasolei entitate.

Când reglați un EJB pentru performanță, nu efectuați modificări aleatorii. În schimb, concentrați-vă atenția asupra pașilor din aplicație care costă cel mai mult din punct de vedere al performanței.

Notă: Măsurătorile de performanță arată, de obicei, că un proces de afaceri are doar unul sau două puncte în care pot fi făcute îmbunătățiri semnificative. Această observație a fost făcută destul de des pentru că a condus la crearea regulii Pareto 80-20. Această regulă prevede că 80% din timpul de execuție al unui program se datorează 20% din cod. Scopul dvs. ar trebui să fie acela de a identifica care 20% din cod este cea mai scumpă din punct de vedere al resurselor de sistem și se concentrează pe optimizarea acelei porțiuni.

Analizând performanța în Enterprise JavaBeans - dummies

Alegerea editorilor

Cum se folosește Tweening în Fireworks CS5 - manechine

Cum se folosește Tweening în Fireworks CS5 - manechine

Tweening este furnizat ca instrument pentru animații fine de ajustare în Adobe Fireworks Creative Suite 5. Tweening este procesul de creare a unei stări între alte două, de obicei ca punct de pornire sau oprire pentru animație. Utilizați retușarea pentru a simula un obiect în mișcare, ca o minge ce se învârte sau pentru a bloca o imagine în sau în afara ...

ActionScript 3. 0 Versus ActionScript 2. 0 în Flash CS5 - manechine

ActionScript 3. 0 Versus ActionScript 2. 0 în Flash CS5 - manechine

Introducerea în Flash Player 9, ActionScript versiunea 3. 0 a adus multe schimbări și îmbunătățiri majore în ceea ce privește performanța ActionScript și modul în care a fost creat în filmele Flash. Versiunile anterioare ale ActionScript (1. 0+, 2. 0) sunt încă în uz în cadrul anumitor proiecte Flash, deci aveți opțiuni pentru crearea sau salvarea de filme ...

Adăugați culori la swatches în Flash CS5 - manechine

Adăugați culori la swatches în Flash CS5 - manechine

Folosind panoul Color Adobe Creative Suite 5, și să creați propriile swatches de culoare, să faceți gradienți și chiar să aplicați efecte de transparență culorilor existente în stadiul Flash CS5. Panoul Swatches există și pe propriul panou mobil plutitor, pe care îl puteți deschide selectând Window → Swatches. Cele 256 culori pe acest ...

Alegerea editorilor

Comutatoare vLAN și LAN și Junos OS - manechine

Comutatoare vLAN și LAN și Junos OS - manechine

Rețelele au crescut și au devenit mai rapide. Pentru flexibilitate, segmentarea fizică a dat calea segmentării logice cu VLAN-uri. Această practică creează bucăți izolate de LAN care sunt legate împreună cu un tip special de pod numit switch. Nevoia de punți VLANs reduce ...

Chestiuni legate de securitatea dispozitivelor mobile - dummy

Chestiuni legate de securitatea dispozitivelor mobile - dummy

Dispozitivele mobile, cum ar fi smartphone-urile și tabletele, și accesul oricând / oriunde la date și aplicații corporative. Această flexibilitate nu este însă fără provocările sale. Iată câteva dintre problemele legate de implementarea dispozitivelor mobile pe care trebuie să le protejați împotriva: Pierderi și furt: Acestea sunt preocupări majore, cu sute de mii ...

Ce ar trebui să știți despre actualizarea Junos - dummies

Ce ar trebui să știți despre actualizarea Junos - dummies

Un subiect esențial pentru operarea rețelei dvs. este actualizarea software-ului. Modelul de livrare a noilor versiuni Junos simplifică procesul de modernizare în comparație cu alte sisteme de rețea. Noile versiuni și numere Juniper livrează noi versiuni majore ale sistemului Junos pentru a oferi clienților noștri noi caracteristici și funcționalități de trei până la patru ori pe an. ...

Alegerea editorilor

Sănătatea < < și rușinea ascunsă - dummies

Sănătatea < < și rușinea ascunsă - dummies

ÎN mod normal, rușinea trece după un incident jenant. copilărie. Se asteapta sa fie activata si persista mult timp dupa eveniment, ca o rana deschisa care nu sa vindecat niciodata. Îți este rușine de cine ești. Totul este omniprezent, paralizează spontaneitatea și te definește. Nu credeți ...

Acceptând Realitatea atunci când Vindecarea de la Codependency - dummies

Acceptând Realitatea atunci când Vindecarea de la Codependency - dummies

Acceptarea este un proces. Nu se întâmplă într-o zi, o săptămână sau o lună, dar face eforturi și se desfășoară în pași și rânduri de bebeluși. Schimbarea începe cu conștientizarea. Observați dacă comportamentul și gândurile dvs. ating rezultatele dorite. Apoi, practici nonattachment. Acceptarea nu este aprobarea Acceptarea este o recunoaștere a ceea ce este. Există un ...

Dependența de coexistență nu este Caregiving - manechine

Dependența de coexistență nu este Caregiving - manechine

Mulți oameni, în special femei, se bucură de îngrijire și îngrijire pentru alții. Unii fac o profesie. Mamele sunt legate prin cablu pentru a se îngriji de copiii lor. Îngrijirea de tip dependent este diferită de a acorda îngrijire unei persoane. De fapt, cu dependența de codependență, poate fi mai mult decât să dai atunci când nevoile dătătorului au prioritate. Acest lucru se datorează faptului că îngrijirea ...