Hem Personliga finanser Analysera prestanda i Enterprise JavaBeans - dummies

Analysera prestanda i Enterprise JavaBeans - dummies

Video: PowerEdge R740xd2 Rack Server 2024

Video: PowerEdge R740xd2 Rack Server 2024
Anonim

Analysera prestanda är förmodligen en av de mest komplexa uppgifterna vid utformning av alla applikationer. Det är en oklar vetenskap eftersom det finns många faktorer som spelar in. Dessa kompletteras i Enterprise JavaBeans (EJB) applikationer, där prestanda i hög grad beror på genomförandet av EJB-behållaren du använder. Grunden är att du inte kan veta om du gör rätt prestationsbeslut tills du testar dem.

Följande är några problem som du bör tänka på när du överväger prestanda:

  • Ej alla EJB-behållare skapas lika. Medan varje EJB-behållare måste överensstämma med EJB-specifikationen, har leverantörerna bred bredd vid genomförandet av EJB-behållaren. Deras krav är inriktade på resultaten av verksamheten, inte på en operations effektivitet. Vissa leverantörer kommer att göra ett bättre jobb med olika delar av en EJB-behållare. Du måste bestämma varför effektiviteten kan uppnås i en EJB-behållare och där flaskhalsar ska uppstå. Det enda sättet att veta det med säkerhet är att försöka innan du köper. Även efter att du köpte en lösning bör stora beslut om design, som om du vill använda EJB-enhetens bönor, testas.
  • Prestanda kan bero på effektiviteten i din ansökan. Det finns allmänna regler som du kan använda för att bestämma vilka applikationsdesign som är bättre än andra. Men dessa riktlinjer kan enkelt ogiltiga med en slarvig implementering. Det bästa sättet att se till att du undviker slarviga implementeringar är att utföra vanliga kodrecensioner - när du sitter med alla dina kodande medarbetare och får dem att granska ditt arbete - under ditt EJB-projekt. Du bör fokusera dina kodrecensioner på att analysera källan och se till att den är både väl utformad och effektiv. Kod recensioner erbjuder ett bra tillfälle för programmerare att lära av varandra.
  • Utveckla en prototyp för att testa dina prestationsantaganden. Här är ett exempel scenario. Som en EJB applikationsutvecklare bör du bestämma tidigt om du vill använda enhetsbönor för att hantera interaktion med en databas eller inte. Dina två grundläggande val är att

Skapa entitetsbönor för att hantera databasinteraktion. Entitybönor kan förenkla din databasinteraktion från ett programprogrammeringsperspektiv. Men de kan också exekvera en prestationsstraff. Några av det straffet kan kontrolleras på det sättet att du implementerar entitetsbönor - det vill säga genom att använda lokala gränssnitt mot fjärrgränssnitt eller genom att göra bönor med grovkornade objekt i företagsbönor.

Kod JDBC-databasen ringer direkt till sessionsbönor och undviker användningen av enhetsbönor helt och hållet. JDBC kan vara svårare att arbeta med än att använda bönor med behållarehanterad uthållighet. Denna kurs kan också undergräva din förmåga att dra nytta av EJB-containerhanterade transaktioner.

För att bestämma vilken av de två kurser som är mer lämplig kan du utföra ett enkelt test:

1. Skapa en entitetsböna och en mötesböna som båda utför aktiviteter på samma uppsättning data från en databas.

2. Skriv ett enkelt program som mäter hur lång tid som krävs för att anropa en uppsättning insatser, uppdateringar, frågor och ändringar i databasen.

Detta andra program bör anropa sessionen för ett test och enheten böna för ett annat test - utföra samma uppsättning operationer på var och en.

3. Analysera resultaten för att avgöra om prestanda kommer att bli ett problem.

Om du vill ha en mer finkornig prestationsanalys kan du göra enskilda steg - för att identifiera den dyraste operationen - och försök sedan ändra de här operationerna för att generera prestationsvinster.

För en företagsböna, kan du mäta prestanda på följande sätt:

  • Hur lång tid tar det för att få en referens till ett fjärrgränssnitt eller ett lokalt gränssnitt?
  • Vad är skillnaden i prestanda mellan att utföra en uppdatering på ett fjärrgränssnitt och ett lokalt gränssnitt?
  • Vad är skillnaden mellan att uppdatera flera rader i en databas i JDBC och utföra en uppdatering på flera rader med hjälp av hemmetoden för en företagsböna?

Svaren på dessa frågor kommer att skilja sig från EJB-behållaren till EJB-behållaren och kommer också att påverkas av: a) JDBC-drivrutinen du väljer; b) huruvida du använder databassamling eller inte och c) effektiviteten av dina implementeringar av enheten bonen och sessionen böna. Du kommer sannolikt att bli överraskad av några av de resultat du får - tester som dessa har ett sätt att utmana dina antaganden om prestanda hos enhetens bönor.

När du justerar en EJB för prestanda, gör inte slumpmässiga ändringar. Istället fokusera din uppmärksamhet på de steg i programmet som kostar mest när det gäller prestanda.

Obs! Prestationsmätningar visar vanligtvis att en affärsprocess bara har en eller två punkter där betydande förbättringar kan göras. Denna observation har gjorts ofta tillräckligt för att det ledde till skapandet av Pareto 80-20-regeln. Den här regeln säger att 80 procent av genomförandetiden för ett program beror på 20 procent av koden. Ditt mål bör vara att identifiera vilka 20 procent av koden som är dyraste när det gäller systemresurser och fokusera på att optimera den delen.

Analysera prestanda i Enterprise JavaBeans - dummies

Redaktörens val

Organisera e-postmarknadsföring innehåll för att matcha dina mål - dummies

Organisera e-postmarknadsföring innehåll för att matcha dina mål - dummies

När du utvecklar e-postmarknadsföring innehåll, överväga hur din publik kommer att uppleva dina avsikter. E-postmeddelanden ger större mening åt dina framtidsutsikter och kunder när innehållet du skapar och levererar är knutet samman under kända teman. När din tid är begränsad kan du bli frestad att skapa e-postinnehåll som passar ditt schema bättre ...

Nya formulärinmatningstyper i HTML5 - dummies

Nya formulärinmatningstyper i HTML5 - dummies

HTML-formulär är centrerade kring det ödmjuka men flexibla inmatningselementet . HTML5 lägger till ett antal väldigt användbara former av inmatning som hjälper till att göra HTML till ett mer modernt användargränssnitt. Även om stöd för dessa taggar inte är universellt är det säkert att börja använda dem nu. Varje webbläsare (även IE6) som inte förstår den avancerade ...

Utföra visuell designtest på en ny webbplats - dummies

Utföra visuell designtest på en ny webbplats - dummies

Det visuella designteamet för en webbplats kan skapa några olika "look and feel" -alternativ och testa dem med användare. Den här designen kallas perfekt för att passera en hemsida och en inre eller undersida av din webbplats, men de är inte 100 procent korrekta när det gäller ...

Redaktörens val

Objektiv till dina digitala SLR-dummies

Objektiv till dina digitala SLR-dummies

Zoomlinser är inte den enda typen av linser som är tillgängliga för din dSLR . Du borde veta hur de skiljer sig från de andra alternativen. Här är några av alternativen till zoomlinser i allmänhet och vanliga zoomlinser i synnerhet. Prime-objektiv En primärlins har en fast brännvidd. En lins med fast fokusering ...

Hur man skapar bra belysning för din digitala fotografi - dummies

Hur man skapar bra belysning för din digitala fotografi - dummies

Ja, du kan återskapa bra belysning om du vet vad du gör. Och ingenting kan förstöra ett foto snabbare än dålig belysning. Du kan göra många förbättringar till ett utmanande ämne helt enkelt genom att använda bra belysningsteknik. Din farbrors skalliga huvud, en tonåring som är mindre än perfekt, en hård upplyst strandplats, en droppe ...

ÖKa bildförstoring med telekonverterare - dummies

ÖKa bildförstoring med telekonverterare - dummies

En telekonverter är en sekundärlins som du placerar mellan din lins och kamerokroppen (precis som förlängningsröret). En telekonverter tar emot bilden som skapats av din lins och ger en förstorad version av den till kamerans digitala sensor. Detta kan vara ett användbart verktyg i makrofotografering men kan också vara ...

Redaktörens val

Undvik hack på sårbara trådlösa arbetsstationer - dummies

Undvik hack på sårbara trådlösa arbetsstationer - dummies

Trådlösa arbetsstationer har massor av säkerhetsproblem och kan vara inriktade på hackar - från svaga lösenord till opatchade säkerhetshål till lagring av WEP- och WPA-krypteringsnycklar lokalt. De flesta av de kända trådlösa klientens sårbarheter har blivit patchade av sina respektive leverantörer, men du vet aldrig om alla dina trådlösa system är ...

Grundläggande Mac Network Settings - dummies

Grundläggande Mac Network Settings - dummies

De flesta nätverksinställningarna på en Mac är automatiska. Om du föredrar kan du titta på och ändra standardnätverksinställningarna genom att följa dessa steg: