Vad är fördelarna och missgynna av CORBA?

Vad är fördelarna och missgynna av CORBA?

Fördelar:
1. mognad
Den ursprungliga versionen av CORBA standard definierad i 1991. Denna första version av specifikationen begränsades medvetet. Den OMG filosofi var att definiera en liten standard, låt implementatörer få erfarenhet och sakta expandera standard för att införliva fler och fler funktioner. Detta "långsam men säker" tillvägagångssätt har varit anmärkningsvärt framgångsrik. I synnerhet har man några bakåt-inkompatibla ändringar CORBA-specifikationen. I stället har nya versioner av specifikationen tenderat att lägga till nya funktioner i stället för att ändra befintliga funktioner. Idag CORBA är extremt funktionsrika, stödja många programmeringsspråk, operativsystem och ett varierat utbud av funktioner såsom transaktioner, säkerhet, namngivning och Trading tjänster, messaging och publicera-prenumerera tjänster-som är nödvändiga för många företagsnivå applikationer. Många nyare middleware teknik påstår sig vara överlägsen CORBA men faktiskt måste göra en massa "fånga" bara för att matcha några av de funktioner som CORBA har haft på länge.

2. öppen standard
CORBA är en öppen standard snarare än en egen teknik. Detta är viktigt för en mängd olika skäl.
Först, användare kan välja ett genomförande från en mängd CORBA leverantörer (eller Välj en av de freeware implementationerna). Du kanske tror att byta från en CORBA produkt till en annan skulle innebära mycket arbete. Mängden arbete som krävs är dock sannolikt att vara mycket mindre än du kanske tror. Däremot om du använder en egenutvecklad middleware system sedan byta till en annan egenutvecklad är middleware säljaren mycket mer utmanande.
Det andra hjälper konkurrensen mellan olika CORBA leverantörer till att hålla priser nere.

3. bred plattform stöd
CORBA implementeringar finns ett brett utbud av datorer, inklusive IBM OS/390 och Fujitsu GlobalServer stordatorer, många varianter av UNIX (inklusive Linux), Windows, AS/400, Open VMS, Apples OS X och flera inbäddade operativsystem. Det finns mycket få andra middleware teknik som finns på ett brett utbud av datorer.

4. brett språkstöd
CORBA definierar standardiserade språk mappningar för en mängd olika programmeringsspråk som C, C++, Java, Smalltalk, Ada, COBOL, PL / I, LISP, Python och IDLScript. Några små organisationer kan använda ett enda programmeringsspråk för alla sina projekt, men som en organisation ökar i storlek, blir det allt mer sannolikt att organisationen kommer att göra använda av flera programmeringsspråk. Likaså ju äldre en organisation är, desto högre blir sannolikheten att vissa av dess "äldre" (äldre) program implementeras i ett programmeringsspråk och nyare program genomförs i ett annat programmeringsspråk. Dessa organisatoriska skäl är det viktigt för ett middleware system att stödja många programmeringsspråk; Tyvärr göra inte alla middleware system det. J2EE, som stöder endast Java är ett extremfall av detta. Ett annat extremfall är den tvål middleware standard. TVÅL applikationer kan byggas med en mängd olika programmeringsspråk, men vid tiden för skrivande, tvål standarden definierar endast ett språk mappning (för Java). Det kan finnas flera återförsäljare som stöd, säger, C++ utveckling av tvål applikationer, men var och en av dessa leverantörer ger sina egna proprietära C++ APIs. Detta innebär att det finns ingen källkod portabilitet av Java tvål applikationer över annan leverantör produkter.

5. effektivitet
På-the-kabelprotokollet infrastrukturen för CORBA säkerställer att meddelanden mellan klienter och servrar överförs i en kompakt representation. Också, de flesta implementeringar av CORBA marskalk uppgifter (det vill säga konvertera data från programmeringsspråk typer i en binär buffert som kan överföras) effektivt. Många andra middleware teknik, också ett likaså kompakt format för dataöverföring och har effektiv omordnande infrastruktur. Det finns dock vissa undantag, som jag nu diskutera.
TVÅL använder XML som representerar data som skall översändas. Omfång för XML-resultat i tvål med nätverk mycket mer bandbredd än vad CORBA.1 SOAP-baserade program också medföra betydande CPU overhead inblandade i formatering programmeringsspråk typer i XML-format och senare parsning av XML för att extrahera de inbyggda programmeringsspråk typerna.
Några andra middleware teknik, som IBM MQ-serien, överföra endast binära data, som är effektiv. Detta kräver dock att utvecklarna skriver omordnande koden som kopierar programmeringsspråk typer till de binära buffertarna innan överföringen och unmarshaling koden för att extrahera programmeringsspråk typer från en binär buffert. Däremot genererar en CORBA IDL-kompilatorn omordnande och unmarshaling koden, så att utvecklare inte behöver skriva (och underhålla) sådan lägsta-nivå-kod.

6. skalbarhet
Flexibel, serversidan infrastrukturen för CORBA gör det möjligt att utveckla servrar som kan skala vid hantering av ett litet antal objekt upp till hantering av ett nästan obegränsat antal objekt. Självklart, skalbarhet varierar från ett CORBA genomförandet till ett annat, men gång på gång, verkliga projekt har visat att en CORBA server kan skala för att hantera inte bara en enorm mängd server-side data, men också hög kommunikation laster från tusentals klientprogram. De flesta CORBA leverantörer kommer sannolikt känner till kunder som har försökt en annan middleware teknik, fann att det inte kunde skala tillräckligt väl och sedan bytte till CORBA.

Nackdelar:
1. brandvägg ovänliga. Det finns ingen riktig CORBA standard att binda en ORB och har klienter till en hamn eller ett port-intervall, finns det (enda) leverantör alternativ.

2. anses vara komplicerat. Detta är i vissa delar en fördom, i vissa delar justificated: fjärraktivering av CORBA-gränssnitt är minst lika enkelt som över XMLRPC (som betraktas så lätt), men C++ språk kartläggningen äldre än STL och har tre olika lagring klasser och klumpiga hantering av sekvenser - det finns andra exempel.

3. ingen standard för att få den första referensen för namntjänst. Jag vet inte varför, men det har aldrig varit en OMG välsignade standard att få en första referens för namntjänst över nätverket. Detta resulterar naturligtvis i olika lösningar från olika leverantörer, alla använder någon form av sändningsförfrågan.

4. ingen officiell perl mappning. Det finns minst två perl klot tillgängliga som öppen källkod, men varken mappningen är officiell, inte heller implementationer är komplett. Andra kan räkna detta som en fördel, Välj. Det finns ett par andra skript språk klot, dock men perl är fortfarande favorit hos systemadministratörer här i Europa, det verkar.

  • Relaterade Frågor

  • Vad är fördelarna och nackdelarna gör den om en eller två personer i hyresavtalet?

  • Vad är fördelarna och nackdelarna med hydroponics?

  • Vad är fördelarna och nackdelarna med redovisning?

  • Vad är fördelarna och nackdelarna med lön?

  • Vad är fördelarna och nackdelarna med konstgödsel?

  • Vad är fördelarna och nackdelarna med vågenergi?

  • Vad är fördelarna och nackdelarna med vegetabilisk olja?

  • Vad är fördelarna och nackdelarna med gruppen beslutsfattande?

  • Vad är fördelarna och nackdelarna med telefonintervjuer?

  • Vad är fördelarna och riskerna med strålbehandling?

  • Vad är fördelarna och nackdelarna med verbal kommunikation?

  • Vad är fördelarna och nackdelarna med vågkraft?

  • Vad är fördelarna och nackdelarna med att göra filmer av verkliga händelser?

  • Vad är fördelarna och nackdelarna med burkmat?

  • Vad är fördelarna och nackdelarna med utbildning hästar?

  • Vad är fördelarna och nackdelarna med att bli en Cyborg?

  • Vad är fördelarna och nackdelarna med återvinning?

  • Vad är fördelarna och nackdelarna med intervjuer?

  • Vad är fördelarna och nackdelarna med en inomhus och en utomhus swimmingpool?