2016-04-05 26 views
1

İhtiyacım var, middleware sistemi olarak hareket etmek zorundayım, upstream sistemi ona çağrı yapar ve bazı ekstra eklentilerle üçüncü taraf sistemine çağrı yapacağım. Üçüncü taraf sisteme istek gönderdikten sonra bana yanıt olarak bir kimlik verir. İsteğimin durumunu almak için başka bir çağrı yapmak için bu kimliği kullanmak zorunda kalacağım, istek durumumun durumu bittikten sonra, isteğimin ayrıntılarını almak için bir tane daha hizmet çağırmak zorunda kalacağım. Sadece o zaman cevap vermek için ona fazladan bilgi eklemek ve detayları geri sisteme göndermek zorunda kalacağım. modeli daha iyi İstek/Yanıt (Senkron) Asenkron çağrı Olay güdümlü machanism olacak Bu senaryoda İstek Gönderme Modeli/Eşzamanlı/Async/Olay Driven

sistemimde ve üçüncü parti sistemi arasındaki akış bölümü değiştirilemez olduğu sabittir. Yukarı akım sistemi servisimi ESB üzerinden çağırıyor. RestFul'u kullanmayı planlıyorum, lütfen bu konu hakkında bilgi verin.

cevap

1

Sadece üçüncü parti sistemini kullanırken de katman sistemi için aynı şemayı kullanabilirsiniz: i üçüncü parti sistemine isteği gönderdikten sonra

onlar Cevabı olarak bana bir kimliği verin. isteğim devlet durumu değiştiğinde Yani katman her Memba üzerinde Ara Katman RequestID dönmelidir

  • yapılması demek kez benim isteği durumunu almak için başka bir arama yapmak için bu kimliği kullanmak zorunda olacak istek.
  • Yukarı akış, bu Middleware RequestId
  • için istek durumunu kontrol edebilir. Eğer istek durumu done yukarı yönde değiştiğinde yanıt alabilirsiniz.

I Upstream, MiddleWare ve Thirdparty sistemlerinin bu basit etkileşimlerini göstermek için bu dizi diyagram oluşturmak:

enter image description here

+0

i rquest/karşılığını izlemek veya uyumsuz – sumedha

+1

Her iki kullanmalıdır çağrıları gereken modeli :) '' upstream' '' middleware''e istek gönderecektir ancak 'middleware' bu isteği (üçüncü parti 'sistem davranışından dolayı) senkronize olarak işleyemez, bu yüzden istek kimliğini' upstream''e ve 'upstream''e geri gönderir ve daha sonra sorabilirsiniz. istek durumu hakkında "middleware" ve tamamlandığında uygun yanıt alır. Bu, async istek/yanıt modeli –

İlgili konular