Klasikinių Web servisų našumas. Galimi sprendimai. Protocol Buffers. Bendros charakteristikos. XML paremtų Web servisų našumo problemos

Size: px
Start display at page:

Download "Klasikinių Web servisų našumas. Galimi sprendimai. Protocol Buffers. Bendros charakteristikos. XML paremtų Web servisų našumo problemos"

Transcription

1 Klasikinių Web servisų našumas XML paremtų Web servisų našumo problemos Greiti Web servisai Papildomi resursai reikalingi XML dokumentų apdorojimui (parse, serialize) Papildoma atmintis XML dokumento tekstinei reprezentacijai Efektyvumas apdorojant didelių apimčių XML dokumentus Vienas iš sprendimų: binarinė duomenų reprezentacija Binarinė serializacija Galimi sprendimai Fast Infoset (ITU/ISO standartai) EXI: Efficient XML Interchange (W3C) BiM: Binary MPEG format for XML (ISO)... Kiti sprendimai Binariniai servisai ir sprendimai Kompresija (GZIP) Binariniai servisai: Protocol Buffers, Thrift,... Standartas de facto neegzistuoja (?) Bendros charakteristikos IDL kalba pranešimų sintaksės aprašui Efektyvumas Pranešimų versijų palaikymas Binarinis serializavimas Karkasai/bibliotekos įvairioms kalboms ir platformoms Protocol Buffers...a language-neutral, platform-neutral, extensible way of serializing structured data for use in communications protocols, data storage, and more......think XML, but smaller, faster, and simpler......protocol buffers were initially developed at Google to deal with an index server request/response protocol... Google

2 Kas tai? Kalba aprašyti duomenų struktūrai Priemonės, generuoti kodui pasirinktoje programavimo kalboje Klasės, metodai (get/set), serializavimas,... Java, C++, Python (+plugins) Duomenų (kalbos objektų) serializavimo/deserializavimo priemonės Serializacija į binarinį formatą Protokolo versijų palaikymas Istorija Sukurta ir naudojama Google servisams nuo 2001 Atviro kodo nuo 2008 Intensyviai naudojama visuose Google servisuose BSD licenzija Principas Pranešimų struktūros aprašas MyMessage.proto message Person { required string name = 1; required int32 id = 2; optional string = 3;... protoc (compile) Java classes Person.java Person p = new Person(); p.setname("john Doe");... p.john.writeto(serverout); e package tutorial; option java_package = "com.example.tutorial"; option java_outer_classname = "AddressBookProtos"; message Person { required string name = 1; required int32 id = 2; optional string = 3; enum PhoneType { MOBILE = 0; HOME = 1; WORK = 2; AddressBook.proto Pranešimo laukai: pasikartojamumas/būtinumas, tipas, vardas, žymė (binarinis ID) Galimų reikšmių nurodymas...? C++ classes Person.cpp Network e DB message PhoneNumber { required string number = 1; optional PhoneType type = 2 [default = HOME]; repeated PhoneNumber phone = 4; message AddressBook { repeated Person person = 1; Apibrėžtų struktūrų naudojimas kaip duomenų tipai Kompiliatorius Pvz.: Naudojimas (Java) Konkretūs pranešimai kuriami atitinkamų Java/C++/Python klasių pagalba Generuojama protoc kompiliatoriumi protoc --java_out=gen/java \ --cpp_out=gen/cpp \ --python_out=gen/python AddressBook.proto package com.example.tutorial; public final class AddressBookProtos { private AddressBookProtos() { { public static void registerallextensions( com.google.protobuf.extensionregistry registry) { public static final class Person extends... OutputStream serveroutputstream =... Person john = Person.newBuilder().setId(1234).setName("John Doe").set ("jdoe@example.com").addPhone( Person.PhoneNumber.newBuilder().setNumber(" ").setType(Person.PhoneType.HOME)).build(); System.out.println(john.toString()); john.writeto(serveroutputstream);... InputStream inputstream =...; Person p = Person.parseFrom(inputStream); Tekstinis formatas name: "John Doe" id: "jdoe@example.com" phone { number: " " type: HOME Binarinis formatas a84a6f686e20446f6510ffffffd291 a106a646f d706c652e6 36f6d22ca d

3 Protocol Buffers vs. XML Paprastumas Kompaktiškumas (nuo 3 iki 10 kartų) Greitumas (nuo 20 iki 100 kartų) Tiesiogiai generuojamos lengvai naudojamos klasės Mime Types application/x-protobuf application/octet-stream Apache Thrift Kiti sprendimai: Thrift IDL (struktūros, servisai), protokolai, transportas, versijavimas Duomenų tipai (baziniai, Map, Set, konstantos) Java, C++, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, Smalltalk, OCaml RPC infrastruktūra Next generation PB Plačiai naudojama Facebook servisuose (nuo 2007) Apache licenzija include "shared.thrift" namespace cpp addrbook namespace java addrbook enum PhoneType { MOBILE = 0, HOME = 1, WORK = 2 struct PhoneNumber { 1: string number, 2: optional PhoneType type struct Person { 11: string name, 12: i32 id, 12: string , 13: PhoneNumber phone exception InvalidOperation { 1: i32 what, 2: string why Thrift pvz Apache Avro O taip pat... Avro Duomenų serializavimo sistema Duomenų schemos aprašomos JSON formatu Serializuojama kartu su duomenimis Panašu į Thrift/ProtoBuff, bet... Nenaudojami elementų ID Nenaudojamos elementų žymės (tag) Dinamiški pranešimų tipai - : sistemos stabilumas ir palaikymas (dok.?) service AddressBook extends shared.sharedservice { void ping(), i32 add(1:string name, 2:string , 3:string number, 4:PhoneType type ) Abstract Syntax Notation One ASN.1...Abstract Syntax Notation number One is a standard that defines a formalism for the specification of abstract data types... ITU-T ISO/IEC Abstrakti sintaksė hierarchinių duomenų tipų apibrėžimui Nepriklausoma nuo programavimo kalbų ir apdorojimo priemonių Duomenų kodavimo/dekodavimo taisyklės Kodavimas/dekodavimas atitinkantis aprašytą struktūrą skirtas siuntimui komunikacijos kanalu

4 Naudojimas ir veikimas ASN.1 duomenų tipai Gen. X C++ MyMessage.asn AsnAddressBook DEFINITIONS ::= BEGIN Person ::= SEQUENCE { name UniversalString, id INTEGER, Abstrakti sintaksė Gen. Y Java Baziniai BOOLEAN, INTEGER, REAL, BIT STRING, OCTET STRING, ENUMERATED Simbolių eilutės (ISO poaibiai) NumericString, VisibleString, UTF8String, ASCIIString,... C++ classes Sintimo sintaksė Java classes Objektai Struktūros Person.cpp Encoder (lib, dll,...) c 84a 6f 68 6e.. Network DB Encoder (jar) Person.java Kiti SEQUENCE/SEQUENCE OF, SET/SET OF ANY, NULL, UTCTime,... BER, PER, XER,... BER, PER, XER,... Pvz.: abstrakti sintaksė Pvz: abstrakti sintaksė su žymėmis AddressBook.asn AsnAddressBook DEFINITIONS AUTOMATIC TAGS ::= BEGIN END Person ::= SEQUENCE { name UniversalString, id INTEGER, UniversalString OPTIONAL, phone SEQUENCE OF PhoneNumber PhoneType ::= ENUMERATED{ mobile(0), home(1), work(2) PhoneNumber ::= SEQUENCE { number VisibleString, type PhoneType DEFAULT home AddressBook ::= SEQUENCE { person SET OF Person DEFAULT { Modulis: tipų apibrėžimų aibė (automatinis žymių generavimas) Pranešimo tipas ir laukai: pasikartojamumas/būtinumas, vardas,... Galimų reikšmių išvardijimas (reikšmes atitinkantys kodai) Apibrėžtų struktūrų naudojimas kaip duomenų tipai tag - gali būti automatiniai arba apibrėžti išreikštiniu būdu Naudojami koduojant/dekoduojant siunčiamų tipų reikšmes Lokalūs tag AsnAddressBook DEFINITIONS ::= BEGIN Person ::= [APPLICATION 1] SEQUENCE { name [1] UniversalString, id [2] INTEGER, [3] UniversalString OPTIONAL, phone [4] SEQUENCE OF PhoneNumber PhoneType ::= [APPLICATION 2] ENUMERATED{ mobile(0), home(1), work(2) PhoneNumber ::= [APPLICATION 3] SEQUENCE { number [1] INTEGER, type [2] PhoneType DEFAULT home AddressBook ::= [APPLICATION 4] SEQUENCE { person [1] SET OF Person DEFAULT { END Programos lygmens tag ASN.1 žymių tipai ( tags ) ASN.1 reikšmės UNIVERSAL ASN1 standartiniai tipai (UNIVERSAL 1 : boolean, UNIVERSAL 9 : real, ) APPLICATION Apibrėžti taikomojoje programoje PRIVATE Apibrėžti organizacijoje CONTEXT-SPECIFIC Apibrėžti lokaliai Basic ASN.1 Value Notation Reikšmės vardas myaddressbook AddressBook ::= { person { name "John Doe", id 2338, "john.doe@mail.server", phone { number " ", type work, person { name "Tadas Blinda", id 2300, phone { number " ", type mobile,... Reikšmės tipas Reikšmės turinys

5 Tipai ir reikšmės Kodavimo taisyklės Person ::= SEQUENCE { name UniversalString, id INTEGER, UniversalString Keywords ::= SET OF VisibleString Cities ::= SEQUENCE OF OF VisibleString addrpreson Person ::= { name "John Doe", id 54, "john.doe@example.com" someasn1keywords Keywords ::= {"INTEGER", "BOOLEAN", "REAL" ltcities Cities ::= {"Vilnius", "Kaunas", "Klaipeda", "Siauliai" Taisyklės koduoti duomenims į formatą, atitinkantį abstrakčią struktūrą Basic Encoding Rules (BER) Distinguished Encoding Rules (DER) XML Encoding Rules (XER) Packed Encoding Rules (PER) Generic String Encoding Rules (GSER)... Standartizuota atitinkamomis specifikacijomis BER kodavimas Reikšmė susideda iš keturių dalių (baitų): Typo kodas, reikšmės ilgis (baitais), reikšmė, reikšmės pabaigos kodas Reikšmė gali savo ruožtu būti sub-tipas,... Numatyti ilgų tipų kodų ir reikšmių atvejai Age ::= INTEGER(0..100) personage Age ::= 15 BER: Pvz.: kodavimo taisyklės App F App 2 Tag Ilgis Reikšmė PER: App App 2 Žymės tipas: 00 Universal 01 Application 10 Context 11 Private Struktūra: 0 Primityvus 1 Sudėtinis Tipo kodas Reikšmės ilgis Reikšmė XER: App 1 <Age>15</Age> App Panaudojimas LDAP žinynai Apsauga, autentifikaviams, kriptografija Bankų sistemos Mobili/bevielė komunikacija Tele/video-konferencijos, multimedia Transporto/mobiliosios sistemos... Organizacijos Specifikacijos ISO: International Organization for Standardization IEC: International Electrotechnical Commission ITU-T: International Telecommunication Union - Telecommunication Standardization Sector ASN.1 : 2002: ITU-T Rec. X.68x ISO/IEC 8824-x BER, CER, DER : ITU-T Rec. X.690 ISO/IEC

6 XML Infoset Visi elementai sudarantys XML dokumentą Fast Infoset Elementai, atributai, reikšmės, tarpusavio priklausomybė, komentarai... Visa informaciją, kurią apdorojanti programa gali pasiekti iš konkretaus XML dokumento XML Fast Infoset Kodavimas, leidžiantis efektyviau pateikti tą pačią informaciją, kaip ir klasikiniame XML Fast Infoset kodavimas Atitinka XML reikalavimus XML infoset (elementų) palaikymas (Seft-describing) Binarinis kodavimas Fast Infoset standartas ITU-T / ISO standartas 2005: ITU-T X.891 ISO/IEC Remiasi elementas-ilgis-reikšmė kodavimu Remiasi XML elementų žodynu (elementų vardai nekartojami) Tiesiogiai palaikomas binarinis turinys Žodynas Dico (XML tags/ids) Elem.ID1 Len Data (30311c...) ID2 Len2... Infoset Fast Infoset programinis palaikymas programa... Taikomoji programa Programos kodas XML Infoset SAX/StTA/DOM Infoset serializuoti analizuoti (parse) serializuoti parse XML Fast Infoset Kodavimas XML Fast Infoset Pvz (Java realizacija): SAX, StAX, DOM API su Fast Infoset serializacija

7 Optimizavimas Serializacija: ~ klasikiniai XML Parse : 3x - 5x greičiau Dydis: 30% - 70% mažiau Fast Web services ASN.1 ir XML? ASN.1 gali būti naudojamas XML dokumento struktūros aprašui <schema...> ASN.1 aprašas XML Schema XML Schema <complextype name="person"> <sequence> <element name="name" type="string"/> <element name="id" type="integer"/> <element name="phone" type="tns:phonenumber"/> </sequence> </complextype> <complextype name="phonenumber"> <sequence> <element name="number" type="string"/> </sequence> </complextype> </schema> AddressBook DEFINITIONS ::= BEGIN END ASN.1 Schema Person ::= SEQUENCE { name UniversalString, id INTEGER, phone SEQUENCE OF PhoneNumber PhoneNumber ::= SEQUENCE { number VisibleString ITU-T Rec. X.694 standartas ASN.1 encoding rules: Mapping W3C XML schema definitions into ASN.1 Standartizuotas XML Schema vaizdavimas į ASN.1 Vaizdavimas XML Schema Atitinka XML Projektuoja ASN.1 Schema Koduoja ASN.1 koduotė (pvz. PER) Fast Web Services ITU-T X ITU-T X.892: Fast Web Services (2006) ASN.1 Schema SOAP 1.2 pranešimams WSDL anotacijos SOAP elementų kodavimo taisyklės <env:envelope xmlns:env=" <env:body> </env:body> </env:envelope> envelope Envelope ::= { header { body-or-fault : body { Fast Web servisai: WSDL <wsdl:definitions... xmlns:fasts="urn:ohn:joint-iso-itu-t:asn1:generic-applications:fast-web-services:description"...> <wsdl:binding name="addrbookssoap" type="tns:addrbook"> <soap:binding style="document" transport=" <wsdl:operation name="getperson">... </wsdl:binding> <wsdl:binding name="addrbookfastwssoap" type="tns:addrbook"> <soap:binding style="document" transport=" <fasts:binding/> <wsdl:operation name="getperson">... </wsdl:binding> <wsdl:service name="addrbookfastws"> <wsdl:port binding="tns:addrbookfastwssoap" name="addrbookfastwssoap"> <soap:address location=" </wsdl:port> <wsdl:port binding="tns:addrbookssoap" name="addrbooksoap"> <soap:address location=" </wsdl:port> </wsdl:service> PER </wsdl:definitions>

8 Fast Web servisai: principai Realizacijos / Java Klasikinis SOAP binding <env:envelope...> <env:body> <u:person> <u:name>john Doe</u:name> <u: >john.doe@ .server</u: > </u:person> </env:body> </env:envelope> Palaiko visi pagrindiniai Java karkasai JAX-WS -Dcom.sun.xml.ws.client.ContentNegotiation=pessimistic Service (Application) getperson SOAP ((BindingProvider) port).getrequestcontext().put("com.sun.xml.ws.client.contentnegotiation", "pessimistic"); Axis2 ASN.1 SOAP (PER) Fase Web Services SOAP binding Axis2 Fast Infoset module Axis2 web app konfigūravimas (axis2.xml) Client.getOptions().setProperty( Constants.Configuration.MESSAGE_TYPE,"application/soap+fastinfoset"); Optimizavimas X.694 įgalina optimalų standartinį ASN.1 kodavimą Nebūtina self-describing savybė Kompaktiškas / binarinis SOAP 1.2 pranešimų kodavimas (PER) Rezultatai Efficient XML Interchange (EXI) Kodavimas: -4x Dekodavimas: -10x Dydis: -80% EXI Efficient XML Interchange (EXI) Format 1.0 W3C Recommendation, 2011 Efficient XML, Efficient Web Services (AgileDelta) Principai ir tikslai Universalumas platesnis ratas XML naudojančių programų ir sistemų Minimalus taikomas mobilioms ir pan. platformoms Efektyvus tinkamas efektyviam duomenų apdorojimui Lankstus taikomas ir su netiksliomis schemomis Interoperabilus integruojamas su turimomis technologijomis ir sprendimais

9 EXI Stream EXI Header Konceptai ir struktūra Dokumento antraštė, turinio kodavimo nustatymai EXI Body Turinys, susidedantis iš įvykių EXI Event : elementus atitinkantys įvykiai (~SAX, StAX) Start Document, Start Element, Attribute, End Element,... EXI Grammar Elementų kodai kodavimo efektyvumui XML ir EXI <?xml version="1.0" encoding="utf-8"?> <notebook date=" "> <note category="exi" date=" "> <subject>exi</subject> <body>do not forget it!</body> </note> <note date=" "> <subject>shopping List</subject> <body>milk, honey</body> </note> </notebook> Šaltinis: Kompaktiškumas Realizacijos Iki -100x < XML, -14x < GZIP/XML Realizacijos EXIficient (@sourceforge), Java OpenEXI (@sourceforge), Java Efficient XML (AgileDelta), Java,.Net, C++ Efficient Web Services: praplėtimai WS karkasams (JAX-WS, Axis2, CXF,...)

Trumpai-ilga istorija

Trumpai-ilga istorija Įvadas į Web Services Kas yra Web Service? Kas ką žino??? 70-ieji: Mainframe Trumpai-ilga istorija 80-ieji: Client-Server Istorijos 90-ieji: Web 2000: SOA 2010: Cloud Computing Šaltinis: Sergejus Barinovas,

More information

Googles Approach for Distributed Systems. Slides partially based upon Majd F. Sakr, Vinay Kolar, Mohammad Hammoud and Google PrototBuf Tutorial

Googles Approach for Distributed Systems. Slides partially based upon Majd F. Sakr, Vinay Kolar, Mohammad Hammoud and Google PrototBuf Tutorial Protocol Buffers Googles Approach for Distributed Systems Slides partially based upon Majd F. Sakr, Vinay Kolar, Mohammad Hammoud and Google PrototBuf Tutorial https://developers.google.com/protocol-buffers/docs/tutorials

More information

s Protocol Buffer Knight76 at gmail.com

s Protocol Buffer Knight76 at gmail.com s Protocol Buffer Knight76 at gmail.com 1. RPC, Not RPC 2.. Proto (structed data) Proto Compiler C++ Java python References Protocol Buffers: A new open source release http://www.youtube.com/watch?v=k-

More information

Protocol Buffers, grpc

Protocol Buffers, grpc Protocol Buffers, grpc Szolgáltatásorientált rendszerintegráció Service-Oriented System Integration Dr. Balázs Simon BME, IIT Outline Remote communication application level vs. transport level protocols

More information

JAVA pagrindai Lek. Liudas Drejeris

JAVA pagrindai Lek. Liudas Drejeris JAVA pagrindai Lek. Liudas Drejeris Programa (1) Programa, tai eilė instrukcijų (vadinamų programiniais sakiniais), kurie vykdomi paeiliui, kol gaunamas norimas rezultatas. Programa (2) Programa (2) /*

More information

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI applications Generic applications of ASN.1

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI applications Generic applications of ASN.1 International Telecommunication Union ITU-T X.892 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (05/2005) SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI applications Generic applications

More information

CSCI-1680 RPC and Data Representation John Jannotti

CSCI-1680 RPC and Data Representation John Jannotti CSCI-1680 RPC and Data Representation John Jannotti Original Slides from Rodrigo Fonseca Today Defining Protocols RPC IDL Problem Two programs want to communicate: must define the protocol We have seen

More information

Semesterprojekt Implementierung eines Brettspiels (inklusive computergesteuerter Spieler) Remote Procedure Calls

Semesterprojekt Implementierung eines Brettspiels (inklusive computergesteuerter Spieler) Remote Procedure Calls Semesterprojekt Implementierung eines Brettspiels (inklusive computergesteuerter Spieler) Wintersemester 16/17 Remote Procedure Calls Patrick Schäfer patrick.schaefer@hu-berlin.de Marc Bux buxmarcn@informatik.hu-berlin.de

More information

CS 378 Big Data Programming

CS 378 Big Data Programming CS 378 Big Data Programming Lecture 9 Complex Writable Types AVRO, Protobuf CS 378 - Fall 2017 Big Data Programming 1 Review Assignment 4 WordStaQsQcs using Avro QuesQons/issues? MRUnit and AVRO AVRO keys,

More information

Parengė ITMM Artūras Šakalys 1

Parengė ITMM Artūras Šakalys 1 2014.02.02 Parengė ITMM Artūras Šakalys 1 2014.02.02 Parengė ITMM Artūras Šakalys 2 Kaip suprantame masyvą? Pavyzdys: Peteliškių šeima; Gėlių laukas; 2014.02.02 Parengė ITMM Artūras Šakalys 3 Kaip suprasti

More information

Publications Office. TED Website - Notice Viewer WS Technical Specifications Document - Appendix D - NoticeViewer

Publications Office. TED Website - Notice Viewer WS Technical Specifications Document - Appendix D - NoticeViewer Publications Office Subject NoticeViewer WS API Version / Status 1.03 Release Date 17/02/2017 Filename Document Reference TED_WEBSITE-TSP-Technical_Specifications_Document-v1.03 TED-TSP-Appendix D Table

More information

CSCI-1680 RPC and Data Representation. Rodrigo Fonseca

CSCI-1680 RPC and Data Representation. Rodrigo Fonseca CSCI-1680 RPC and Data Representation Rodrigo Fonseca Today Defining Protocols RPC IDL Problem Two programs want to communicate: must define the protocol We have seen many of these, across all layers E.g.,

More information

Overview of the JSON Encoding Rules (JER)

Overview of the JSON Encoding Rules (JER) Overview of the JSON Encoding Rules (JER) Alessandro Triglia, OSS Nokalva sandro@oss.com July 2017 OSS Nokalva, Inc. 1 CONTENTS 1 Introduction...3 2 The JSON Encoding Rules...4 2.1 JER encoding instructions...4

More information

Transitioning from C# to Scala Using Apache Thrift. Twitter Finagle

Transitioning from C# to Scala Using Apache Thrift. Twitter Finagle Transitioning from C# to Scala Using Apache Thrift and Twitter Finagle Steven Skelton September 19, 2013 Empathica Empathica provides Customer Experience Management programs to more than 200 of the world's

More information

CSCI-1680 RPC and Data Representation. Rodrigo Fonseca

CSCI-1680 RPC and Data Representation. Rodrigo Fonseca CSCI-1680 RPC and Data Representation Rodrigo Fonseca Administrivia TCP: talk to the TAs if you still have questions! ursday: HW3 out Final Project (out 4/21) Implement a WebSockets server an efficient

More information

CS 417 9/18/17. Paul Krzyzanowski 1. Socket-based communication. Distributed Systems 03. Remote Procedure Calls. Sample SMTP Interaction

CS 417 9/18/17. Paul Krzyzanowski 1. Socket-based communication. Distributed Systems 03. Remote Procedure Calls. Sample SMTP Interaction Socket-based communication Distributed Systems 03. Remote Procedure Calls Socket API: all we get from the to access the network Socket = distinct end-to-end communication channels Read/write model Line-oriented,

More information

Distributed Systems. 03. Remote Procedure Calls. Paul Krzyzanowski. Rutgers University. Fall 2017

Distributed Systems. 03. Remote Procedure Calls. Paul Krzyzanowski. Rutgers University. Fall 2017 Distributed Systems 03. Remote Procedure Calls Paul Krzyzanowski Rutgers University Fall 2017 1 Socket-based communication Socket API: all we get from the OS to access the network Socket = distinct end-to-end

More information

Tutorial on Fast Web Services

Tutorial on Fast Web Services Tutorial on Fast Web Services This document provides tutorial material on Fast Web Services (it is equivalent to Annex C of X.892 ISO/IEC 24824-2). Some of the advantages of using Fast Web Services are

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology Abstract Syntax Notation One (ASN.1): Specification of basic notation

ISO/IEC INTERNATIONAL STANDARD. Information technology Abstract Syntax Notation One (ASN.1): Specification of basic notation INTERNATIONAL STANDARD ISO/IEC 8824-1 Fourth edition 2008-12-15 Information technology Abstract Syntax Notation One (ASN.1): Specification of basic notation Technologies de l'information Notation de syntaxe

More information

Piqi-RPC. Exposing Erlang services via JSON, XML and Google Protocol Buffers over HTTP. Friday, March 25, 2011

Piqi-RPC. Exposing Erlang services via JSON, XML and Google Protocol Buffers over HTTP. Friday, March 25, 2011 Piqi-RPC Exposing Erlang services via JSON, XML and Google Protocol Buffers over HTTP 1 Anton Lavrik http://piqi.org http://www.alertlogic.com 2 Overview Call Erlang functions using HTTP POST : Server

More information

Developing Interoperable Web Services for the Enterprise

Developing Interoperable Web Services for the Enterprise Developing Interoperable Web Services for the Enterprise Simon C. Nash IBM Distinguished Engineer Hursley, UK nash@hursley.ibm.com Simon C. Nash Developing Interoperable Web Services for the Enterprise

More information

XML Grammar and Parser for the Web Service. Offerings Language

XML Grammar and Parser for the Web Service. Offerings Language XML Grammar and Parser for the Web Service Offerings Language by Kruti Patel, B. Eng. A thesis submitted to the Faculty of Graduate Studies and Research in partial fulfillment of the requirements for the

More information

asn1tools Documentation

asn1tools Documentation asn1tools Documentation Release 0.137.0 Erik Moqvist Nov 15, 2018 Contents 1 About 3 2 Known limitations 5 3 Installation 7 4 Example Usage 9 4.1 Scripting.................................................

More information

SOAP Web Services Objektumorientált szoftvertervezés Object-oriented software design. Web services 11/23/2016. Outline. Remote call.

SOAP Web Services Objektumorientált szoftvertervezés Object-oriented software design. Web services 11/23/2016. Outline. Remote call. SOAP Web Services Objektumorientált szoftvertervezés Object-oriented software design Outline Web Services SOAP WSDL Web Service APIs.NET: WCF Java: JAX-WS Dr. Balázs Simon BME, IIT 2 Remote call Remote

More information

Distributed Programming and Remote Procedure Calls (RPC): Apache Thrift. George Porter CSE 124 February 19, 2015

Distributed Programming and Remote Procedure Calls (RPC): Apache Thrift. George Porter CSE 124 February 19, 2015 Distributed Programming and Remote Procedure Calls (RPC): Apache Thrift George Porter CSE 124 February 19, 2015 End-to-end RPC protocol RPC Components Defines messages, message exchange behavior, Programming

More information

Efficient XML and Weather: Efficient XML Report 1.0

Efficient XML and Weather: Efficient XML Report 1.0 : Efficient XML Report 1.0 Aaron Braeckel Briefing to WXXM/AIXM Conference 04 May 2010 National Center for Atmospheric Research Boulder, CO Background and Motivation XML Benefits: Extensible Human-readable

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: Mapping W3C XML schema definitions into ASN.1

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: Mapping W3C XML schema definitions into ASN.1 INTERNATIONAL STANDARD ISO/IEC 8825-5 Third edition 2015-11-15 Information technology ASN.1 encoding rules: Mapping W3C XML schema definitions into ASN.1 Technologies de l'information Règles de codage

More information

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects Abstract Syntax Notation One (ASN.

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects Abstract Syntax Notation One (ASN. I n t e r n a t i o n a l T e l e c o m m u n i c a t i o n U n i o n ITU-T X.680 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (08/2015) SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY

More information

Programming Web Services in Java

Programming Web Services in Java Programming Web Services in Java Description Audience This course teaches students how to program Web Services in Java, including using SOAP, WSDL and UDDI. Developers and other people interested in learning

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: XML Encoding Rules (XER)

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: XML Encoding Rules (XER) INTERNATIONAL STANDARD ISO/IEC 8825-4 First edition 2002-12-15 Information technology ASN.1 encoding rules: XML Encoding Rules (XER) Technologies de l'information Règles de codage ASN.1: Règles de codage

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology -- Abstract Syntax Notation One (ASN.1): Specification of basic notation

ISO/IEC INTERNATIONAL STANDARD. Information technology -- Abstract Syntax Notation One (ASN.1): Specification of basic notation INTERNATIONAL STANDARD This is a preview - click here to buy the full publication ISO/IEC 8824-1 Fifth edition 2015-11-15 Information technology -- Abstract Syntax Notation One (ASN.1): Specification of

More information

Google Protocol Buffers for Embedded IoT

Google Protocol Buffers for Embedded IoT Google Protocol Buffers for Embedded IoT Integration in a medical device project Quick look 1: Overview What is it and why is useful Peers and alternatives Wire format and language syntax Libraries for

More information

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects Abstract Syntax Notation One (ASN.

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects Abstract Syntax Notation One (ASN. International Telecommunication Union ITU-T X.680 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (11/2008) SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: Specification of Encoding Control Notation (ECN)

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: Specification of Encoding Control Notation (ECN) INTERNATIONAL STANDARD ISO/IEC 8825-3 Second edition 2008-12-15 Information technology ASN.1 encoding rules: Specification of Encoding Control Notation (ECN) Technologies de l'information Règles de codage

More information

WSDL. Stop a while to read about me!

WSDL. Stop a while to read about me! WSDL Stop a while to read about me! Part of the code shown in the following slides is taken from the book Java by D.A. Chappell and T. Jawell, O Reilly, ISBN 0-596-00269-6 What is WSDL? Description Language

More information

Web Services & Axis2. Architecture & Tutorial. Ing. Buda Claudio 2nd Engineering Faculty University of Bologna

Web Services & Axis2. Architecture & Tutorial. Ing. Buda Claudio 2nd Engineering Faculty University of Bologna Web Services & Axis2 Architecture & Tutorial Ing. Buda Claudio claudio.buda@unibo.it 2nd Engineering Faculty University of Bologna June 2007 Axis from SOAP Apache Axis is an implementation of the SOAP

More information

COP 4814 Florida International University Kip Irvine. Inside WCF. Updated: 11/21/2013

COP 4814 Florida International University Kip Irvine. Inside WCF. Updated: 11/21/2013 COP 4814 Florida International University Kip Irvine Inside WCF Updated: 11/21/2013 Inside Windows Communication Foundation, by Justin Smith, Microsoft Press, 2007 History and Motivations HTTP and XML

More information

Sriram Krishnan, Ph.D. NBCR Summer Institute, August 2010

Sriram Krishnan, Ph.D. NBCR Summer Institute, August 2010 Sriram Krishnan, Ph.D. sriram@sdsc.edu NBCR Summer Institute, August 2010 What are Services Oriented Architectures? What are Web services? WSDL (Web Services Definition Language) Techniques for building

More information

Apache Thrift Introduction & Tutorial

Apache Thrift Introduction & Tutorial Apache Thrift Introduction & Tutorial Marlon Pierce, Suresh Marru Q & A TIOBE Index Programming Language polyglotism Modern distributed applications are rarely composed of modules written in a single language.

More information

Web Services. Grid Computing (M) Lecture 6. Olufemi Komolafe 19 January 2007

Web Services. Grid Computing (M) Lecture 6. Olufemi Komolafe 19 January 2007 Web Services Grid Computing (M) Lecture 6 Olufemi Komolafe (femi@dcs.gla.ac.uk) 19 January 2007 UDDI registry retrieved from a DTD WSDL service definition XML schema definition is a describes structure

More information

Web servisai WSDL. Osvaldas Grigas

Web servisai WSDL. Osvaldas Grigas Web servisai WSDL Osvaldas Grigas Web servisų aprašymas Kiekvienas web servisas yra unikalus Jis turi adresą(arba kelis adresus), kuriuo į jį galima kreiptis. Jis supranta tik tam tikros struktūros įeinančius

More information

Introduction to Web Service

Introduction to Web Service Introduction to Web Service Sagara Gunathunga ( Apache web Service and Axis committer ) CONTENTS Why you need Web Services? How do you interact with on-line financial service? Conclusion How do you interact

More information

SOAP Specification. 3 major parts. SOAP envelope specification. Data encoding rules. RPC conventions

SOAP Specification. 3 major parts. SOAP envelope specification. Data encoding rules. RPC conventions SOAP, UDDI and WSDL SOAP SOAP Specification 3 major parts SOAP envelope specification Defines rules for encapsulating data Method name to invoke Method parameters Return values How to encode error messages

More information

Telecommunication Services Engineering Lab. Roch H. Glitho

Telecommunication Services Engineering Lab. Roch H. Glitho Week #1 (January 4-8) Current Generation Networks: From 2G to 2.5G Week #2 (January 11-15) Value added Services in Current Generation Networks Week #3 (January 18-22) Next Generation Network Vision Session

More information

Dave DiFranco Apache Thrift

Dave DiFranco  Apache Thrift Dave DiFranco david.difranco@oracle.com ddif@alum.mit.edu Apache Thrift http://thrift.apache.org Goals of Thrift Scalable, cross-language services development Allow developers to use the right language

More information

Comparative Survey of Object Serialization Techniques and the Programming Supports

Comparative Survey of Object Serialization Techniques and the Programming Supports Comparative Survey of Object Serialization Techniques and the Programming Supports Kazuaki Maeda Abstract This paper compares six approaches of object serialization from qualitative and quantitative aspects.

More information

XML Extensible Markup Language

XML Extensible Markup Language XML Extensible Markup Language Generic format for structured representation of data. DD1335 (Lecture 9) Basic Internet Programming Spring 2010 1 / 34 XML Extensible Markup Language Generic format for structured

More information

C++ programavimo kalba. Konstruktorius, destruktorius, klasių metodų modifikatoriai, objektų masyvai (4 paskaita)

C++ programavimo kalba. Konstruktorius, destruktorius, klasių metodų modifikatoriai, objektų masyvai (4 paskaita) C++ programavimo kalba Konstruktorius, destruktorius, klasių metodų modifikatoriai, objektų masyvai (4 paskaita) Konstruktorius Sukuriant objektą, jo duomenims paprastai turi būti priskiriamos pradinės

More information

Introduction to RPC, Apache Thrift Workshop. Tomasz Powchowicz

Introduction to RPC, Apache Thrift Workshop. Tomasz Powchowicz Introduction to RPC, Apache Thrift Workshop Tomasz Powchowicz It is all about effective communication page 2 Synchronous, asynchronous execution Executor Executor A Executor B Executor A Executor B 1 1

More information

Struktūrų sintaksė Struktūra tai vienodo arba skirtingo tipo kintamųjų rinkinys. Sintaksė: struct vardas { ; type1 var1; type2 var2;... typen varn; //

Struktūrų sintaksė Struktūra tai vienodo arba skirtingo tipo kintamųjų rinkinys. Sintaksė: struct vardas { ; type1 var1; type2 var2;... typen varn; // C programavimo kalba 10 paskaita (Struktūros) Struktūrų sintaksė Struktūra tai vienodo arba skirtingo tipo kintamųjų rinkinys. Sintaksė: struct vardas { ; type1 var1; type2 var2;... typen varn; // Gale

More information

Operating Systems. 18. Remote Procedure Calls. Paul Krzyzanowski. Rutgers University. Spring /20/ Paul Krzyzanowski

Operating Systems. 18. Remote Procedure Calls. Paul Krzyzanowski. Rutgers University. Spring /20/ Paul Krzyzanowski Operating Systems 18. Remote Procedure Calls Paul Krzyzanowski Rutgers University Spring 2015 4/20/2015 2014-2015 Paul Krzyzanowski 1 Remote Procedure Calls 2 Problems with the sockets API The sockets

More information

INTERNATIONAL TELECOMMUNICATION UNION

INTERNATIONAL TELECOMMUNICATION UNION INTERNATIONAL TELECOMMUNICATION UNION ITU-T X.691 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (07/2002) SERIES X: DATA NETWORKS AND OPEN SYSTEM COMMUNICATIONS OSI networking and system aspects Abstract

More information

Web services. In plain words, they provide a good mechanism to connect heterogeneous systems with WSDL, XML, SOAP etc.

Web services. In plain words, they provide a good mechanism to connect heterogeneous systems with WSDL, XML, SOAP etc. Web Services Web Services A Web service is a software system designed to support interoperable machine-to-machine interaction over a network. It has an interface described in a machine-processable format

More information

Exercise SBPM Session-4 : Web Services

Exercise SBPM Session-4 : Web Services Arbeitsgruppe Exercise SBPM Session-4 : Web Services Kia Teymourian Corporate Semantic Web (AG-CSW) Institute for Computer Science, Freie Universität Berlin kia@inf.fu-berlin.de Agenda Presentation of

More information

ASN2XML. ASN.1 to XML Translator. Version 2.1. Reference Manual. Objective Systems July 2010

ASN2XML. ASN.1 to XML Translator. Version 2.1. Reference Manual. Objective Systems July 2010 ASN2XML ASN.1 to XML Translator Version 2.1 Reference Manual Objective Systems July 2010 The software described in this document is furnished under a license agreement and may be used only in accordance

More information

MTAT Applied Cryptography

MTAT Applied Cryptography MTAT.07.017 Applied Cryptography Abstract Syntax Notation One (ASN.1) University of Tartu Spring 2014 1 / 20 Abstract Syntax Notation One Notation to describe abstract types and values Describes information

More information

This tutorial is going to help all those readers who want to learn the basics of WSDL and use its features to interface with XML-based services.

This tutorial is going to help all those readers who want to learn the basics of WSDL and use its features to interface with XML-based services. i About the Tutorial This is a brief tutorial that explains how to use to exchange information in a distributed environment. It uses plenty of examples to show the functionalities of the elements used

More information

Apache Avro. Sharing and managing data efficiently

Apache Avro. Sharing and managing data efficiently Apache Avro Sharing and managing data efficiently Scott Carey Apache Avro PMC Chair Principal Architect, RichRelevance scottcarey@apache.org March 6, 2012 What is Apache Avro? "Apache Avro is a data serialization

More information

ASN.1: A Powerful Schema Notation for XML

ASN.1: A Powerful Schema Notation for XML ASN.1: A Powerful Schema Notation for XML Olivier DUBUISSON ITU-T Q.12/17 (ASN.1) Rapporteur Leader of the ITU-T ASN.1 Project Olivier.Dubuisson@francetelecom.com http://asn1.elibel.tm.fr http://www.itu.int/itu-t/asn1/

More information

XML in the Development of Component Systems. XML Protocols: XML-RPC

XML in the Development of Component Systems. XML Protocols: XML-RPC XML in the Development of Component Systems XML Protocols: XML-RPC Protocols Distributed computing Components are deployed on different network nodes Object implementations do not share memory Communication

More information

public abstract class com.objsys.asn1j.runtime.asn18bitcharstring extends com.objsys.asn1j.runtime.asn1charstring

public abstract class com.objsys.asn1j.runtime.asn18bitcharstring extends com.objsys.asn1j.runtime.asn1charstring public abstract class com.objsys.asn1j.runtime.asn18bitcharstring extends com.objsys.asn1j.runtime.asn1charstring This is an abstract base class for holding the ASN.1 8-bit character string types (IA5String,

More information

ก. ก ก (krunapon@kku.ac.th) (pongsakorn@gmail.com) ก ก ก ก ก ก ก ก ก ก 2 ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก ก 3 ก ก 4 ก ก 1 ก ก ก ก (XML) ก ก ก ก ( HTTP) ก ก Web Services WWW Web services architecture

More information

ios Uždara operacinė sistema skirta tik Apple įrenginiams: iphone ipad ipod touch Apple TV

ios Uždara operacinė sistema skirta tik Apple įrenginiams: iphone ipad ipod touch Apple TV ios Uždara operacinė sistema skirta tik Apple įrenginiams: iphone ipad ipod touch Apple TV Pagrindas OS X, skirtas ARM įrenginiams Programavimo aplinka: XCode ir Objective-C Programavimo kompiuteris -

More information

Artix ESB. Bindings and Transports, Java Runtime. Version 5.5 December 2008

Artix ESB. Bindings and Transports, Java Runtime. Version 5.5 December 2008 Artix ESB Bindings and Transports, Java Runtime Version 5.5 December 2008 Bindings and Transports, Java Runtime Version 5.5 Publication date 18 Mar 2009 Copyright 2001-2009 Progress Software Corporation

More information

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: Specification of Octet Encoding Rules (OER)

ISO/IEC INTERNATIONAL STANDARD. Information technology ASN.1 encoding rules: Specification of Octet Encoding Rules (OER) INTERNATIONAL STANDARD ISO/IEC 8825-7 Second edition 2015-11-15 Information technology ASN.1 encoding rules: Specification of Octet Encoding Rules (OER) Technologies de l'information -- Règles de codage

More information

ASN.1 and the Connected Vehicle

ASN.1 and the Connected Vehicle ASN.1 and the Connected Vehicle Alessandro Triglia sandro@oss.com OSS Nokalva, Inc. 2 nd International Summit on the State of the Connected Vehicle Troy, MI 2010-09-30 ASN.1 ASN.1 = Abstract Syntax Notation

More information

JSON is a light-weight alternative to XML for data-interchange JSON = JavaScript Object Notation

JSON is a light-weight alternative to XML for data-interchange JSON = JavaScript Object Notation JSON The Fat-Free Alternative to XML { Lecture : 27, Course : CSC375, Days : TTh", Instructor : Haidar Harmanani } Why JSON? JSON is a light-weight alternative to XML for data-interchange JSON = JavaScript

More information

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects Abstract Syntax Notation One (ASN.

SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY OSI networking and system aspects Abstract Syntax Notation One (ASN. 7 I n t e r n a t i o n a l T e l e c o m m u n i c a t i o n U n i o n ITU-T X.692 TELECOMMUNICATION STANDARDIZATION SECTOR OF ITU (08/2015) SERIES X: DATA NETWORKS, OPEN SYSTEM COMMUNICATIONS AND SECURITY

More information

SERVICE TECHNOLOGIES 1

SERVICE TECHNOLOGIES 1 SERVICE TECHNOLOGIES 1 Exercises 1 19/03/2014 Valerio Panzica La Manna valerio.panzicalamanna@polimi.it http://servicetechnologies.wordpress.com/exercises/ Outline Web Services: What? Why? Java Web Services:

More information

Introduction to the Cisco ANM Web Services API

Introduction to the Cisco ANM Web Services API 1 CHAPTER This chapter describes the Cisco ANM Web Services application programming interface (API), which provides a programmable interface for system developers to integrate with customized or third-party

More information

Introduction to Web Services

Introduction to Web Services 20 th July 2004 www.eu-egee.org Introduction to Web Services David Fergusson NeSC EGEE is a project funded by the European Union under contract IST-2003-508833 Objectives Context for Web Services Architecture

More information

MTAT Applied Cryptography

MTAT Applied Cryptography MTAT.07.017 Applied Cryptography Abstract Syntax Notation One (ASN.1) University of Tartu Spring 2017 1 / 19 Abstract Syntax Notation One Notation to describe abstract types and values Describes information

More information

Network Management. Raj Jain Raj Jain. Washington University in St. Louis

Network Management. Raj Jain Raj Jain. Washington University in St. Louis Network Management Raj Jain Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@wustl.edu Audio/Video recordings of this lecture are available on-line at: http://www.cse.wustl.edu/~jain/cse473-09/

More information

Web Applications. Web Services problems solved. Web services problems solved. Web services - definition. W3C web services standard

Web Applications. Web Services problems solved. Web services problems solved. Web services - definition. W3C web services standard Web Applications 31242/32549 Advanced Internet Programming Advanced Java Programming Presentation-oriented: PAGE based App generates Markup pages (HTML, XHTML etc) Human oriented : user interacts with

More information

Web Services Foundations: SOAP, WSDL and UDDI

Web Services Foundations: SOAP, WSDL and UDDI Web Services Foundations: SOAP, WSDL and UDDI Helen Paik School of Computer Science and Engineering University of New South Wales Alonso Book Chapter 5-6 Webber Book Chapter 3-4 Mike Book Chapter 4-5 References

More information

Java EE 7: Back-end Server Application Development 4-2

Java EE 7: Back-end Server Application Development 4-2 Java EE 7: Back-end Server Application Development 4-2 XML describes data objects called XML documents that: Are composed of markup language for structuring the document data Support custom tags for data

More information

SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA

SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA SOA P P CRM - Monolithic - Objects - Component - Interface - . IT. IT loosely-coupled Client : - Reusability - Interoperability - Scalability - Flexibility - Cost Efficiency - Customized SUN BEA IBM - extensible

More information

Developing JAX-RPC Web services

Developing JAX-RPC Web services Developing JAX-RPC Web services {scrollbar} This tutorial will take you through the steps required in developing, deploying and testing a Web Service in Apache Geronimo. After completing this tutorial

More information

JSON as an XML Alternative. JSON is a light-weight alternative to XML for datainterchange

JSON as an XML Alternative. JSON is a light-weight alternative to XML for datainterchange JSON The Fat-Free Alternative to XML { Lecture : 27, Course : CSC375, Days : TTh", Instructor : Haidar Harmanani } JSON as an XML Alternative JSON is a light-weight alternative to XML for datainterchange

More information

@WebService OUT params via javax.xml.ws.holder

@WebService OUT params via javax.xml.ws.holder @WebService OUT params via javax.xml.ws.holder Example webservice-holder can be browsed at https://github.com/apache/tomee/tree/master/examples/webservice-holder With SOAP it is possible to return multiple

More information

Lecture Notes course Software Development of Web Services

Lecture Notes course Software Development of Web Services Lecture Notes course 02267 Software Development of Web Services Hubert Baumeister huba@dtu.dk Fall 2014 Contents 1 Complex Data and XML Schema 1 2 Binding to Java 8 3 User defined Faults 9 4 WSDL: Document

More information

External data representation

External data representation External data representation https://developers.google.com/protocol-buffers/ https://github.com/protobuf-c/protobuf-c http://www.drdobbs.com/webdevelopment/after-xml-json-thenwhat/240151851 http://www.digip.org/jansson/

More information

SOAP, WSDL, HTTP, XML, XSD, DTD, UDDI - what the?

SOAP, WSDL, HTTP, XML, XSD, DTD, UDDI - what the? SOAP, WSDL, HTTP, XML, XSD, DTD, UDDI - what the? By Aaron Bartell Copyright Aaron Bartell 2013 by Aaron Bartell aaron@mowyourlawn.com Agenda Why are we at this point in technology? XML Holding data the

More information

Polimorfizmas. Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras.

Polimorfizmas. Lekt. dr. Pijus Kasparaitis m. m. pavasario semestras. Polimorfizmas Lekt. dr. Pijus Kasparaitis pkasparaitis@yahoo.com 2009-2010 m. m. pavasario semestras Dar apie paveldėjimą Java kalboje kiekvienas paveldėtos klasės objektas gali būti naudojamas ten, kur

More information

Kerberos V5. Raj Jain. Washington University in St. Louis

Kerberos V5. Raj Jain. Washington University in St. Louis Kerberos V5 Raj Jain Washington University in Saint Louis Saint Louis, MO 63130 Jain@cse.wustl.edu Audio/Video recordings of this lecture are available at: http://www.cse.wustl.edu/~jain/cse571-07/ 11-1

More information

X-Road: Protocol for Management Services

X-Road: Protocol for Management Services X-Road: Protocol for Management Services Technical Document Version: 1.8 09.11.2015 22 pages Doc. ID: PR-MSERV 09.11.2015 1/22 Date Version Description Author 19.08.2015 0.1 Initial version Martin Lind

More information

Fuse ESB Enterprise Using the Web Services Bindings and Transports

Fuse ESB Enterprise Using the Web Services Bindings and Transports Fuse ESB Enterprise Using the Web Services Bindings and Transports Version 7.1 December 2012 Integration Everywhere Using the Web Services Bindings and Transports Version 7.1 Updated: 08 Jan 2014 Copyright

More information

Elliotte Rusty Harold August From XML to Flat Buffers: Markup in the Twenty-teens

Elliotte Rusty Harold August From XML to Flat Buffers: Markup in the Twenty-teens Elliotte Rusty Harold elharo@ibiblio.org August 2018 From XML to Flat Buffers: Markup in the Twenty-teens Warning! The Contenders XML JSON YAML EXI Protobufs Flat Protobufs XML JSON YAML EXI Protobuf Flat

More information

Web Services Overview

Web Services Overview Web Services Overview Using Eclipse WTP Greg Hester Pacific Hi-Tech, Inc. greg.hester.pacifichitech.com 1 September 17, 2008 Agenda Web Services Concepts How Web Services are used Web Services tools in

More information

Case study group setup at catme.org Please respond before Tuesday next week to have better group setup

Case study group setup at catme.org Please respond before Tuesday next week to have better group setup Notes Case study group setup at catme.org Please respond before Tuesday next week to have better group setup Discussion To boost discussion, one write-up for the whole group is fine Write down the names

More information

This presentation is a primer on WSDL Bindings. It s part of our series to help prepare you for creating BPEL projects. We recommend you review this

This presentation is a primer on WSDL Bindings. It s part of our series to help prepare you for creating BPEL projects. We recommend you review this This presentation is a primer on WSDL Bindings. It s part of our series to help prepare you for creating BPEL projects. We recommend you review this presentation before taking an ActiveVOS course or before

More information

Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer

Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer Simple Object Access Protocol (SOAP) Reference: 1. Web Services, Gustavo Alonso et. al., Springer Minimal List Common Syntax is provided by XML To allow remote sites to interact with each other: 1. A common

More information

C++ programavimo kalba

C++ programavimo kalba C++ programavimo kalba Operatorių perkrovimas (7 paskaita) Operatorių perdengimas Programavimo kalbose naudojami operatoriai pasižymi polimorfizmu (daugiavariantiškumu). Kaip pavyzdys gali būti operatorius

More information

Distributed Systems 8. Remote Procedure Calls

Distributed Systems 8. Remote Procedure Calls Distributed Systems 8. Remote Procedure Calls Paul Krzyzanowski pxk@cs.rutgers.edu 10/1/2012 1 Problems with the sockets API The sockets interface forces a read/write mechanism Programming is often easier

More information

Modulo II WebServices

Modulo II WebServices Modulo II WebServices Prof. Ismael H F Santos April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 1 Bibliografia April 05 Prof. Ismael H. F. Santos - ismael@tecgraf.puc-rio.br 2 1 Ementa History

More information

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance.

Delivery Options: Attend face-to-face in the classroom or via remote-live attendance. XML Programming Duration: 5 Days US Price: $2795 UK Price: 1,995 *Prices are subject to VAT CA Price: CDN$3,275 *Prices are subject to GST/HST Delivery Options: Attend face-to-face in the classroom or

More information

This is a preview - click here to buy the full publication INTERNATIONAL STANDARD

This is a preview - click here to buy the full publication INTERNATIONAL STANDARD INTERNATIONAL STANDARD lso/iec First edition 1996-03-l 5 Information technology - Language- Independent Procedure Calling (LIPC) Technologies de I information - Appel de procbdure indbpendant du langage

More information

Data Formats. Course NDBI040: Big Data Management and NoSQL Databases. Lecture 06: Martin Svoboda

Data Formats. Course NDBI040: Big Data Management and NoSQL Databases. Lecture 06: Martin Svoboda Course NDBI040: Big Data Management and NoSQL Databases Lecture 06: Data Formats Martin Svoboda 10. 11. 2015 Charles University in Prague, Faculty of Mathematics and Physics Outline Data formats JSON JavaScript

More information

World-Wide Wide Web. Netprog HTTP

World-Wide Wide Web. Netprog HTTP Web Services Based partially on Sun Java Tutorial at http://java.sun.com/webservices/ Also, XML, Java and the Future of The Web, Jon Bosak. And WSDL Tutorial at: http://www.w3schools.com/wsdl wsdl/ 1 World-Wide

More information