시스템 간 연동 (EAI) · SAP·레거시 연동 패턴 · 퀴즈
퀴즈: SAP·레거시 연동
문항 6개. 정답과 해설은 풀어 본 뒤에 보여 드립니다.
IDoc 과 RFC/BAPI 의 성격을 바르게 구분한 것은?
- IDoc 은 동기 함수 호출, RFC 는 비동기 문서 교환
- 둘 다 동기 방식이며 차이는 데이터 크기뿐
- IDoc 은 SAP 내부 전용이고 RFC 는 외부 전용이다
- IDoc 은 비동기 문서 교환 포맷, RFC/BAPI 는 동기 원격 함수 호출
IDoc 의 데이터 레코드에서 `SDATA` 필드의 성격은?
- 세그먼트의 실제 값이 담긴 고정길이 문자열이라 레이아웃으로 잘라 파싱해야 한다
- 세그먼트 구조를 그대로 담은 JSON 이라 파서에 그대로 넘기면 된다
- 전송량을 줄이려고 압축한 바이너리라 먼저 풀어야 읽을 수 있다
- 다음 세그먼트의 위치를 가리키는 오프셋 값이 담긴 제어 필드다
'IDoc 이 상태 51 로 떨어졌다'는 말의 정확한 의미는?
- 네트워크 전송에 실패해 SAP 에 도달하지 못했다
- IDoc 형식이 잘못되어 파싱되지 않았다
- 처리 대기 중이다
- 데이터는 도착했으나 SAP 내부에서 애플리케이션 문서 생성(업무 처리)에 실패했다
이기종 시스템 연동에서 '교차 참조(cross-reference) 테이블'이 필요한 이유는?
- 매번 상대 시스템에 조회하지 않아도 되어 연동 응답이 빨라지기 때문에
- 같은 대상을 시스템마다 다른 ID 로 부르므로 그것을 잇는 매핑이 없으면 연동이 성립하지 않아서
- 개인정보를 직접 주고받지 않도록 대체 키를 쓰라는 감사 요건이라서
- 긴 식별자를 짧은 내부 키로 바꿔 전문 크기를 줄일 수 있어서
레거시 연동 설계에서 '레거시 스키마를 우리 도메인 모델로 그대로 들이지 말라'는 조언의 이유는?
- 레거시의 제약과 어휘가 우리 시스템 전체로 번져 이후 변경이 어려워지기 때문
- 오래된 스키마는 정규화가 안 돼 있어 그대로 쓰면 반드시 문제가 되기 때문
- 레거시 스키마 구조를 그대로 복제하면 라이선스상 문제가 될 수 있어서
- 컬럼 수가 많은 테이블을 그대로 들이면 조회 성능이 크게 떨어지기 때문
레거시 연동에서 파싱 결과만 저장하고 원본 전문을 보관하지 않으면 생기는 문제는?
- 원본을 안 남기므로 저장 공간이 줄어 오히려 운영에 유리하다
- 매번 파싱한 결과만 남아 조회 시 추가 가공이 필요해 느려진다
- 원본 인코딩 정보가 사라져 저장된 값의 한글이 깨질 수 있다
- 파싱 오류나 해석 변경이 발견됐을 때 과거 데이터를 다시 해석할 방법이 없다