데이터 송수신 장애, 물리적 제약 등 여러 요인에 의해 delay가 발생하는 경우에는, 비동기 함수를 사용하여 delay 시간 동안에도 다른 코드 실행을 하도록 해야하는데, 여러 함수의 return값이 chain 형태로 엮여 있는 경우, 일반 call back func