Answer the question
In order to leave comments, you need to log in
What to read about the integration of REST, SOAP, JSON, RMI, etc. for an analyst who does not understand anything about this?
Colleagues, hello everyone. Please don't throw rocks too hard. I hope you understand and forgive. I am a system analyst and manage a team of ~12 people in the direction. Unfortunately, the IT university passed me by and I don’t know many things that seem obvious. The most critical in my opinion are the issues of integration. I would like to understand them, but I did not want to waste time on the "unnecessary". Can you orient me more purposefully.
My level of knowledge (in my own words without opening google):
- Messages via SOAPthe protocol has an XML structure, but is not transmitted in files, but via http. Responses and requests can be tracked either with specialized software (SOAP UI for example), or somehow tracked in the Chrome browser (did not check how); It needs a WSDL file at the end point that validates the incoming message. But why is it not needed in other protocols? - JSON
messages . The same as SOAP, but has a different design than classic XML. And here, as it were, there is a feeling that I'm missing something :-) Exchange via HTTP. Is there a way to track messages?
- RMI
- remote java method call. You can click a button in one software to launch an execution method in another. But what is the difference between other processes? Isn't it possible to do the same when using SOAP and JSON? Can I somehow track the execution of commands from outside?
- REST - apparently this is a style that can be applied to all of the above protocols (except RMI) right?
- Socket - what is it? What is it about? How is it different from all of the above?
- There are also the usual and understandable for me XML-files, which can have absolutely any structure.
Total:
1. Is there anything that can help you dive into all this pretty quickly?
2. Are there any other standard protocols that in general everyone should know for show?
3. Do I understand correctly that with the help of these protocols it is possible to transfer at least an HD movie by converting the file into some kind of format a la base64?
Answer the question
In order to leave comments, you need to log in
You lack fundamental knowledge, in this case, an understanding of the ISO / OSI model + basic ideas about classes and objects would greatly help you.
If you read about the ISO / OSI model, it will be easy enough for you to understand that the mentioned entities belong to different levels. In this case, several levels of levels can be distinguished:
1. Network connection - a way to establish a connection between two applications (for example, client and server). A socket is a representation of such a connection at the operating system and application levels (i.e., the developer writing the network application operates with this concept).
2. Application protocol - describes the interaction between the client and the server, most often through an established network connection (ie, from a program point of view, through a socket). For example, HTTP or SMTP. Those. application protocols are above sockets.
sockets and network protocols belong to the ISO/OSI
3 model. Data exchange formats. There are several universal formats that allow you to describe almost any data. These include, for example, XML and JSON. JSON is an alternative to XML (it is somewhat simpler and more compact). There are corresponding standards for JSON and XML.
Data in these formats can be stored or transmitted over application protocols (eg over HTTP).
4. Data models (classes). The data model describes a particular class of data. For example, an order. It determines what properties the order has (date, amount, product, buyer, seller, delivery date, etc.). Data models tend to be universal and are designed for a specific application. There are various standards describing data models and relationships between them - XML schema, JSON-LD. Generic data models can be found at schema.og. Application developers can create their own data model. Data models can be described for both XML and JSON.
5. API (software components) using data models. In particular SOAP and REST API. At the same time, SOAP is a standard for such APIs and is usually used for universal components that are integrated with each other, SOAP uses XML. REST API is a rather conventional term that can be applied to almost any API that accepts or returns structured data (both over XML and over JSON). SOAP is closer to the object data model, REST API is closer to the classic API and is used for simple client-server applications.
WSDL is just one of the SOAP elements.
Those. SOAP runs on top of XML schema on top of XML on top of HTTP (for example) on top of a socket connection.
RMI as a whole can be attributed here, but it is less universal, because is bound to JAVA and uses internal binary data representations and not any universal data representation format.
the last three levels do not belong to the ISO / OSI model, this is already from the field of applied development / design.
The question about the HD film is a question from the field of whether it is possible to send an elephant by mail. Any data can be transmitted through the socket, any data can also be packed in XML / JSON, any data can also be transmitted using the application protocol, etc. Moreover, there is DLNA, which is actually a REST API over XML and is supported by any modern TV just for transferring movies, incl. HD. Those. it is possible to create a specific implementation of applications that will support HD movies, but it is impossible to expect that any implementation of the SOAP / REST API will allow you to transfer HD movies, they are made for specific tasks.
In practice, as a rule, there is a specific implementation and restrictions, for example, on the size of the POST request or the size of the letter (SOAP can use SMTP, not just HTTP).
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question