Outils pour utilisateurs

Outils du site


cours:service_oriented_computing_and_web_services_2017_2018:lab_eventing_and_wstutorial:publish_subscribe_pattern_for_eventing_with_web_services

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
cours:service_oriented_computing_and_web_services_2017_2018:lab_eventing_and_wstutorial:publish_subscribe_pattern_for_eventing_with_web_services [2018/03/29 10:51]
tigli [Event Based Communication and Architecture with web services]
cours:service_oriented_computing_and_web_services_2017_2018:lab_eventing_and_wstutorial:publish_subscribe_pattern_for_eventing_with_web_services [2018/03/29 11:33] (Version actuelle)
tigli [Create WCF Service Library (EventsLib.dll)]
Ligne 1: Ligne 1:
 ====== Event based Communication and Event driven Architecture with web services ===== ====== Event based Communication and Event driven Architecture with web services =====
 +
 +<note warning> ​
 +The solution of the first part of this tutorial is provided below. ​
 +
 +Add the solution(s) of the second part of this tutorial on your Github repository !
 +</​note> ​
  
 ===== Introduction : Why Event driven Architecture ? ===== ===== Introduction : Why Event driven Architecture ? =====
 +
 +
 +{{ :​cours:​service_oriented_computing_and_web_services_2017_2018:​lab_eventing_and_wstutorial:​eda_schema.png?​150|}}
  
 Classical Request–response,​ or request–reply,​ is one of the basic methods computers use to communicate with each other, in which the first computer sends a request for some data and the second computer responds to the request. Classical Request–response,​ or request–reply,​ is one of the basic methods computers use to communicate with each other, in which the first computer sends a request for some data and the second computer responds to the request.
Ligne 14: Ligne 23:
 An event can be defined as "a significant change in state"​. An event can be defined as "a significant change in state"​.
  
 +Some Middleware like [[https://​en.wikipedia.org/​wiki/​MQTT|MQTT]] are specificaly design to implement such event driven architectures. ​
  
-===== Your first step by step eventing communications between Web service and Client ===== + 
 +===== PART 1 : Your first step by step eventing communications between Web service and Client ===== 
  
 ==== Events Introduction ==== ==== Events Introduction ====
Ligne 38: Ligne 49:
  
   * **.Net Framework Class Library** (EventsLib.dll):​ Actual Service logic, which defines a Service Contract Interface, OperationContract,​ and implements them, and exposes few functions to the world to use them   * **.Net Framework Class Library** (EventsLib.dll):​ Actual Service logic, which defines a Service Contract Interface, OperationContract,​ and implements them, and exposes few functions to the world to use them
-  * **Console ​ Application** to host the WCF Service Library EventsLibHost.exe):​ Host the WCF library +  * **Console Application** to host the WCF Service Library EventsLibHost.exe):​ Host the WCF library
-  * +
  
 On the client side : On the client side :
  
-  * Console ​Client ​Application (EventsClient.exe):​ Client Application which will use this service. ​+  ​* ** Console Application ​** (EventsClient.exe):​ Client Application which will use this service. ​
  
 <note warning> <note warning>
Ligne 59: Ligne 69:
  
 === Defining Interface ICalcServiceEvents (ICalcServiceEvents.cs) === === Defining Interface ICalcServiceEvents (ICalcServiceEvents.cs) ===
- +|||
-** Exercice: **+
  
 Now Let's define interface for the events published by the service. Now Let's define interface for the events published by the service.
Ligne 354: Ligne 363:
  
 <note warning> <note warning>
 +Here, is the solution of the first part
 </​note>​ </​note>​
  
Ligne 378: Ligne 388:
 === Action<​T>​ Delegate === === Action<​T>​ Delegate ===
 https://​msdn.microsoft.com/​en-us/​library/​018hxwa8(v=vs.110).aspx https://​msdn.microsoft.com/​en-us/​library/​018hxwa8(v=vs.110).aspx
-===== Advanced use of Eventing =====+===== PART 2 : Advanced use of Eventing =====
  
 Thanks to the previous example, create a central WS that accept data modification from "​Publishers"​ clients and send event on these modifications to "​subscribers"​ clients. ​ Thanks to the previous example, create a central WS that accept data modification from "​Publishers"​ clients and send event on these modifications to "​subscribers"​ clients. ​
 Test it with a simple shared data like a count value, with one pupblisher and various subscribers. Test it with a simple shared data like a count value, with one pupblisher and various subscribers.
  
cours/service_oriented_computing_and_web_services_2017_2018/lab_eventing_and_wstutorial/publish_subscribe_pattern_for_eventing_with_web_services.1522313469.txt.gz · Dernière modification: 2018/03/29 10:51 par tigli