140 likes | 316 Views
IDU 0080 Webteenused ja internetilahenduste arhitektuur. Ivar Meikas Ivar.meikas@ttu.ee. Sisukord. Lühidalt korraldusest Teenustele orienteeritud arhitektuur Mis tehnoloogiaid peamiselt kasutatakse teenustele orienteeritud süsteemide juures. Lühidalt korraldusest.
E N D
IDU 0080 Webteenused ja internetilahenduste arhitektuur Ivar Meikas Ivar.meikas@ttu.ee
Sisukord • Lühidalt korraldusest • Teenustele orienteeritud arhitektuur • Mis tehnoloogiaid peamiselt kasutatakse teenustele orienteeritud süsteemide juures
Lühidalt korraldusest • Täpsed nõudmised ja võimalikud referaadi teemad saadan nädala jooksul emailidele. • Aine läbimiseks on vaja teha projekt ja kirjutada väike referaat.
Mis on teenusele orienteeritud arhitektuur • Inglise keeles SOA ehk Service Oriented Arcitecture • Kirjeldab arhitektuure, kus süsteemid on ehitatud hajusalt seotud teenustega, mis toetavad äriprotsesse ja tarkvara kasutajaid. • SOA ei ole seotud ühegi konkreetse tehnoloogilise lahendusega vaid on rohkem kontsept või ideoloogia.
Miks on vaja SOA-d • Loodud teenuseid saab kasutada sõltumata kliendi platvormist. • On võimalik taaskasutada väga palju olemasolevaid teenuseid ja luua lisaväärtust vähese tööga.
Webteenuse erinevad osad • Selgelt defineeritud liidesed (WSDL) • Sõnumite formaalne kirjeldamine (XSD) • Teenuste register (UDDI) • Sõnumite edastamine (SOAP jt.)
XML • eXtensible Markup Language • Tekstipõhine kirjeldusviis andmaks andmetele puukujulist struktuuri. • Suhteliselt lihtsalt loetav nii masinate kui inimeste poolt • Väga hästi korrektsuskontrollitav formaat. • Puukujuline struktuur sobib enamuse andmete esitamiseks. • Platvormisõltumatu
XMLi näide <?xml version="1.0" encoding="UTF-8"?> <recipe name="bread" prep_time="5 mins" cook_time="3 hours"> <title>Basic bread</title> <ingredient amount="3" unit="cups">Flour</ingredient> <ingredient amount="0.25" unit="ounce">Yeast</ingredient> <ingredient amount="1.5" unit="cups" state="warm">Water</ingredient> <ingredient amount="1" unit="teaspoon">Salt</ingredient> <instructions> <step>Mix all ingredients together, and knead thoroughly.</step> <step>Cover with a cloth, and leave for one hour in warm room.</step> <step>Knead again, place in a tin, and then bake in the oven.</step> </instructions> </recipe>
WSDL • Web Service Description Language • Stantard, millega kirjeldatakse ära webteenuseid. • WSDLiga antakse info, millistest meetoditest, sõnumitest ja andmetest teenus koosneb. • Sõnum • Meetod • Andmed
XSD • XML schema • XML failide struktuuri kirjeldamise standard • Kirjeldatakse ära elemendid, atribuudid, nende vahelised seosed ja andmetüübid. • XSD fail on sisuliselt XML dokument, millel on eelnevalt kokkulepitud elemendid, atribuudid jms. osad.
XSD näide <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"> <xs:element name="country" type="Country"/> <xs:complexType name="Country"> <xs:sequence> <xs:element name="name" type="xs:string"/> <xs:element name="population" type="xs:decimal"/> </xs:sequence> </xs:complexType> </xs:schema>
UDDI • Universal Description Discovery and Integration • Register erinevate teenusepakkujate teenustest, nende asukohtadest ja vormist. • White pages – aadress, kontakt jms. • Yello pages – kategoriseeritud nimekiri teenustest • Green pages – tehnilised detailid teenuste kohta
SOAP • Simple Object Access Protocol • Protokoll vahendamaks XML sõnumeid üle arvutivõrgu
Veel märksõnu • RPC – Remote Procedure Call • Tehnoloogia, käivitamaks meetodied teistes arvutites • DCOM – Distributed Component Object Model • Microsofti tehnoloogia tarkvarakomponentide omavaheliseks suhtlemiseks erinevate arvutite vahel. • CORBA - Common Object Request Broker Architecture • Tehnoloogia erinevatel platvormidel tarkvarakomponentide sidumiseks.