70 glavnih pitanja o intervjuu za web usluge & Odgovori

Anonim

Preuzmite PDF

1) Definirati web uslugu?

Web usluga vrsta je softvera koja je dostupna na Internetu. Koristi XML sustav razmjene poruka i nudi lako razumljivo sučelje za krajnje korisnike.

2) Što je novo na ovom polju posljednjih nekoliko godina?

Pokretanje XML-a u ovom polju napredak je koji pruža web usluzi jedinstveni jezik za komunikaciju između RPC-ova, web usluga i njihovih direktorija.

3) Dajte mi primjer stvarne web usluge?

Jedan od primjera web usluga je preglednik IBM Web Services. Možete ga dobiti na web mjestu IBM Alphaworks. Ovaj preglednik prikazuje razne demonstracije povezane s web uslugama. U osnovi se web usluge mogu koristiti uz pomoć SOAP-a, WSDL-a i UDDI-a. Sve to pruža plug-and-play sučelje za korištenje web usluga kao što su usluge cijena dionica, usluge izvještavanja o prometu, vremenske usluge itd.

4) Kako definirate skup protokola web usluga?

To je u osnovi skup različitih protokola koji se mogu koristiti za istraživanje i izvršavanje web usluga. Čitav stog ima četiri sloja, tj. Transport usluga, XML poruke, opis usluge i otkrivanje usluge.

5) Možete li definirati svaki od ovih slojeva sloga protokola?

Sloj usluge prijenosa prenosi poruke između različitih aplikacija, poput HTTP-a, SMTP-a, FTP-a i protokola za proširivu razmjenu blokova (BEEP). Sloj XML poruka kodira poruke u XML formatu tako da se poruke mogu razumjeti na svakom kraju, kao što su XML-RPC i SOAP. Sloj Opis usluge opisuje korisničko sučelje za web uslugu, poput WSDL-a. Sloj Service Discovery centralizira usluge u zajednički registar i nudi jednostavne funkcije objavljivanja, poput UDDI.

6) Definirati XML - RPC?

To je protokol koji koristi XML poruke za pozive na daljinu.

7) Definirati SOAP?

SOAP je protokol zasnovan na XML-u za prijenos između računala.

8) Definirajte WSDL?

To znači jezik opisa web usluga. U osnovi je to sloj opisa usluge u zalihi protokola web usluga. Sloj Opis usluge opisuje korisničko sučelje web usluge.

9) Kakva je sigurnost potrebna za web usluge?

Razina sigurnosti web usluga trebala bi biti viša od one koja mi kažemo Secure Socket Layer (SSL). Ovu razinu sigurnosti moguće je postići samo putem platforme Entrust Secure Transaction Platform. Web usluge trebaju ovu razinu sigurnosti kako bi osigurale pouzdane transakcije i povjerljive podatke.

10) Imate li pojma o uslugama zaštite temelja?

Kao što implicira iz njegovog imena, ove su usluge temelj ili osnove integracije, provjere autentičnosti, autorizacije, digitalnih potpisa i procesa šifriranja.

11) Definirajte uslugu identifikacije povjerenja?

Usluga identifikacije povjerenja dolazi s platforme za povjeravanje sigurnosnih transakcija. Ova platforma omogućuje tvrtkama kontrolu identiteta kojima se vjeruje da izvršavaju transakcije za transakcije web usluga.

12) Što UDDI znači?

UDDI je kratica za Universal, Description, Discovery i Integration. To je sloj otkrivanja u stogu protokola web usluga.

13) Definirajte uslugu povjerenja povjerenja?

Ova usluga provjerava entitete koji pokušavaju pristupiti web usluzi. Na primjer, usluga provjere autentičnosti, usluga ovlaštenja osigurava sigurnost u poslovnom poslovanju.

14) Definirajte uslugu povjerljivosti povjerenja?

Kao što mu samo ime govori, bavi se sigurnošću i povjerljivošću. Ova usluga šifrira podatke kako bi osigurala pristup podacima samo zainteresiranim stranama.

15) Što podrazumijevate pod PKI?

To znači infrastruktura s javnim ključem.

16) Koji se alati koriste za testiranje web usluge?

Koristio sam SoapUI za SOAP WS i dodatak za Firefox poster za RESTFul Services.

17) Razlikovati SOA od web usluge?

SOA je dizajn i arhitektura za implementaciju drugih usluga. SOA se lako može implementirati pomoću različitih protokola kao što su HTTP, HTTPS, JMS, SMTP, RMI, IIOP, RPC itd. Iako je web usluga sama po sebi implementirana tehnologija. Zapravo se SOA može implementirati pomoću web usluge.

18) Razgovarati o raznim pristupima razvoju web usluge temeljene na SOAP-u?

Web uslugu zasnovanu na SOAP-u možemo razviti s dvije različite vrste pristupa, kao što je ugovor prvi i zadnji ugovor. U prvom se pristupu prvo definira ugovor, a zatim se iz ugovora izvode klase, dok se u kasnijem definiraju klase, a zatim se iz tih klasa izvodi ugovor.

19) Ako morate odabrati jedan pristup, koji će onda biti vaš izbor?

S mojeg gledišta, prvi pristup koji je ugovorno-prvi pristup izvediviji je u usporedbi s drugim, ali ipak ovisi i o drugim čimbenicima.

20) Postoji li neka posebna aplikacija potrebna za pristup web usluzi?

Ne, ne trebate instalirati nijedan poseban program za pristup web usluzi. Web usluzi možete pristupiti iz bilo koje aplikacije koja podržava zahtjev i odgovor na objekt temeljen na XML-u.

21) Možete li navesti nekoliko besplatnih i komercijalnih implementacija web usluga?

Poznate su mi implementacije Apache SOAP, JAX-WS Reference Implementation, JAX-RS Reference Implementation, Metro, Apache CXF, MS.NET i Java 6.

22) Imenski preglednik koji omogućuje pristup web usluzi?

JavaScript XmlHttpRequest objekt potreban je za pristup web usluzi putem preglednika. Preglednici koji podržavaju ovaj objekt su preglednici Internet Explorer, Safari i Mozilla poput FireFox-a.

23) Što je ODMOR?

REST je skraćenica od Reprezentativni državni transfer. REST sam po sebi nije standard, dok koristi razne standarde kao što su HTTP, URL, XML / HTML / GIF / JPEG.webp (predstavljanje resursa) i text / xml, text / html, image / gif, image / jpeg.webp, itd. (MIME vrste) ).

24) Kako se može pružiti API korisnicima?

Da bi se korisnicima pružio API, to se lako može učiniti s "otvorenim stolom". Sve što trebate jest napisati otvorenu tablicu koja je u osnovi XML shema koja upućuje na web uslugu.

25) Navedite razne komunikacijske kanale u web usluzi?

Web usluga integrirana je s tri protokola kao što su HTTP / POST, HTTP / GET i SOAP. Klijentima pruža tri različita komunikacijska kanala. Klijent može odabrati bilo koji način komunikacije prema zahtjevima.

26) Kako možete dokumentirati web uslugu?

Web usluge su zamišljene kao samo-dokumentiranje jer pružaju cjelovite informacije o dostupnim metodama i parametrima koji se koriste za standard zasnovan na XML-u, poznat kao WSDL. Također se može pružiti više informacija za objašnjenje web usluga putem vlastitih atributa WebService i WebMethod.

27) U kojim su situacijama potrebne web usluge ASP.NET?

ASP.NET web usluge koriste se kada treba implementirati troslojnu arhitekturu u web uslugu. Omogućuje praktične načine upotrebe komponenata srednje razine putem interneta. Glavna prednost .NET web usluga je u tome što su dovoljno sposobni za komunikaciju preko vatrozida jer koriste SOAP kao transportni protokol.

28) Što su distribuirane tehnologije?

Sve veći omjer distribuiranih aplikacija povećao je potražnju za distribuiranim tehnologijama. Omogućuje segmentiranje aplikacijskih jedinica i njihov prijenos na različita računala u različitim mrežama.

29) Razlikovati web usluge, CORBA i DCOM?

Web usluge prenose / primaju poruke u / iz aplikacije, putem HTTP protokola. Za kodiranje podataka koristi XML.

CORBA i DCOM prenose / primaju poruke u / iz aplikacije putem nestandardnih protokola kao što su IIOP i RPC.

30) Možete li reći nekoliko prednosti web usluga?

Najveća prednost web usluga je ta što je podržana širokim rasponom platformi. Štoviše, u bliskoj budućnosti web usluge mogu proširiti svoje granice i poboljšati nove metode koje će olakšati klijentima. Poboljšanje neće utjecati na klijente, čak i ako nude stare metode i parametre.

31) Možete li navesti neke standarde koji se koriste u web uslugama?

Standardi koji se koriste u web uslugama su WSDL (koristi se za stvaranje definicije sučelja), SOAP (koristi se za strukturiranje podataka), HTTP (komunikacijski kanali), DISCO (koristi se za izradu dokumenata otkrića) i UDDI (koristi se za stvaranje poslovnih registara).

32) Ukratko objasnite, što je DISCO?

DISCO znači otkriće. Grupira popis međusobno povezanih web usluga. Organizacija koja pruža web usluge izdaje DISCO datoteku na svom poslužitelju i ta datoteka sadrži veze svih pruženih web usluga. Ovaj je standard dobar kada klijent već poznaje tvrtku. Također se može koristiti i u lokalnoj mreži.

33) Objasnite ukratko, što je UDDI?

UDDI (Univerzalni opis, otkrivanje i integracija) pruža objedinjeni direktorij za web usluge na Internetu. Klijenti koriste UDDI za pronalaženje web usluga prema njihovim poslovnim potrebama. U osnovi je domaćin web uslugama različitih tvrtki. Da biste dijelili web usluge, morate ih objaviti u UDDI-u.

34) Objasnite tipove podataka koji podržavaju .NET web usluge?

.Net web usluge za prijenos / primanje informacija koriste standarde utemeljene na XML-u. Dakle, .NET web usluge mogu raditi samo s vrstama podataka koje poznaje standard XML sheme. Poput FileSteam, Eventlog itd. Nisu prepoznati od strane standarda XML sheme, pa stoga nisu podržani u web uslugama.

35) Kako se testira .NET web usluga?

ASP.NET rutinski koristi probnu stranicu kada se u bilo kojem pregledniku traži URL .asmx datoteke. Ova stranica prikazuje cjelovite informacije o web uslugama.

36) Kako se koristi .NET web usluga?

Budući da znamo da su web usluge izrađene prema XML standardima. Stoga klijenti moraju imati potpuno razumijevanje poruka temeljenih na XML-u radi razmjene poruka. Klijenti mogu komunicirati s web uslugama putem .NET okvira koji nudi proxy mehanizme. Ovi proxy mehanizmi imaju detaljne informacije o razmjeni podataka unutar web usluga koje klijenti mogu lako koristiti.

37) Možete li navesti dva Microsoftova rješenja za distribuirane aplikacije?

Dva Microsoftova rješenja za distribuirane aplikacije su .NET Web Services i .NET Remoting.

38) Razlikovati .NET Web Services i .NET Remoting?

Što se protokola tiče, .NET Web Service koristi HTTP, dok .NET Remoting koristi bilo koji protokol, tj. TCP / HTTP / SMTP. Što se tiče performansi, .NET Remoting je usporedno, brži od .NET Web Servicea. Također, budući da su .NET web usluge hostirane putem IIS-a, stoga je daleko pouzdanije od .NET Remotinga.

39) Nazovite komponente koje će se objaviti tijekom postavljanja web usluge?

Komponente koje treba objaviti tijekom uvođenja web usluge su Direktorij web aplikacija, Webservice.asmx datoteka, Webservice.Disco datoteka, Web.Config datoteka i Bin direktorij.

40) Koje korake klijent obavlja za pristup web usluzi?

Prije svega, web referencu na web uslugu kreira klijent u svojoj aplikaciji. Tada se generira proxy klasa. Nakon toga kreira se objekt proxy klase i napokon se web usluzi pristupa putem tog proxy objekta.

41) Kako se web usluge implementiraju u .NET?

Da bi se implementirale web usluge u .NET-u, koriste se HTTP obrađivači koji prekidaju zahtjeve za .asmx datoteke.

42) Objasnite nekoliko nedostataka keširanja odgovora?

Predmemoriranje odgovora beskorisno je ili nesposobno kada metoda prihvaća veliku količinu vrijednosti jer predmemoriranje znači pohranjivanje puno podataka. Također, ako metoda ovisi o vanjskom izvoru podataka, a koji nisu osigurani unutar parametara, takve metode se zaobilaze.

43) Koje je alternativno rješenje za keširanje odgovora?

Umjesto keširanja odgovora može se koristiti keširanje podataka (System.Web.Caching.Cach).

44) Kratkih nekoliko nedostataka upotrebe GET i POST metoda za komunikaciju s web uslugom?

Te su metode manje sigurne i onemogućuju korisnicima da strukture i objekte prosljeđuju kao argumente. Također, ne dopušta korisnicima da prosljeđuju argumente ByRef.

45) Kako pristupiti klasi kao web usluzi?

Da biste pristupili klasi kao web usluzi, treba je naslijediti iz klase System.Web.Services.WebService i kvalificirati klasu s atributom WebService.

46) Kako pristupiti metodi klase web usluga putem interneta?

Da biste pristupili metodi klase web usluga putem interneta, treba kvalificirati metodu s atributom WebMethod.

47) Kako je strukturirana SOAP poruka?

SOAP poruka sastoji se od SOAP omotnice, SOAP zaglavlja i SOAP tijela.

48) Možete li imenovati različite vrste web usluga?

Ukupno postoje dvije vrste web usluga, tj. Web usluga temeljena na SOAP-u i RESTful web usluga.

Ovo je pitanje već ranije spomenuto.

49) Što se razlikuje od RESTful web usluga?

Web usluge RESTful ne sadrže ugovor niti WSDL datoteku.

50) Dajte mi nekoliko razloga za korištenje RESTful web usluge?

Web usluge RESTFul jednostavno je implementirati i testirati. Podržava razne formate podataka kao što su XML, JSON itd.

51) Objasnite što su JAVA web usluge? Koje su metode za stvaranje web usluga?

Java web servisi razvijeni su za izgradnju i implementaciju osnovne web usluge na JAVA platformi.

Za stvaranje web usluga postoje dva pristupa koja su usvojena

  • Pristup od vrha prema dolje
  • Pristup dopunjavanju

52) Objasnite što je JAXP?

JAXP je JAVA API za XML obradu koji omogućuje aplikaciji pisanje, čitanje, manipulaciju i transformaciju XML podataka. Slično tome, za obavljanje drugih različitih funkcija postoje i drugi Java API-ji poput JAX-RPC, JAXM, JAXR, JAXB itd.

53) Spominjete okvir obvezivanja JAXB?

JAXB obvezujući okvir dostupan je u tri Java paketa

  • xml.bind: Ovaj paket definira apstraktne klase i sučelja koja se koriste izravno s klasama sadržaja
  • xml.bind.util: Ovaj paket sadrži klase uslužnih programa koje klijentske aplikacije mogu koristiti za upravljanje događajima marširanja, uklanjanja marširanja i provjere valjanosti
  • xml.bind.helper: Ovaj pomoćni paket daje djelomične implementacije za neka od sučelja javax.xml.bind. Ove API-je ne smiju izravno koristiti aplikacije koje koriste JAXB arhitekturu

54) Navedite jednostavan primjer kako XML dokument može biti maršal i unmaršal u JAVA okviru?

Marširanje je postupak pretvaranja XML dokumenta u Java čitljiv oblik, dok je Unmaršaling obrnuti postupak marširanja. Pogledajmo kako Java demaršira XML dokument, a zatim ga maršira natrag

JAXBContext jc = JAXBContext.newInstance ("com.acme.foo");

// nemaršal iz foo.xml

Unmarshaller u = jc.createUnmarshaller ();

FooObject fooObj =

(FooObject) u.unmarshal (nova datoteka ("foo.xml"));

// maršal na sistem.out

Marshaller m = jc.createMarshaller ();

m.marshal (fooObj, System.out);

55) Objasnite što Marshaller radi ako svojstvo jaxb.encoding nije deklarirano?

Prema zadanim postavkama, Marshaller će upotrijebiti "UTF-8" ako svojstvo jaxb.encoding nije deklarirano.

56) Spomenite koje vrste provjere valjanosti može izvršiti JAXB klijent?

Postoje dvije vrste provjere valjanosti JAXB klijenta koje JAXB može izvesti

  • Nemaršalska provjera vremena
  • Provjera valjanosti na zahtjev

57) Spomenite koja su tri načina za rukovanje događajem s kojim su se susreli tijekom maršala, unmaršala i provjere valjanosti?

  • Upotreba zadanog obrađivača događaja
  • Registrirajte i implementirajte prilagođeni rukovatelj događajima
  • Upotrijebite uslužni program ValidationEventCollector

58) Objasnite gdje se nalazi JAXB kompajler?

Prevoditelj vezivanja sheme JAXB smješten je u direktorij / jaxb / bin. U ovom se direktoriju nalaze dvije skripte, xjc.sh (Solaris / Linux) i xjc.bat (Windows).

59) U kojim slučajevima trebate prilagoditi zadani uvez?

U nekim slučajevima morate prilagoditi zadano vezivanje poput

  • Stvaranje API dokumentacije za JAXB pakete, klase, metode i konstante izvedene iz sheme
  • Davanje semantički značajnih prilagođenih imena za slučajeve s kojima zadano mapiranje identifikatora imena XML-a u Java ne može automatski rukovati
  • Nadjačavanje zadanog vezivanja poput navođenja da bi se grupa modela trebala pridružiti klasi, a ne popisu

60) Objasnite što je ugrađena prilagodba?

Prilagođavanje JAXB veza izvršeno pomoću deklarisanih deklaracija vezanja u datoteci XML sheme koje imaju oblik elemenata ugrađenih u elemente sheme .

61) Objasnite što je XML potpis?

XML se može koristiti za potpisivanje proizvoljnih podataka bilo da se radi o binarnom ili XML-u. Podaci se prepoznaju putem URI-ja u jednom ili više referentnih elemenata. Opisan je u jednom ili više oblika, poput odvojenog, omotanog ili omotanog.

62) Objasnite što je Stax?

Stax je kratica za Streaming API za XML; to je API za čitanje i pisanje XML dokumenata, koji potječu iz programskog jezika JAVA.

63) Spomenite koji su uobičajeni XML API-ji?

Uobičajeni XML API-ji uključuju

  • API-ji temeljeni na DOM-u ili na stablu: Cijeli dokument se čita u memoriju kao struktura stabla za slučajnu dostupnost pozivanjem aplikacije
  • API-ji temeljeni na događajima: Aplikacija se registrira za dobivanje događaja dok se entiteti susreću u izvornom dokumentu

64) Objasnite što je raščlanjivanje push i pull parsing?

  • Puls Raščlanjivanje: Analiziranje povlačenja u tijeku odnosi se na programski model u kojem klijentska aplikacija poziva metode na XML biblioteku raščlanjivanja, kada treba komunicirati s XML informacijskim skupom - što znači da će klijent dobiti XML podatke samo kada se to zatraži
  • Pulsno raščlanjivanje: u Push raščlanjivanju parser u aplikaciju gura događaje raščlanjivanja ili XML podatke. U push modelu, parser je zadržao postupak raščlanjivanja i parser poziva implementirane metode rukovatelja.

65) Objasnite na kojoj se tehnologiji temelji XWS sigurnost? Navedite opcije koje XWS sigurnost pruža za zaštitu JAX-RPC aplikacija?

XWS sigurnost temelji se na osiguranju web usluga izgrađenih na JAX-RPC i na samostalnoj aplikaciji koja se temelji na SAAJ. Za osiguranje JAX-RPC aplikacije pružaju se mogućnosti koje pruža XWS sigurnost

  • XML digitalni potpis
  • XML šifriranje
  • Provjera tokena korisničkog imena
  • API-ji XWS sigurnosnog okvira

66) Navedite šest paketa dostupnih u XML API-ju za digitalni potpis?

API za digitalni potpis je

  • xml.crypto
  • xml.crypto.dsig
  • xml.crypto.dsig.keyinfo
  • xml.crypto.dsig.spec
  • xml.crypto.dom
  • xml.crypto.dsig.dom

67) Objasnite što je JAXR?

JAXR je JAVA programski API-ji za Java platformu za pristup i programsku interakciju s različitim vrstama registara metapodataka.

68) Objasnite od čega se sastoji JAXR arhitektura?

JAXR arhitektura sastoji se od JAXR klijenta i JAXR pružatelja.

  • JAXR klijent: To je klijentski program koji koristi JAXR API za upotrebu registra putem JAXR pružatelja
  • Pružatelj JAXR: To je implementacija JAXR API-ja koji pruža pristup određenom davatelju registra ili klasi davatelja usluga registra koji su izgrađeni na zajedničkim specifikacijama.

69) Objasnite što su JAXM modeli za razmjenu poruka?

Postoje dvije vrste modela poruka za JAXM sinkroni i asinkroni

  • Model sinkrone razmjene poruka: U takvoj vrsti modela klijent izravno komunicira s izvorom. U tome će klijent poslati zahtjev i čeka.
  • Model asinkrone razmjene poruka: U ovom modelu klijent usmjerava poruku davatelju poruka i vraća se natrag. Davatelj poruka zatim izvršava usmjeravanje poruke do krajnjeg izvora.

70) Objasnite što su UDDI, DISCO i WSDL?

  • UDDI: To znači Univerzalni opis, otkriće i ja. To je direktorij koji se koristi za objavljivanje i otkrivanje javnih web usluga
  • DISCO: To je obično poznato kao otkriće. Udružuje zajedničke usluge i izlaže shematski dokument web usluga
  • WSDL: Označava jezik opisa web usluga (WSDL). Koristi se za opis web usluga. Opis uključuje URL web usluga, svojstva i metode podržane od web usluga, vrstu podataka koju podržava i detalje protokola koje podržava