윤개발

게시판 많아요 프로젝트 본문

프로젝트/게시판많아요

게시판 많아요 프로젝트

DEV_SJ 2021. 4. 2. 14:50

Spring Security에 대해 학습하고 로그인, 사용자 관리 웹어플리케이션 개발한다.

프로젝트 개요

게시판을 만드는 프로젝트는 CRUD 기능을 구현하기 위한 기본이 되는 프로젝트라 할 수 있다.

이런 기본적인 게시판에 스프링 시큐리티를 적용해 살을 덧붙이고 싶다는 생각이 들었다.

게시판을 만드는 "구현"에 더해 게시판별로 권한을 처리한다.

또한 동시 접속 서비스 이용자가 1만명이라는 가정하에 "성능"의 측면에서 깊게 고민하며 개발할 예정이다.


구현 목표

구현목표는 아래와 같이 3가지로 정의하였다.

1. Spring Security를 이용하여 여러 방식으로 로그인을 구현한다. (Security 학습)

  • Session
  • JWT Token
  • OAuth 2.0 (추후 예정)

 

2. 권한 그룹을 만들고 사용자를 관리 할 수 있는 기능을 구현한다.

  • 사용자는 권한을 가진 그룹에 속한다.
  • 그룹별로 다른 권한을 가지고 있으며 새로운 그룹을 추가/제거/수정 할 수 있다.
  • 메뉴마다 그룹에 대한 권한을 부여할 수 있다.

 

3.효율적인 성능의 권한 설정

  • 캐시, Redis를 이용하여 게시판 로딩속도를 최적화한다.
  • 권한처리에 대한 로직을 처리 시간, 이용량을 비교해보며 최적의 로직으로 설정한다.

개발 환경

  • Mac OS
  • Front : Vue.js
  • Backend: Spring Boot(v2.4.4)
  • lib : Spring-Security, jpa, lombok
  • DB : MySQL(8.0.21), redis
  • Tool : Intelij Ultimate

화면구성

 

 

Oven 링크 : ovenapp.io/project/MD4GA9a0cO9FVZjUwIcUnnFzcAxmWSW5#hWdOJ

 

Oven

 

ovenapp.io

 

Comments