Diseñar una integración de servicios web

Cada vez más analistas, proyectos y productos llegan a TI de marketing, consultoría, ventas y otras industrias no tecnológicas, y sin ninguna experiencia laboral. Y yo no fui una excepción aquí. Existe el problema de que en los primeros años obtienes muchos términos y conceptos técnicos, intentas descifrarlos, pero no entiendes hasta qué nivel de detalle necesitas bajar en cada uno de ellos. ¿Necesita averiguar qué significa el término WSDL que descubrió y qué tipos de ejecución de solicitudes asincrónicas son, o es suficiente saber que un servicio web simplemente tiene una solicitud y una respuesta? El artículo es necesario para resolver este problema para una de las características más comunes: aprender a trabajar con un servicio web para intercambiar datos, realizar acciones específicas en otros sistemas y otras integraciones.





Hay mucho material en ruso e inglés sobre por qué se necesitan los servicios web, qué son, cómo diseñarlos, hay casos interesantes. Pero sobre cómo interactuar con ellos en la práctica, especialmente en sistemas corporativos complejos, no encontré nada completo. Y como muestra la experiencia, el diablo está en los detalles y subpárrafos, la mayoría de los descritos en este artículo son mis propios "golpes".





, : -, , . 20 . , , 20 100 ., , 100 ., . , ! , 15 , , 8 .





, , :

  1. - , - . , , :)





  2. / (. Endpoints PROD, QA / TEST). - . , , . , “api”. , - .





    Aquí el servicio web de búsqueda de Youtube dio un error, porque esperaba que en la solicitud pasáramos la clave API (emitida en su sitio web, individual para cada uno)
    - Youtube , , API ( , )
  3. . -, ? : API, , , .





  4. WSDL, SOAP -. -: SOAP REST, . REST , SOAP , (XSD – XML Schema Definition). , WSDL, – SOAP , WSDL. WSDL , . SOAP - , SOAP UI. SOAP .XML , REST - .JSON, .XML, .TXT





  5. : - , ? ?





    Solicitud de Swagger
    Swagger
  6. . REST, Swagger ( SwaggerUI). - , - , , PROD QA.





    La respuesta de Swagger
    Swagger
  7. ? , , , , . , .





  8. ( ) . , . : - , , - , , , . , . , , 99 , / .





  9. : , .





    1. . , , . : “2007”, 2007 , Date “2007-01-01” DateTime “2007-01-01 11:00:00”. , , /, , () .





    2. – , , , . , , , , , -, . SOAP WSDL , <! -- Optional: -->. REST Swagger, .





      IU de SOAP
      SOAP UI
      Pavonearse
      Swagger
    3. – , , . SOAP WSDL / , minLenght / maxLength. REST , . , (, , ), .





  10. (. exception flow). , , : 20 , 10 , .





  11. , / ( , ). , : .





  12. PROD / QA , . , QA – . - - , , , . .





  13. . , / , .





  14. . : , , .





    interfaz para ver los registros de Kibana
    Kibana
  15. . , , , , . , .





2. , :

  1. . “ ” , : , .





  2. . , , / .





  3. -. : ( ), 20 100 . , / / , . .





  4. ? , “strategy”, . .





  5. . -, , , . , .





3. , !

  1. . , . .





  2. . , 200 OK ( ). : , 200 OK, 201 Created.





  3. Ejecución de solicitudes sincrónicas / asincrónicas. Cuando una solicitud se ejecuta de forma sincrónica, se procesa inmediatamente después de su recepción. Con la comunicación asincrónica, las solicitudes se ponen en cola en el lado del servicio y la acción de destino no se ejecuta de inmediato. De los propietarios o usuarios del servicio, puede averiguar cuánto, en promedio, hay un evento en la cola y cuánto tiempo más se tarda en procesar la solicitud. Los códigos de éxito 201 y 202 sugieren asincronía. Si los recibió, es mejor verificar que se cumpla la acción objetivo.





    Códigos de estado HTTP más populares
    Códigos de estado HTTP más populares

¡Gracias por la atención! Comparta sus casos en los comentarios.



Kirill Mark, Tinkoff

@mar_kirr








All Articles