Las 70 preguntas principales de entrevistas sobre servicios web y amp; Respuestas

Anonim

Descargar PDF

1) ¿Definir servicio web?

Un servicio web es un tipo de software al que se puede acceder en Internet. Hace uso del sistema de mensajería XML y ofrece una interfaz fácil de entender para los usuarios finales.

2) ¿Qué hay de nuevo en este campo durante los últimos años?

El inicio de XML en este campo es el avance que proporciona al servicio web un solo lenguaje para comunicarse entre los RPC, los servicios web y sus directorios.

3) ¿Dame un ejemplo de servicio web real?

Un ejemplo de servicios web es el navegador de servicios web de IBM. Puede obtenerlo en el sitio de IBM Alphaworks. Este navegador muestra varias demostraciones relacionadas con los servicios web. Básicamente, los servicios web se pueden utilizar con la ayuda de SOAP, WSDL y UDDI. Todos estos proporcionan una interfaz plug-and-play para utilizar servicios web como el servicio de cotización de acciones, un servicio de informes de tráfico, el servicio meteorológico, etc.

4) ¿Cómo define la pila de protocolos de servicios web?

Básicamente es un conjunto de varios protocolos que se pueden utilizar para explorar y ejecutar servicios web. La pila completa tiene cuatro capas, es decir, transporte de servicios, mensajería XML, descripción de servicios y descubrimiento de servicios.

5) ¿Puede definir cada una de estas capas de pila de protocolos?

La capa de transporte de servicios transfiere mensajes entre diferentes aplicaciones, como HTTP, SMTP, FTP y Blocks Extensible Exchange Protocol (BEEP). La capa de mensajería XML codifica mensajes en formato XML para que los mensajes se puedan entender en cada extremo, como XML-RPC y SOAP. La capa de descripción del servicio describe la interfaz de usuario de un servicio web, como WSDL. La capa de descubrimiento de servicios centraliza los servicios en un registro común y ofrece una funcionalidad de publicación simple, como UDDI.

6) ¿Definir XML - RPC?

Es un protocolo que utiliza mensajes XML para realizar llamadas a procedimientos remotos.

7) ¿Definir SOAP?

SOAP es un protocolo basado en XML para transferir entre computadoras.

8) ¿Definir WSDL?

Significa Lenguaje de descripción de servicios web. Es básicamente la capa de descripción del servicio en el stock de protocolos de servicios web. La capa de descripción del servicio describe la interfaz de usuario de un servicio web.

9) ¿Qué tipo de seguridad se necesita para los servicios web?

El nivel de seguridad para los servicios web debería ser mayor que el de lo que decimos Secure Socket Layer (SSL). Este nivel de seguridad solo se puede lograr desde Entrust Secure Transaction Platform. Los servicios web necesitan este nivel de seguridad para garantizar transacciones confiables e información confidencial segura.

10) ¿Tiene alguna idea sobre los servicios de seguridad de la fundación?

Como su nombre lo indica, estos servicios son la base o fundamentos de los procesos de integración, autenticación, autorización, firmas digitales y encriptación.

11) ¿Definir el servicio de identificación de Entrust?

El servicio de identificación de Entrust proviene de la plataforma de transacciones de seguridad de Entrust. Esta plataforma permite a las empresas controlar las identidades en las que se confía para realizar transacciones para transacciones de servicios web.

12) ¿Qué significa UDDI?

UDDI son las siglas de Universal, Description, Discovery e Integration. Es la capa de descubrimiento en la pila de protocolos de servicios web.

13) ¿Definir el servicio de derechos de Entrust?

Este servicio verifica las entidades que intentan acceder a un servicio web. Por ejemplo, el servicio de autenticación, el Servicio de derechos garantiza la seguridad en las operaciones comerciales.

14) ¿Definir el servicio de privacidad de Entrust?

Como su nombre lo indica, se trata de seguridad y confidencialidad. Este servicio cifra los datos para garantizar que solo las partes interesadas puedan acceder a los datos.

15) ¿Qué quiere decir con PKI?

Significa Infraestructura de clave pública.

16) ¿Qué herramientas se utilizan para probar un servicio web?

He usado SoapUI para SOAP WS y el complemento de póster de Firefox para servicios RESTFul.

17) ¿Diferenciar entre SOA y un servicio web?

SOA es un diseño y arquitectura para implementar otros servicios. SOA se puede implementar fácilmente utilizando varios protocolos como HTTP, HTTPS, JMS, SMTP, RMI, IIOP, RPC, etc. Si bien el servicio web, en sí mismo, es una tecnología implementada. De hecho, se puede implementar SOA utilizando el servicio web.

18) ¿Discute varios enfoques para desarrollar un servicio web basado en SOAP?

Podemos desarrollar un servicio web basado en SOAP con dos tipos diferentes de enfoques, como el contrato primero y el último contrato. En el primer enfoque, el contrato se define primero y luego las clases se derivan del contrato, mientras que en el último, las clases se definen primero y luego el contrato se deriva de estas clases.

19) Si tiene que elegir un enfoque, ¿cuál será su elección?

En mi punto de vista, el primer enfoque que es el enfoque del contrato primero es más factible en comparación con el segundo, pero aún depende de otros factores.

20) ¿Se requiere alguna aplicación especial para acceder al servicio web?

No, no es necesario instalar ninguna aplicación especial para acceder al servicio web. Puede acceder al servicio web desde cualquier aplicación que admita solicitudes y respuestas de objetos basados ​​en XML.

21) ¿Puede nombrar algunas implementaciones comerciales y gratuitas para servicios web?

Las implementaciones que conozco son Apache SOAP, JAX-WS Reference Implementation, JAX-RS Reference Implementation, Metro, Apache CXF, MS.NET y Java 6.

22) ¿Nombre del navegador que permite el acceso al servicio web?

Se requiere el objeto JavaScript XmlHttpRequest para acceder al servicio web a través de los navegadores. Los navegadores que admiten este objeto son Internet Explorer, Safari y navegadores basados ​​en Mozilla como FireFox.

23) ¿Qué es DESCANSO?

REST significa Transferencia de Estado Representacional. REST en sí no es un estándar, mientras que utiliza varios estándares como HTTP, URL, XML / HTML / GIF / JPEG.webp (Representaciones de recursos) y texto / xml, texto / html, imagen / gif, imagen / jpeg.webp, etc. (Tipos MIME ).

24) ¿Cómo se puede proporcionar API a los usuarios?

Para proporcionar una API a los usuarios, se puede hacer fácilmente con una "tabla abierta". Todo lo que necesita hacer es escribir una tabla abierta, que es básicamente un esquema XML que apunta a un servicio web.

25) ¿Nombra los distintos canales de comunicación en el servicio web?

El servicio web está integrado con tres protocolos como HTTP / POST, HTTP / GET y SOAP. Proporciona tres canales de comunicación diferentes a los clientes. El cliente puede elegir cualquier método de comunicación según los requisitos.

26) ¿Cómo se puede documentar el servicio web?

Los servicios web se consideran autodocumentados porque proporcionan información completa sobre los métodos y parámetros disponibles utilizados para el estándar basado en XML, conocido como WSDL. También se puede proporcionar más información para explicar los servicios web a través de sus propios atributos WebService y WebMethod.

27) ¿Cuáles son las situaciones en las que necesitamos servicios web ASP.NET?

Los servicios web ASP.NET se utilizan cuando se necesita implementar una arquitectura de tres niveles en un servicio web. Permite formas prácticas de utilizar componentes de nivel medio a través de Internet. La principal ventaja de los servicios web .NET es que son lo suficientemente capaces de comunicarse a través de cortafuegos porque utilizan SOAP como protocolo de transporte.

28) ¿Qué son las tecnologías distribuidas?

La creciente proporción de aplicaciones distribuidas ha aumentado la demanda de tecnologías distribuidas. Permite segmentar las unidades de la aplicación y transferirlas a diferentes computadoras en diferentes redes.

29) ¿Diferenciar entre servicios web, CORBA y DCOM?

Los servicios web transfieren / reciben mensajes hacia / desde la aplicación, respectivamente, a través del protocolo HTTP. Utiliza XML para codificar datos.

CORBA y DCOM transfieren / reciben mensajes hacia / desde la aplicación respectivamente, a través de protocolos no estándar como IIOP y RPC.

30) ¿Puede decirnos algunos beneficios de los servicios web?

La mayor ventaja del servicio web es que es compatible con una amplia variedad de plataformas. Además, en un futuro próximo, los servicios web pueden extender su límite y mejorar nuevos métodos que proporcionarán facilidad a los clientes. La mejora no afectará a los clientes, incluso si ofrecen métodos y parámetros antiguos.

31) ¿Puede nombrar algunos estándares utilizados en los servicios web?

Los estándares utilizados en los servicios web son WSDL (utilizado para crear la definición de interfaz), SOAP (utilizado para estructurar datos), HTTP (canales de comunicación), DISCO (utilizado para crear documentos de descubrimiento) y UDDI (utilizado para crear registros comerciales).

32) Explique brevemente, ¿qué es DISCO?

DISCO significa descubrimiento. Agrupa la lista de servicios web interrelacionados. La organización que proporciona servicios web, emite un archivo DISCO en su servidor y ese archivo contiene los enlaces de todos los servicios web proporcionados. Este estándar es bueno cuando el cliente ya conoce la empresa. También se puede utilizar dentro de una red local.

33) Explique brevemente, ¿qué es UDDI?

UDDI (Descripción, descubrimiento e integración universales) proporciona un directorio consolidado para servicios web en Internet. Los clientes usan UDDI para encontrar servicios web según sus necesidades comerciales. Básicamente aloja los servicios web de varias empresas. Para compartir servicios web, debe publicarlo en UDDI.

34) ¿Explique los tipos de datos compatibles con los servicios web .NET?

Los servicios web .Net utilizan estándares basados ​​en XML para transferir / recibir información. Por lo tanto, los servicios web .NET solo pueden funcionar con tipos de datos conocidos por el estándar de esquema XML. Al igual que FileSteam, Eventlog, etc., no son reconocidos por los estándares de esquema XML y, por lo tanto, no son compatibles con los servicios web.

35) ¿Cómo se prueba un servicio web .NET?

ASP.NET utiliza una página de prueba de forma rutinaria, cuando se solicita la URL del archivo .asmx en cualquier navegador. Esta página muestra información completa sobre los servicios web.

36) ¿Cómo se consume un servicio web .NET?

Ya que sabemos que los servicios web se construyen sobre estándares XML. Por lo tanto, los clientes deben tener una comprensión completa de los mensajes basados ​​en XML para intercambiar mensajes. Los clientes pueden comunicarse con los servicios web a través del marco .NET que ofrece mecanismos de proxy. Estos mecanismos de proxy tienen información detallada sobre el intercambio de datos dentro de los servicios web que los clientes pueden utilizar fácilmente.

37) ¿Puede nombrar las dos soluciones de Microsoft para aplicaciones distribuidas?

Las dos soluciones de Microsoft para aplicaciones distribuidas son .NET Web Services y .NET Remoting.

38) ¿Diferenciar entre .NET Web Services y .NET Remoting?

En lo que respecta al protocolo, .NET Web Service utiliza HTTP, mientras que .NET Remoting utiliza cualquier protocolo, es decir, TCP / HTTP / SMTP. Cuando se trata de rendimiento, .NET Remoting es comparativamente más rápido que .NET Web Service. Además, como .NET Web Services se aloja a través de IIS, es mucho más fiable que .NET Remoting.

39) ¿Nombra los componentes que se publicarán al implementar un servicio web?

Los componentes que deben publicarse durante la implementación de un servicio web son Web Application Directory, Webservice.asmx File, Webservice.Disco File, Web.Config File y Bin Directory.

40) ¿Cuáles son los pasos que realiza el cliente para acceder a un servicio web?

En primer lugar, el cliente crea una referencia web al servicio web en su aplicación. Luego se genera una clase de proxy. Después de eso, se crea un objeto de la clase de proxy y, por último, se accede al servicio web a través de ese objeto de proxy.

41) ¿Cómo se implementan los servicios web en .NET?

Para implementar servicios web en .NET, se utilizan controladores HTTP que interrumpen las solicitudes a archivos .asmx.

42) ¿Explica algunas desventajas del almacenamiento en caché de respuestas?

El almacenamiento en caché de respuestas es inútil o incompetente cuando el método acepta una gran cantidad de valores porque el almacenamiento en caché significa almacenar gran cantidad de información. Además, si el método depende de una fuente de información externa y no se proporciona dentro de los parámetros, se omiten dichos métodos.

43) ¿Cuál es la solución alternativa para el almacenamiento en caché de respuestas?

Se puede utilizar Data Caching (System.Web.Caching.Cach) en lugar de Response Caching.

44) Brevemente algunos inconvenientes de usar los métodos GET y POST para comunicarse con el servicio web.

Estos métodos son menos seguros e impiden que los usuarios pasen estructuras y objetos como argumentos. Además, no permite a los usuarios pasar argumentos ByRef.

45) ¿Cómo se puede acceder a una clase como servicio web?

Para acceder a una clase como servicio web, se debe heredar la clase de la clase System.Web.Services.WebService y calificar la clase con el atributo WebService.

46) ¿Cómo se puede acceder al método de clase de servicio web a través de Internet?

Para acceder al método de clase de servicio web a través de Internet, se debe calificar un método con el atributo WebMethod.

47) ¿Cómo se estructura un mensaje SOAP?

Un mensaje SOAP consta de Sobre SOAP, Encabezados SOAP y Cuerpo SOAP.

48) ¿Puede nombrar diferentes tipos de servicios web?

Hay dos tipos de servicios web en total, es decir, el servicio web basado en SOAP y el servicio web RESTful.

Esta pregunta ya se mencionó anteriormente.

49) ¿Qué es diferente en los servicios web RESTful?

Los servicios web RESTful no contienen ningún contrato ni archivo WSDL.

50) ¿Me das algunas razones para usar el servicio web RESTful?

Los servicios web RESTFul son sencillos de implementar y probar. Admite varios formatos de datos como XML, JSON, etc.

51) Explique qué son los servicios web JAVA. ¿Cuáles son los métodos para crear servicios web?

Los servicios web Java están desarrollados para construir e implementar servicios web básicos en la plataforma JAVA.

Para crear un servicio web, se adoptan dos enfoques

  • Enfoque de arriba hacia abajo
  • Enfoque de recarga

52) Explique qué es JAXP.

JAXP es una API JAVA para procesamiento XML que permite a la aplicación escribir, leer, manipular y transformar datos XML. De manera similar, para realizar otras funciones diversas, existen otras API de Java, así como JAX-RPC, JAXM, JAXR, JAXB, etc.

53) ¿Mencionar el marco de enlace JAXB?

El marco de enlace JAXB está disponible en tres paquetes Java

  • xml.bind: este paquete define clases abstractas e interfaces que se utilizan directamente con clases de contenido
  • xml.bind.util: este paquete contiene clases de utilidad que pueden ser utilizadas por las aplicaciones cliente para administrar eventos de clasificación, eliminación y validación
  • xml.bind.helper: este paquete de ayuda ofrece implementaciones parciales para algunas de las interfaces javax.xml.bind. Estas API no deben ser utilizadas directamente por aplicaciones que utilicen la arquitectura JAXB.

54) ¿Dar un ejemplo simple de cómo un documento XML puede ser Marshal y Unmarshal en el marco JAVA?

Marshalling es el proceso de convertir un documento XML en un formato legible de Java, mientras que UnMarshalling es el proceso inverso de Marshalling. Veamos cómo Java descompone un documento XML y luego lo recupera

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

// unmarshal de foo.xml

Unmarshaller u = jc.createUnmarshaller ();

FooObject fooObj =

(FooObject) u.unmarshal (nuevo Archivo ("foo.xml"));

// mariscal a sytem.out

Marshaller m = jc.createMarshaller ();

m.marshal (fooObj, System.out);

55) Explique qué hace Marshaller si no se declara la propiedad jaxb.encoding.

De forma predeterminada, Marshaller utilizará "UTF-8" si no se declara la propiedad jaxb.encoding.

56) Mencione cuáles son los tipos de validación que puede realizar un cliente JAXB.

Hay dos tipos de validación de cliente JAXB que puede realizar un JAXB

  • Validación de tiempo de unmarshal
  • Validación bajo demanda

57) Mencione cuáles son las tres formas de manejar el evento encontrado durante las operaciones de marshal, unmarshal y validación.

  • Usando el controlador de eventos predeterminado
  • Registrar e implementar un controlador de eventos personalizado
  • Utilice la utilidad ValidationEventCollector

58) Explique dónde se encuentra el compilador JAXB.

El compilador de enlace de esquema JAXB se coloca en el directorio / jaxb / bin. En este directorio, hay dos scripts, xjc.sh (Solaris / Linux) y xjc.bat (Windows).

59) ¿En qué casos necesita personalizar el enlace predeterminado?

En algunos casos, debe personalizar el enlace predeterminado como

  • Creación de documentación API para los paquetes, clases, métodos y constantes JAXB derivados del esquema
  • Dar nombres personalizados semánticamente significativos para los casos que el mapeo predeterminado de nombre XML a identificador de Java no puede manejar automáticamente
  • Anular el enlace predeterminado, como especificar que un grupo de modelos debe adjuntarse a una clase en lugar de a una lista

60) Explique qué es la personalización en línea.

Personalización de enlaces JAXB realizada mediante declaraciones de enlace en línea en un archivo de esquema XML que toman la forma de elementos incrustados en elementos del esquema .

61) Explique qué es la firma XML.

XML se puede utilizar para firmar cualquier dato arbitrario, ya sea binario o XML. Los datos se reconocen mediante URI en uno o más elementos de referencia. Se describe en una o más formas, como separado, envolvente o envuelto.

62) Explica qué es Stax.

Stax son las siglas de Streaming API para XML; es una API para leer y escribir documentos XML, originados en el lenguaje de programación JAVA.

63) Mencione cuáles son las API XML habituales.

Las API XML habituales incluyen

  • API basadas en DOM o en árbol: todo el documento se lee en la memoria como una estructura de árbol para disponibilidad aleatoria llamando a la aplicación
  • API basadas en eventos: la aplicación se registra para obtener eventos a medida que se encuentran entidades dentro del documento de origen

64) Explique qué es el análisis sintáctico Push y el análisis sintáctico Pull.

  • Análisis de extracción: el análisis de extracción de transmisión se refiere a un modelo de programación en el que una aplicación cliente llama a métodos en una biblioteca de análisis XML, cuando necesitaba comunicarse con un conjunto de información XML, lo que significa que el cliente solo obtendrá datos XML cuando se le solicite
  • Push Parsing: en Push Parsing, el analizador envía eventos de análisis o datos XML a la aplicación. En el modelo de inserción, el analizador tiene control sobre el proceso de análisis y el analizador llama a los métodos del controlador implementados.

65) Explique en qué tecnología se basa la seguridad de XWS. Enumere las opciones que ofrece la seguridad XWS para proteger las aplicaciones JAX-RPC.

La seguridad de XWS se basa en la protección de los servicios web creados en JAX-RPC y en una aplicación independiente basada en SAAJ. Para proteger la aplicación JAX-RPC, las opciones que proporciona la seguridad XWS son

  • Firma digital XML
  • Cifrado XML
  • Verificación de token de nombre de usuario
  • API del marco de seguridad de XWS

66) Enumere los seis paquetes disponibles en la API de firma digital XML.

La API de firma digital es

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

67) Explique qué es JAXR.

JAXR es la API de programación JAVA para la aplicación de la plataforma Java para acceder e interactuar mediante programación con varios tipos de registros de metadatos.

68) Explique en qué consiste la arquitectura JAXR.

La arquitectura JAXR consta de un cliente JAXR y un proveedor JAXR.

  • Cliente JAXR: es un programa cliente que usa la API JAXR para usar un registro a través de un proveedor JAXR
  • Proveedor JAXR: es una implementación de la API JAXR que proporciona acceso a un proveedor de registro en particular oa una clase de proveedores de registro que se basan en especificaciones comunes.

69) Explique qué son los modelos de mensajería JAXM.

Hay dos tipos de modelos de mensajería para JAXM síncrono y asíncrono

  • Modelo de mensajería síncrona: en este tipo de modelo, el cliente se comunica directamente con la fuente. En este, el cliente enviará la solicitud y espera.
  • Modelo de mensajería asincrónica: en este modelo, el cliente dirige el mensaje al proveedor de mensajería y regresa. El proveedor de mensajería luego ejecuta el enrutamiento del mensaje a la fuente final.

70) Explique qué es UDDI, DISCO y WSDL.

  • UDDI: Significa Descripción Universal, Descubrimiento e I Es el directorio que se utiliza para publicar y descubrir servicios web públicos
  • DISCO: Se le conoce comúnmente como descubrimiento. Agrupa servicios comunes y expone el documento de esquemas de los servicios web.
  • WSDL: Significa lenguaje de descripción de servicios web (WSDL). Se utiliza para describir servicios web. La descripción incluye la URL de los servicios web, las propiedades y los métodos admitidos por los servicios web, el tipo de datos que admite y los detalles del protocolo que admite.