Web
Services
Vad är Web Services?
Web Services löfte tyder
på en ny era av datoriserad automatisering och fördelar för
företag och konsumenter via en speciell mjukvara. En Web Service applikation
skall till exempel göra det möjligt för ett företags
inventerings databas koppla sig till en leverantör för automatisk
beställning av varor, en annan applikation skall göra det möjligt
för en persons kalender att kommunicera med en boknings databas hos
en läkare och automatiskt fastställa tidpunkten för en undersökning.
Web Services är en form av applikationer
som är självbeskrivande, självframställda och som kan
bli publicerade, lokaliserade och anropade via webben. Webbservice är
en samling funktioner som är paketerade som en enkel entitet och publicerade
i nätverket för att kunna användas av andra program.
Web Services tillåter företagen och människor
att snabbt och billigt göra sin digitala tillgångar tillgängliga
för allmänheten. Ett tidigt exempel är Microsoft Passport:
ett bekvämt autenticitets service skapad av Microsoft.
Web Services utgör funktioner som kan variera
från enkla begäran till komplicerade affärsprocesser. Efter
att en webbservice är skapad, kan andra applikationer eller andra
Web Services upptäcka och anropa denna service.
Web
Services ska förändra sättet som vi utvecklar mjukvara,
den ska förändra sättet vi gör affärer (Gartener
pratar om dynamisk business webb och flexibelt Internet- baserad applikationer)
som ska tillåta företag skapa nya produkter och services snabbare
än redan existerande metoder, nå nya kunder, ändra/lägga
till kundens relationer, ägna sig åt nya affärs modeller
och erbjuda erfarenheter, den ska förändra sättet som vi
beställer och säljer mjukvara.
Som andra exempel för Web Services har vi:
- En kreditkontroll service som
returnerar kredit information efter en given person nummer
- En beställningsservice som
tillåter datorsystemet att realisera kontorets leveranser med en
given kodex och kvantitet
En webbservice kan samarbeta med andra webbservice
för att erbjuda mer komplicerade tjänster. Till exempel, en webbservice
kan erbjuda en bättre tjänst för resemål genom samarbetning
med en lågnivå webbservice (för hantering av bil hyrning,
flygresor och hotell).
Web Services omfattar en vision av ett fullt integrerat
datanätverk som inkluderar PC:s, servers, handeln utrustning, program
, applikationer och nätverksutrustning, som alla arbetar ihop. Det
här nätverket kan utföra distribuerad databehandling med
den bäst matchade apparaten för uppgiften och leverera informationen
i rätt tid i den form som användaren behöver.
Strukturen
Web services är baserad på XML (Extensible
Markup Language), SOAP (Simple Object Accses Protocol), UDDI (Universal
Description Discovery och Integration) en sorts av Web Services Gula Sidor
för utvecklare, och WSDL (Web Service Description Language) som beskriver
funktioner av en given Web Service.
WSDL the Web Services Description Language
- (det beskrivande språket för web-tjänster) är ett
XML format för beskrivning av nätverkstjänster som en mängd
slutpunkter som opererar på meddelanden innehållande antingen
dokumentorienterad eller procedur orienterad information. Operationerna
och meddelandena är beskrivna abstrakt och sedan slutna till ett konkret
nätverksprotokoll och meddelande format för att definiera en
slutpunkt. Relaterade konkreta slutpunkter är kombinerade i abstrakta
slutpunkter. WSDL är tillräckligt flexibelt för att tillåta
beskrivningar av slutpunkter och dess meddelanden oavsett vilket meddelande
format eller nätverksprotokoll som används för kommunikationen.
SOAP står för the Simple Object
Access Protocol, och härleddes från XML-RPC, skapad av Dave
Winer 1998. Det är ett enkelt XML/HTTP- baserat protokoll som är
utformat för att utbyta strukturerad och tryckt information på
webben. SOAP använder XML meddelanden för att anropa avlägsna
metoder på ett plattform oberoende sätt. Fast en web tjänst
kan interagera med avlägsna maskiner genom HTTPs sända och hämta
metoder, är SOAP bättre p g a att det är mer robust och
flexibelt. SOAPs två viktig element är service Contract Language
och DISCO (Discovery of Web Services) som ingår i Visual Studio.Net.
UDDI står för Unicersal Description
Discovery and Integration of Web services. Upptäckts- utforskningsföretag
världen över som erbjuder just de produkter och tjänster
som du behöver. Registrera ditt eget företags produkter och tjänster
som du vill att andra ska upptäcka Den funkar som en global elektronik
" Gula sidor". Teknologi- och affärs eliten leder utvecklingen och
spridningen av en öppen Internet baserad universell beskrivning, upptäckt
och integration (UDDI) specifikation. UDDI är byggstenen som kommer
att göra det möjligt för företag att snabbt, enkelt
och dynamiskt hitta och göra affärer med varandra genom att använda
de applikationer som de fördrar. De som låg bakom SOAP var Microsoft,
IBM, och Ariba men medlemslistan för UDDI konsortiumet omfattar nu
nästan alla ledande mjukvaruleverantörer.
WSFL Web Service Flow Language (Web tjänsternas
flödes språk) definierar arbetsflöden sammansatta av Web
tjänster från arbetsflöden av lägre nivå. WSFL
är det senaste inom Web tekniken som arbetar med sina partner som
standardiserar ett språk som bemöter dessa behov. WSFL är
IBMs standardiseringsprocess. Då ett definitionsspråk för
ett arbetsschema såsom WSFL blir standard, stödjer förmodligen
andra företag det.
Bill Gates ger följande förklaringar om
strukturerna Web Services använder sig av för att kommunicera:
1. Ett fysiskt medium där kommunikationen äger
rum. Det har vi redan : internet.
2. Beståndsdelarna av en Web Services bär
information om sig själva, eg. , de är självbeskrivande,
och kan hitta varandra på internet. Antagandet är att skapandet
av en bindning mellan komponenter kan ske så sent som under körning.
Det måste vara ett universalt accepterat sätt för service
att hitta varandra på internet. Denna funktion är tillhandahållen
av UDDI, eller Universal Description, Discovery and Intergration. Produktenav
en bred industri insats.
3. Ett gemensamt kommunikationsspråk som program
kan förstå. Extended Markup Language eller XML har tagit den
rollen.
4. Med internet som utbytesmedium behövs ett
Internetprotokoll för utbytet ska äga rum. Det protokollet är
?The simple objekt access protokol(SOAP),också skapad genom en gemensam
ansträngning inom industrin.
Fördelar
Applikationer i framtiden skall byggas från
Web Services som är dynamisk valda under körning baserad på
deras pris, kvalitet och tillgänglighet.
Web service är garanterad att bli hjärtat
av nästa generations distribuerade system på grund av följande:
-
Interoperability. En Web service kan samspela med andra Web service
tack vare SOAP ( den nya standard protokoll stödjas av dem flesta
leverantörer). Problemen för konvertering mellan CORBA, DCOM
och andra protokoller är på vägg att försvinna . Och
eftersom Web Service kan vara skriven i vilket språk som helst (även
Cobol I bet) olika utvecklaren behöver inte ändra sina utvecklingsmiljöer
för att producera eller konsumera Web Service.
-
Ubiquity (överallt förekommande). Web services kommunicerar
genom http och XML. Därför alla maskiner som stödjer dessa
teknologier kan både skapa och access Web Service. Snart ska vi ha
dem i telefoner, bilar och även i soda maskiner. Soda supplier getting
low? Inget problem, trådlösa nätverk för soda maskiner
kan kontakta den lokala leverantörens webb service för beställning
av mera av din favorit dricka.
-
Få spärrningar. Koncepten bakom Web Services är
att den är lätt att förstå och att det finns tillgängliga
verktygslådor från leverantörer som IBM och Microsoft
som tillåter Web Service utvecklare att snabbt skapa och sprida Web
Services. Dessutom några av dessa verktygslådor tillåter
pre-existerande COM komponenter och Java beans att på ett enkel sätt
används som Web Services.
-
Industri stöd. Dem flesta stora leverantörer stödjer
SOAP och den omgivande Web Service teknologi , till exempel Microsoft.NET
plattformen är baserad i Web Service. Därmed gör det enkelt
för komponents skrivna i Visual Basic bli utvecklad som Web Service,
och konsumerad av Web Services skrivna med IBM visualAge ,och viceversa.
Utmaningar
Så länge låter allting bra, men
för att Web Services ska lyckas finns det fortfarande många
utmaningar som måste mötas.
Många av dem är relaterad till den öppna
ovänligt miljö där den måste överleva. Här
är några av dem orsaker:
-
Upptäckt. Hur kan en Web service annonsera sig själv för
att bli upptäckt av andra webb services? Vas händer om services
ändras eller flyttas efter att ha blivit upptäckt? WSLD (Web
service definition language) och UDDI (Universal Description, Discovery
and Integration) är två nya standarder som inriktar sig på
denna fråga.
-
Pålitlighet. Några Web services är mer pålitliga
än andra. Hur kan denna pålitlighet bemötas och kommuniceras?
Vad händer om en webb Services värd går ner tillfälligt?
Lokaliserar du en möjlig service värd av en annan leverantör,
eller väntar du tills den första kommer tillbaka? Hur vet du
vilka andra leverantörer kan du lita på?
-
Säkerhet. Några Web Services skall vara publika , tillgängliga
och osäkra, men dem flesta affärsrelaterade services skall använda
enkrypterad kommunikation med authentifikation. Om du har ett avtal med
en levernatör som förser hela världen med Web Services,
hur kan dessa leverantörer veta om dina säkerhetsrättigheter?
-
Transaktioner. Traditionella transaktioner system använder
en två-phase commit där alla deltagande resurser är samlad
och låsta tills hela transaktionen slutförs. Detta lyckas i
en stängd miljö där transaktioner har kort liv , men inte
i öppna miljöer där transaktioner kan tar timmar eller dag.
-
Förvaltning. Vilken sorts mekanism behövs för att förvalta
ett stort distribuerat system. Är det möjligt att "outsource"
förvaltningen av en webb Service till andra Web Services.