close

Mellemvare

Gå til navigation Gå til søg

Middleware eller logik til udveksling af information mellem applikationer ( interlogical ) eller Intermediate Agent , refererer til et softwaresystem, der tilbyder almindelige tjenester og funktioner til applikationer. Generelt håndterer middleware opgaverne med datastyring, applikationstjenester, meddelelser, autentificering og API-styring. Det er software , der hjælper en applikation med at interagere eller kommunikere med andre applikationer eller softwarepakker, netværk, hardware eller operativsystemer. Dette forenkler programmørernes arbejde i den komplekse opgave at generere de forbindelser og synkroniseringer, der er nødvendige i distribuerede systemer. På den måde tilvejebringes en løsning, der forbedrer servicekvaliteten, samt sikkerheden, afsendelse af beskeder, opdatering af servicekartoteket mv. [ 1 ]

Det fungerer som et distribueret softwareabstraktionslag , der sidder mellem applikationslagene og de nederste lag ( operativsystem og netværk ). Middleware abstraherer fra kompleksiteten og heterogeniteten af ​​underliggende kommunikationsnetværk, operativsystemer og programmeringssprog, hvilket giver en API til nem programmering og administration af distribuerede applikationer. Afhængigt af det problem, der skal løses, og de funktioner, der kræves, vil forskellige typer middleware-tjenester være nyttige. Generelt implementeres mellemwaren på klientsiden af ​​operativsystemet, som har de biblioteker, der udfører alle funktionerne til kommunikation gennem netværket.

Det er ansvarlig for datahåndteringsopgaver, applikationstjenester, selvindikation af beskeder og app-administration. Det gør det også lettere at få adgang til et netværk og øger hastigheden på systemudførelsen.

Det er defineret i to kategorier kendt som integration og applikation. Hver middleware har visse protokoller og paradigmer.

Den er baseret og orienteret mod datainteraktionsprocedurer, således at synkroniseringen af ​​en specifik proces udføres.


Middleware spænder fra webservere til autentificeringssystemer og meddelelsesværktøjer:

- Smart business automation - Datastreaming - Fuld integration - Smart business automation - Datastreaming - Fuld integration

Definition

Middleware er al software, der sidder mellem operativsystemet og de programmer, der kører på det . Det fungerer som et oversættelseslag, der muliggør kommunikation og datastyring i distribuerede applikationer. Middleware søger at forsyne distribuerede systemer med egenskaben gennemsigtighed, det vil sige at maskere systemets heterogene natur. Dette opnås ved at levere følgende funktioner:

  • Tilbyde muligheden for at anmode om og modtage data gennemsigtigt.
  • Frigør systemdesignere og administratorer for implementeringsproblemer, der stammer fra operativsystemets kompleksitet.

I praksis er middleware repræsenteret af processer eller objekter inden for et sæt computere, der interagerer med hinanden for at implementere kommunikation og ressourcedeling for distribuerede applikationer.


Historie

Oprindelsen af ​​ordet middleware går tilbage til år 1960, hvor ordet blev brugt under '1960 NATO Software Engineering Conference', [ 2 ] som en idé om, hvordan man forbinder ny software med ældre systemer. I løbet af årtierne før 1990'erne blev det kun beskrevet som netværksforbindelsesstyringssoftware, men på det tidspunkt, hvor netværksteknologierne nåede tilstrækkelig indtrængning og synlighed, havde middlewaresoftware udviklet sig til et sæt paradigmer og tjenester. . På denne måde blev der tilbudt en lettere, mere robust og kontrollerbar måde at bygge distribuerede applikationer på. [ 3 ]

Taksonomi af middleware- programmer

Image
Middleware software taksonomi skema .

Taksonomien eller klassificeringen af ​​middleware-software kan beskrives i to hovedkategorier: en til integration og den anden til applikation. Disse har igen forskellige klasser.

Integrationskategori

Det er den type integration, der har evnen til at forene sig med heterogene systemer. Hver middleware har forskellige kommunikationsprotokoller eller måder at fungere på i forskellig software . Integrationstyper kan ses som:

Procedure eller procesorienteret

Procesorienteret middleware bruger synkroniseret kommunikation ( såsom telefonen). Et af kendetegnene ved disse er, at de bruger klientstubben og serverskelettet . Klientstubben konverterer anmodningen til en besked, der sendes til serveren; derefter modtager serverskelettet beskeden, konverterer den til anmodningen og kalder serverapplikationen, hvor den behandles. Efter behandlingen sker den omvendte proces. Klientstubben tjekker for fejl, sender resultaterne til den software, der startede anmodningen, og suspenderer derefter behandlingen. Fordelene ved disse middleware er, at de bruger en standardtype i navnene på tjenester og fjernprocesser, de kan returnere svar selv med netværksproblemer, og de kan håndtere flere typer dataformater og heterogene niveauer af servicesystemer. Ulemperne er, at de ikke har skalerbarhed, de kan ikke returnere informationen til et andet program end det, der har lavet anmodningen (refleksion), og de har meget rigide processer.

Objektorienteret

De understøtter distribueret objektbestilling. Kommunikationen mellem objekterne kan være synkroniseret, udskudt synkroniseret eller ikke-synkroniseret. De understøtter flere lignende ordrer lavet af flere kunder i én transaktion. Måden at fungere på er:

  1. Klientobjektet kalder en logisk metode til at hente et eksternt objekt.
  2. En Proxy ORB (også kendt som en stub ) samler informationen ( rangering eller serialisering) og transmitterer den gennem agenten ( mægler ).
  3. Agenten fungerer som et midtpunkt og kontakter forskellige informationskilder, får deres henvisnings-id'er, indsamler oplysninger og omorganiserer dem nogle gange.
  4. Fjernproxyen (også kendt som skeleton ) marskalerer ( unmarshaller eller deserialiserer) informationen, der kommer fra agenten, og sender den til serverobjektet.
  5. Serverobjektet behandler informationen og genererer et resultat, der returneres til klienten efter de omvendte trin.

Fordelene er, at de tillader refleksion og skalerbarhed, at det opererer med flere typer information og tilstande, og at det understøtter flere processer. Ulemperne er at få links til at eksistere før udførelse og indpakningskode for nogle ældre systemer.

Besked-orienteret middleware (MOM )

De kan opdeles i to typer, vent og udgiv/abonner. Ventetrinnet kan opdeles i besked og vente. Beskedtrinnet starter med, at applikationen sender en besked til en eller flere klienter med klientens MOM. MOM-serveren indsamler anmodningerne fra køen ( Beskedmægler ) i en forudbestemt rækkefølge eller ventesystem. MOM-serveren fungerer som en router og interagerer normalt ikke med dem. Udgiv og abonner MOM handler lidt anderledes, det er mere begivenhedsdrevet. Hvis en kunde ønsker at deltage for første gang, går de med i informationsbussen. Afhængigt af dens rolle, om det er som udgiver, abonnent eller begge dele, logger den en begivenhed. Udgiveren sender en meddelelse om en hændelse til hukommelsesbussen. MOM-serveren sender en meddelelse til den registrerede abonnent, når informationen er tilgængelig.

Komponentorienteret

En komponent er et "program, der udfører en bestemt funktion, designet til nemt at fungere og interagere med andre komponenter og applikationer." Middlewaren i dette tilfælde i en komponentkonfiguration. Styrken ved denne middleware er, at den er konfigurerbar og rekonfigurerbar. Rekonfigurering kan udføres under kørsel, hvilket giver stor fleksibilitet til at imødekomme behovene i et stort antal applikationer.

Agenter

Agenter er en type middleware, der har flere komponenter:

  • Enheder. De kan være genstande eller processer.
  • Medier. De kan være kanaler, rør osv.
  • Love. De identificerer den interaktive karakter af agenter. De kan være timing eller skematype.

Fordelene ved middleware-agenter er deres evne til at udføre et stort antal opgaver på vegne af brugeren og til at dække en bred vifte af strategier baseret på det omgivende miljø. Implementeringen af ​​den er imidlertid kompliceret på grund af kompleksiteten og vanskelighederne ved de operationer, de håndterer.

Applikationskategori

Klassificeringen efter applikation inkluderer middleware , der er indstillet til specifikke applikationer.

Data Access Middleware ( DAM )

Informationsadgang middleware har den egenskab, at den er i stand til at interagere med forskellige datakilder. Denne type middleware inkluderer dem, der behandler transaktioner, database-gateways og distribuerede transaktions-/proceduresystemer.

Deres fordele ligger i den kommunikation, de har mellem flere datakilder, konverteringen af ​​applikationens programmeringssprog til et sprog, der accepteres af destinationsdatakilden, og evnen til at svare i et format og et sprog, der er acceptabelt for anmoderen.

Desktop middleware

Desktop -middleware kan lave variationer i præsentationen af ​​oplysninger, som brugeren anmoder om, ved at spore og hjælpe applikationer, kontrollere enhver transportservice og levere backup og andre baggrundsoperationer. Andre kan være vedligeholdelse og grafik, bestilling, servicemapper, databaseinformationsstyring, processtyring, jobplanlægning, servicebegivenhedsmeddelelse, softwareinstallationsstyring, krypteringstjenester og adgangskontrol.

Web-baseret middleware

Denne type middleware hjælper brugeren med at surfe på nettet, bruge grænseflader, der giver dem mulighed for at finde sider af interesse, og registrere ændringer i brugerens interesse baseret på deres søgehistorik. Det giver en identifikationstjeneste for et stort antal applikationer og kommunikation mellem processer uafhængigt af operativsystem, netværksprotokol og hardwareplatform . Middleware , der er tæt knyttet til netværket, kaldes applikationsservere, da det forbedrer ydeevne, tilgængelighed, skalerbarhed, sikkerhed, informationssøgning og understøtter kollaborativ styring og brug. Middleware kan kontakte applikationen direkte og få bedre kommunikation mellem server og klient. Andre vigtige tjenester leveret af denne type middleware er katalogtjenester, e- mails , store forsyningskæder, fjernadgang til information, fildownloads, adgang til programmer og adgang til fjernapplikationer.

Real-time middleware

Information i realtid er kendetegnet ved, at den korrekte information på et tidspunkt måske ikke er korrekt i et andet. Realtids - middleware understøtter tidsfølsomme anmodninger og planlægningspolitikker. Dette gøres med tjenester, der forbedrer effektiviteten af ​​brugerapplikationer. Real - time middleware kan opdeles i forskellige applikationer:

  • Databaseapplikation i realtid.
  • bearbejdningssensor.
  • Overførsel af information.

Information, der passerer gennem middleware i realtid, er steget dramatisk med introduktionen af ​​internettet, trådløse netværk og nye broadcast-baserede applikationer.

Fordelene ved denne type middleware er, at de giver en beslutningsproces, der fastlægger de bedste kriterier for at løse tidsfølsomme processer, og muligheden for at hjælpe operativsystemer med at lokalisere ressourcer, når de har driftstidsfrister.

Multimedie - middleware er en stor gren af ​​realtids-middleware. Disse kan håndtere en bred vifte af information. Disse typer kan være tekst, billeder af alle slags (GPS, billeder osv.), naturlige sprogprocessorer, musik og video. Oplysningerne skal indsamles, integreres og derefter sendes til den tidsfølsomme bruger. Multimedieenheder kan omfatte en blanding af både fysiske (højttalere, kameraer, mikrofon) og logiske enheder.

Middleware- specialister

I mange tilfælde giver middleware en meget specifik opgave, som ikke kan passe ind i ovenstående kategorier. Et eksempel kunne være medicinsk middleware .

Niveaukategori

Tiering er differentieret i to typer: low-level middleware og high-level middleware.

Mellemvare på lavt niveau

Middleware, der tilbyder væsentlig funktionalitet, generelt relateret til ændringer af grundlæggende TCP/UDP + IP-understøttelse.

Dens vigtigste egenskaber er:

  • Serialisering (på engelsk, Marshalling ): Serialisering er processen med at transformere et objekt, placeret på et lagringsmedium, til et dataformat, der er egnet til lagring eller transmission.
  • Multicast over IP: IP Multicast er en metode til at sende IP-datagrammer til en gruppe af interesserede modtagere.
  • Overlejringsnetværk: Et overlejringsnetværk er et virtuelt netværk af logisk forbundne noder, der er bygget oven på et eller flere underliggende netværk.

Mellemvare på højt niveau

Dette niveau er dedikeret til kommunikation og fjernindkaldelse. Det er en middleware med fokus på at sende og modtage data, det vil sige på hvordan processer kommunikerer i et distribueret system.

Der skelnes mellem tre typer:

  • Remote Procedure Call ( RPC): Remote Procedure Call er et program, der bruger én computer til at udføre kode på en anden fjernmaskine uden at skulle bekymre sig om kommunikationen mellem de to maskiner.
  • Remote Method Invocation (RMI): Java Remote Method Invocation er en mekanisme, der tilbydes af Java til at påkalde en metode eksternt. Det er en udvidelse af RPC til direkte overførsel af distribuerede objekter.
  • Request-response- protokoller : Request - response-protokollen omfatter en række protokoller, der giver relativt lavt niveau support til at anmode om udførelse af en fjernoperation. De lægger grundlaget for Remote Procedure Call (RPC) og Remote Method Invocation (RMI).

Ansøgninger

Middleware- tjenester giver et mere funktionelt sæt API'er for at tillade en applikation at:

  • Find tydeligt over netværket og giver således en interaktion med en anden tjeneste eller applikation
  • Data filtreret til at være brugbare i et offentligt miljø gennem anonymiseringsproces for beskyttelse af privatlivets fred (for eksempel)
  • Vær uafhængig af netværkstjenesten
  • Vær pålidelig og altid tilgængelig
  • Tilføj komplementære attributter såsom semantik sammenlignet med operativsystemet og netværkstjenesterne.

Middleware tilbyder nogle unikke teknologiske fordele for erhvervslivet og industrien. For eksempel er traditionelle databasesystemer ofte installeret i lukkede miljøer, hvor brugere kun får adgang til systemet via et begrænset netværk eller intranet (for eksempel en virksomheds interne netværk). Med væksten af ​​World Wide Web kan brugere få adgang til praktisk talt enhver database, som de har de rette adgangsrettigheder til, hvor som helst i verden. Middleware løser problemet med forskellige niveauer af interoperabilitet mellem forskellige databasestrukturer. Middleware letter adgangen til ældre databasestyringssystem (DBMS) eller applikationer via en webserver uden hensyntagen til databasespecifikke funktioner. [ 4 ]

Virksomheder bruger ofte middleware -applikationer til at linke oplysninger fra afdelingsdatabaser, såsom løn, salg og regnskab, eller databaser, der er hostet på flere geografiske steder. [ 5 ] På det stærkt konkurrenceprægede sundhedsmarked gør laboratorier udstrakt brug af middleware -applikationer til data mining og Laboratory Information System (LIS) og til at kombinere informationssystemer under hospitalsfusioner. Middleware hjælper med at bygge bro mellem separate LIS'er i et nydannet sundhedsnetværk efter et hospitalskøb. [ 6 ]

Udviklere af trådløse netværk kan bruge middleware til at løse de udfordringer, der er forbundet med trådløst sensornetværk (WSN) eller WSN-teknologier. Implementering af et middleware- program gør det muligt for WSN- udviklere . At integrere operativsystemer og hardware med de mange forskellige applikationer, der er tilgængelige i dag. [ 7 ]

Middleware kan hjælpe softwareudviklere med ikke at skulle skrive API'er til alle kontrolprogrammer, som fungerer som en separat programmeringsgrænseflade for deres applikationer. For Fremtidens Internet er driften af ​​netværket gennem trafikovervågning i multi-domæne scenarier , ved hjælp af formidlingsværktøjer ( middleware ) en kraftfuld hjælp, da de giver operatører , forskere og tjenesteudbydere mulighed for at overvåge Quality of Service. og analysere evt . fejl i telekommunikationstjenester. [ 8 ]

Endelig bruger e-handel middleware til at hjælpe med at håndtere hurtige og sikre transaktioner på tværs af mange forskellige typer computermiljøer. [ 9 ] Kort sagt er middleware blevet et kritisk element i en lang række industrier, takket være dens evne til at samle ressourcer på tværs af forskellige netværk eller computerplatforme.

Medlemmerne af European Broadcasting Union (EBU) har i 2004 gennemført en undersøgelse af middleware med hensyn til integration af systemer i broadcast-miljøer. Det involverede systemdesigningeniøreksperter fra 10 store europæiske netværk, der arbejdede over en 12-måneders periode for at forstå effekten af ​​produkter, primært software, baseret på medieproduktionsteknikker og mediesystemdesignudsendelser. De resulterende 3300S Technology og 3300 Tech rapporter blev offentliggjort og er frit tilgængelige fra EBU's hjemmeside. [ 10 ]​ [ 11 ]

Se også

Der er mange kommercielle middleware- specifikationer og implementeringer :

  • JBOSS
  • Middleware RFID Data Suite
  • smoking
  • Tibco
  • webmetoder
  • IBM WebSphere MQ (tidligere MQSeries )
  • JMS
  • CICS
  • Borland Visi Mægler
  • SAP PI SAP procesintegration

Referencer

  1. Karne, Biskop. "En undersøgelse af middleware " . 
  2. Gall, Nick (29. juli 2005). "Oprindelsen af ​​udtrykket middleware " . 
  3. ^ D., Bakken (29. juli 2005). Mellemvare . 
  4. ^ Peng, C, Chen, S, Chung, J, Roy-Chowdhury, A, og Srinivasan, V. (1998). Adgang til eksisterende forretningsdata fra World Wide Web. IBM Systems Journal, 37(1), 115-132. Hentet 7. marts 2009 fra ABI/INFORM Global database. (Dokument-id: 26217517)
  5. ^ Bougettaya, A, Malik, Z, Rezgui, A, og Korff, L. (2006). En skalerbar middleware til webdatabaser. Journal of Database Management, 17(4), 20-39, 41-46. Hentet 7. marts 2009 fra ABI/INFORM Global database. (Dokument-id: 1155773301)
  6. ^ Bagwell, H. (2008). Middleware: giver værdi ud over autoverifikation Arkiveret 12. oktober 2009 på Wayback Machine .. IVDT. Hentet 3. marts 2009.
  7. Hadim, S. og Mohamed, N. (2006). Middleware-udfordringer og tilgange til trådløse sensornetværk. IEEE Distributed Systems Online bind 7. Udgave 3. Hentet 4. marts 2009 fra iEEE Distributed Systems Online Arkiveret 2011-09-28 på Wayback Machine .
  8. Kai Oswald Seidler. "ØJEBLIK" . Fp7-moment.eu. Arkiveret fra originalen den 28. februar 2009 . Hentet 19. august 2010 . 
  9. ^ Charles, J. (1999). Middleware rykker i front (kræver abonnement) . Teknologinyheder. Hentet 2. marts 2009.
  10. ^ "EBU middleware rapport Tech 3300" (PDF) . Hentet 19. august 2010 . 
  11. ^ "EBU middleware rapporterer Tech 3300s" (PDF) . Hentet 19. august 2010 . 

Eksterne links