MSA End to End Data Delivery - DFC

sojw·2024년 3월 30일
0

What MSA End to End Data Delivery ?

  • MSA 환경에서 REST API 연동 시, From service → To service 로 특정값 전달 방식을 정의
  • From service(Delegater MS): REST API 호출 주체 MS
  • To service(Consumer MS): From service에서 전달한 값을 소비 하는 MS
  • Delivery service(전달자)는 특정속성을 통해 From/To service로 전달 한다. ( ex) extra 속성)

Role / Responsibility

Delegater MS

  • Delegater MS(데이터 전달 위임자)는 Forwarder MS의 API Spec 에 맞춰
    • 전달값에 대한 json model 정의 한다.
    • API 요청시, 값을 주입 한다.
  • Consumer MS(데이터 소비자)들에 위 정의 된 전달값의 json model을 공유한다.

Forwarder MS

  • 특정(extra)속성을 통해, Forwarder MS(데이터 전달자)는 Consumer MS로 데이터 전달을 보장 한다.
  • 해당 속성에 대해서 조합/변경을 하지 않고 입력 된 원본을 그대로 전달 해야 한다.

Consumer MS

  • Consumer MS(데이터 소비자)는 정의 된 json model를 공유 받아 처리자를 구현하다.
  • API 요청 인입시, 정의 된 속성값(aka. extra)을 object model로 변경 한다
  • object deserial/serial의 책임을 가진다.
// Forwarder MS의 API
{
    "order": {
        "id": "ORD1212121",
        ......
        ......

        // Forwarder MS의 API 에 추가적인 API Spec 정의
        // RPS bypass 영역 정의
        // from service -> to service 에 전달 되는 json string 전달
        "extra": [{
            
            "ignite_service": {
                "version": 1,
                "service_code": "ORDERYO-API",
                "delivery_values": [{
                    "rider_name" : "rider1"
                }]
            }
        }

    }
}

0개의 댓글