본문 바로가기
반응형

개발5

Funtional Programming은 어떻게 가능하게 되었을까? Overview Java 8 버전 이상을 사용하는 분들이라면 아마 Functional Programming 을 적극적으로 이용하시는 분들이 많을 거라 생각합니다. 자바 8버전 부터 Stream API와 함께 추가 된 대표적인 기능 중 하나이죠. 저 또한 개발 중에 함수형 프로그래밍으로 코드를 많이 짜고 있는데요, 처음 사용했을 때 가장 신기했던 것은 -> (람다식)을 사용하여 추가적인 메서드를 생성하지 않아도 익명함수를 활용하여 내부 값을 불러올 수 있다는 점이었습니다. 그러다보니 자연스럽게 코드도 간결해지게 되었죠. 그러다 하나 의문점이 생겨나게 되었는데 그 점은 바로 아무거나 함수형 프로그래밍으로 사용할 수 있는걸까? 하는 궁금증이었습니다. 만약 아무거나 함수형으로 쓸 수 없다면 내부 구현은 어떻게 .. 2021. 11. 15.
AWS S3 이미지 업로드 Spring으로 사용해보기 대부분의 이미지 서버를 구축할 때는 AWS S3를 보편적으로 사용합니다. 저희 또한, S3를 애플리케이션 이미지 업로드 및 다운로드 서버로 선택하게 되었습니다. 큰 이유가 있기 보다는.. 서버를 사용하는데는 항상 비용문제가 따라오기 마련인데 마침 공짜 크레딧이 생겨(!!) 무리 없이 이용할 수 있게 되었습니다. 스프링으로 사용하지 않는 경우에는 보통 API Gateway - AWS Lambda - S3 식의 구조로도 많이 발견이 됩니다. 이는 트래픽이 많이 몰릴 수 있는 상황이거나 앞으로의 확장성을 많이 고려해야 할 때 사용하는 방식입니다. 하지만 어드민 페이지를 구축하거나(보통 사진업로드가 많지않음) 저희처럼 MVP한 모델로 신규 서비스를 런칭하는 것이라면 크게 트래픽이 몰리지 않기 때문에 오히려 서버.. 2021. 11. 14.
JWT 토큰인증 방식을 사용한 소셜로그인 구현하기 Overview 이제는 완전히 완료 된 작업이지만, 처음해보는 JWT 토큰방식 로그인이라 나중에라도 잊어버리지 않기 위해 정리해보는 글입니다. 카카오/구글 소셜로그인을 완료한 상태이며, 추후 iOS 버전에 대응하기 위해 애플로그인을 추가할 예정입니다. JWT 토큰 인증 방식으로 프론트 쪽에서 카카오 인증 및 access token을 발급받고, 백엔드에 요청을 보낼 때 카카오에서 받은 사용자 정보를 JWT 토큰으로 암호화하여 토큰을 활용해 현재 유저를 식별하도록 하였습니다. 일반 회원가입/로그인을 놔두고 왜 소셜로그인으로만 했는지 처음 보시는 분들은 궁금해 하실 수도 있을 것 같습니다. 만약 실제로 마켓에 배포를 하게 된다면 개인정보를 함부로 다루어서는 안됩니다.(진짜 철컹철컹 할 수도 있음...) 일반 .. 2021. 11. 5.
AWS Elastic Beanstalk으로 개발서버를 구축해본 이야기 안녕하세요 :) 제인입니다. 현재 디자이너, 프론트엔드 분들과 함께 사이드 프로젝트를 진행하고 있는데요, 백엔드 포지션이다 보니 아무래도 같은 개발자인 프론트엔드 분들과 이야기할 시간이 많습니다. 프론트엔드 분들이 좀 더 원활하게 백엔드와 협업하기 위해서 Swagger는 거의 필수로 가져가고 있는 기능인데요, 얼마 남지 않은 개발시간과 문서정리 시간이 살짝 부족할 것 같아 우선적으로 개발서버를 띄워 보다 편하게 스웨거에 접근할 수 있도록 구축하기로 결정했습니다. Elastic Beanstalk & Github Actions CD 저희는 최종적으로 AWS EC2가 아닌 Beanstalk을 이용하기로 했는데요, EC2/RDS/S3를 한꺼번에 같이 운영할 수 있고, 트래픽 5만 미만은 추가적인 요금을 물지 않.. 2021. 10. 13.
반응형