기존 마이크로서비스는 두 가지가 있습니다.
<올> <리>사용자 서비스.
사용자 데이터 필드
유이드
allow_withdraw (1: 출금 허용, 0: 출금 금지)
<리>금융 서비스
금융 시스템 데이터 필드
계정(user.uid에 해당)
금액(잔고)
이제 출금 기능을 위해서는 먼저 Allow_withdraw를 결정한 후 잔액이 충분한지 확인해야 합니다.
users-service
에 노드 /users/withdraw
실행 시
은 먼저 allowed_withdraw 상태를 확인한 다음
HTTP를 통해 finance-service
의 /finance/amount
를 요청하여 잔액을 얻습니다.
잔액이 충분한지 다시 확인하세요(문제는 여기에 있습니다. 여기서 판단은 장담할 수 없습니다)
좋은 구현 아이디어에는 어떤 것이 있나요?
잔액이 충분한지 여부는 사용자가 출금한 금액으로 판단하거나 고정된 출금 금액을 설정하면 안 되나요? 왜 보장할 수 없나요? 백그라운드 비교 금액이 일치하지 않거나 초과하는 한 실패합니다.