Articles

Préserver le contexte entre les threads.

Préserver le contexte entre les threads est essentiel pour assurer une communication fluide et une bonne coordination entre les différents processus.

Quand on construit une grande architecture de microservices prête à la production, nous rencontrons toujours le défi commun de préserver le contexte de la demande à travers les services et les threads, y compris la propagation du contexte aux threads enfants.

In a microservices architecture, context propagation is the process of passing contextual information from one service to another. This is necessary when a request needs to be processed by multiple services. The context can contain information such as user identity, authentication tokens, and other data that must be passed between services.

Testing Context Propagation

Testing context propagation is an important part of ensuring that the microservices architecture is working properly. It is important to test that the context is being propagated correctly between services and that the data is being passed securely.

The most common way to test context propagation is to use integration tests. Integration tests are designed to test the interaction between different components or services. They can be used to test that the context is being passed correctly between services and that the data is being passed securely.

Another way to test context propagation is to use unit tests. Unit tests are designed to test the individual components or services in isolation. They can be used to test that the context is being passed correctly between services and that the data is being passed securely.

Propagation du contexte : Qu’est-ce que c’est ?

La propagation du contexte signifie le passage d’informations ou d’états contextuels entre différents composants ou services dans un système distribué où les applications sont souvent composées de plusieurs services exécutés sur différentes machines ou conteneurs. Ces services doivent communiquer et collaborer pour satisfaire une demande de l’utilisateur ou effectuer un processus commercial.

Dans une architecture de microservices, la propagation du contexte est le processus de transmission d’informations contextuelles d’un service à un autre. Cela est nécessaire lorsqu’une demande doit être traitée par plusieurs services. Le contexte peut contenir des informations telles que l’identité de l’utilisateur, les jetons d’authentification et autres données qui doivent être transmises entre les services.

Tester la propagation du contexte

Tester la propagation du contexte est une partie importante pour s’assurer que l’architecture de microservices fonctionne correctement. Il est important de tester que le contexte est bien propagé entre les services et que les données sont transmises de manière sécurisée.

La manière la plus courante de tester la propagation du contexte est d’utiliser des tests d’intégration. Les tests d’intégration sont conçus pour tester l’interaction entre différents composants ou services. Ils peuvent être utilisés pour tester que le contexte est bien propagé entre les services et que les données sont transmises de manière sécurisée.

Une autre façon de tester la propagation du contexte est d’utiliser des tests unitaires. Les tests unitaires sont conçus pour tester les composants ou services individuels en isolation. Ils peuvent être utilisés pour tester que le contexte est bien propagé entre les services et que les données sont transmises de manière sécurisée.

Enfin, il est possible de tester la propagation du contexte en utilisant des tests de charge. Les tests de charge sont conçus pour tester le comportement d’un système lorsqu’il est soumis à une charge importante. Ils peuvent être utilisés pour tester que le contexte est bien propagé entre les services et que les données sont transmises de manière sécurisée.

Conclusion

La propagation du contexte est un élément essentiel dans une architecture de

Source de l’article sur DZONE

Using YOLOv5 in PyTorch

YOLO, an acronym for ‘You only look once,’ is an open-source software tool utilized for its efficient capability of detecting objects in a given image in real time. The YOLO algorithm uses convolutional neural network (CNN) models to detect objects in an image. 

The algorithm requires only one forward propagation through a given neural network to detect all objects in the image. This gives the YOLO algorithm an edge in speed over others, making it one of the most well-known detection algorithms to date.

Source de l’article sur DZONE


Introduction

While developing applications using Spring batch, especially in a micro-service project, we sometimes face one or most of the following cases:

  • The necessity of getting the security context inside the batch items to call methods that require authorizations inside the same micro-service or perform remote processing by calling other micro-services using Feign Client (HTTP) or  Spring Cloud Stream (broker like Kafka, RabbitMq …)
  • Propagating Sleuth trace Id and span Id in order to enhance logs traceability inside all the application components including other micro-services so the trace will not be lost if we use Job.
  • Getting the connected user Locale (i18n) in order to generate internationalized output otherwise, all the Job outputs will be generated in the default server language.
  • Retrieving objects stored inside Mapped Diagnostic Context  (MDC) for tracing purposes.

The following schema illustrates remote calls that can be performed in a micro-service-based application and the context information that String Batch items can propagate.

Source de l’article sur DZONE