728x90

실버케어 플랫폼 프로젝트 5

[Spring]MSA환경에서 JWT 로그인 구현

MSA에서 로그인 구현이 다른 이유. MSA는 Monolithic 환경과 다르다.Monolithic에서는 유저/게시판/결제/채팅 등등 모든 서비스가 한 서버 내에서 동작이 이루어진다면,MSA에서는  각각의 서비스들을 담당하는 서버들이 각각 있다. 그리고 각각 독립적으로 운영되고 배포된다.( 예를 들어, 유저와 관련한 서비스는 유저서버 / 게시글과 관련한 서비스는 게시글 서버 / 결제관련한 서비스는 결제서버가 담당하는 식의 구조. 이 때 결제서버에서 에러가 터져 서버가 돌아가지 않더라도 유저가 게시글을 쓰는 데에는 문제가 없다. 게시글과 관련한 로직을 담당하는 서버가 독립적으로 돌아가고 있기 때문이다.그런데 모놀리식 구조에서는 한 서버에서 결제,게시글 등 모든 로직을 처리하기 때문에 결제에서 에러가 터져 ..

[Spring] 결제(포트원) 연동[결제 전/후 검증까지]

포트원 이란? 결제 시스템을 구현하려면 은행API나 카드사 결제 시스템을 직접 붙이면 될 것이지만,각 결제 수단마다 연동방식도 다르며 무엇보다 보안 인증이 복잡하여 쉽사리 할 수 없는 것이 현실이다.그래서 PG사(Payment Gateway)를 사용한다.(PG: 온라인 스토어와 카드사, 은행 사이에서 결제 승인을 중계해주는 시스템) 그런데 우리 입장에서 이 PG사의 결제시스템을 붙이는 것도 쉽지 않고,결제가 올바르게 이루어진 것인지에 대한 사전,사후 검증에 대한 API까지 직접 구현하기가 쉽지 않다.그래서  구현하기가 쉬우면서, 사전/사후 검증에 대한 API까지 제공하는 포트원을 결제시스템으로 많은 개발자들이 이용한다.  이 포스트는 포트원 세팅-백엔드 세팅(결제 전 검증, 결제 후 검증)-프론트 세팅 ..

[FireBase]FCM 앱-스프링 연동

구현 이유 지난번 포스트를 통해, 헬스커넥트의 데이터를 가지고 와서 스프링서버로 전송하는 자체 앱개발을 통하여스마트워치를 통해 쌓은 헬스,수면데이터를 스프링서버로 가지고와서 웹서비스로 활용 할 수 있는 구조를 만들었다.그런데 사실 웹서비스에서 실시간으로 바뀌는 내  건강데이터를  조회하려고 할 때마다 앱에서 스프링서버로 건강데이터를 보내야한다. 그러나 내가 개발한 앱은 화면에서 버튼을 누르면 스프링서버로 데이터가 전송되는 구조다.따라서, 사용자가 서비스에서 건강데이터를 조회하려고 하면 먼저 스프링서버가 앱에게 '데이터를 달라' 라고 요청을 하고,앱이 그에 따라 자동으로 데이터를 스프링서버로 전송하는 구조를 만들어야했다.그런데 서버와 서버간에 통신을 하는 것처럼 서버와 앱은 통신할 수 없다.앱은 서버처럼 ..

[Android]헬스커넥트 연동 앱 만들기

개발이유 팀 프로젝트에서 핵심적인 기능이 스마트워치(갤럭시 워치)에 있는 건강 데이터를 스프링 서버로 가지고와 사용자에게 부가적인 서비스를 제공하는 것이었다.그러나 문제는 삼성헬스에서 내 스프링 서버로 데이터를 받는 API는 없다.갤럭시워치에 쌓이는 데이터는 내 모바일 앱의 삼성헬스에 연동되는데 그 데이터는다시 헬스커넥트(삼성과 구글에서 만든 앱)에 연동된다.그래서 건강데이터를 스프링 서버로 가지고 오는 유일한 방법은  헬스커넥트의 데이터를 가지고와서 우리 스프링 서버로 보내주는 앱을 만드는 것이다. 다만, 스프링 위주의 웹개발만 해봤을 뿐 앱개발과 코틀린은 처음이었다.그래서 아래 나같은 사람을 위해 차근차근(?) 설명해놓았으니 GPT에게 도움을 받아가면 충분히 할 수 있을 것이다. 1.안드로이드 스튜디..

[개념]WebRTC 개념 정리

0.WebRTC(Web Real-Time Communication)이란?인터넷 브라우저나 앱에서 플러그인 없이 오디오,비디오와 같은 데이터를 실시간으로 주고받는 통신을 가능하게 해주는 기술로 P2P방식으로 작동하여 서버에 부담이 적은 것이 특징이다.(p2p란? Peer to Peer의 줄임말로 서버를 거치지 않고 사용자끼리 직접 데이터를 주고받는 방식을 의미(peer는 동등한 위치에 있는 상대를 뜻하는 것으로 여기서는 사용자와 사용자를 의미한다)) 그리고 WebRTC를 구현하기 위해서는 아래 개념들을 반드시 숙지하고 있어야 한다. 1.Signaling(시그널링)위에서 WebRTC는 P2P 방식으로 작동한다고 했다. 먼저 P2P 통신이 가능하기 위해서는 이 Signaling이란 과정을 거쳐야한다.시그널링은..