TechBlog - Messages with tag "OData"

Improving performance of web services

This feature is implemented in 1C:Enterprise version

In version 8.3.9, we implemented a significant number of tasks to optimize different mechanisms of the platform. We would like to tell you about one of them in this article. The task in question concerns improved performance of web services.

Reuse of sessions

Insufficient performance of web services was due to the fact that each web service call had significant "overhead expenses" related to creating and terminating a session. Besides, every time a session was created, the handler SessionParametersSettings() was executed, which could be quite "heavy" in a standard configuration.

In addition, there was a functional deficiency. Web services did not have a state. This prevented us from implementing the logic that uses saved state between web service calls.

In version 8.3.9, we fine-tuned the mechanism for web services (SOAP services, HTTP services, and OData services). As a result, their performance has improved by approximately 10 times.


Methods of integration with 1C:Enterprise applications

What are the most essential requirements for business applications? The following tasks are among the most important ones:

  • Ease of modification/adaptation of application logic for/to changing business objectives.
  • Ease of integration with other applications.

The solution to the first task in 1C:Enterprise was briefly described in "Customization and support" section of this article; then we described it in detail here. Today, we will talk about the second task - namely, integration.

Integration tasks

Integration tasks can be different. To solve some of them, all you need to do is just perform an interactive exchange of data - for example, to send a list of employees to a bank in order to process payroll cards. More complex tasks may require a fully automated data exchange, possibly with involving the business logic of the external system. There are tasks that are specialized, such as integration with external equipment (for example, retail equipment, mobile scanners, etc.), or with legacy or highly specialized systems (for example, RFID tag recognition systems). It is essential to choose the most suitable integration method for each task.