본문 바로가기

전체 글

(129)
[Spring boot] Embedded Tomcat redis session clustering 서버 개발을 할때 여러 was에서 세션 정보를 공유해야할 경우가 있다. 이럴때 세션 저장소로 redis cache 를 많이 활용하게 되는데 Spring boot 내장 embedded tomcat에서는 어떻게 설정을 하면 되는지 확인해 본다. Tomcat cluster redis session 라이브러리는 아래 사이트에 가면 다운로드 받을 수 있다. https://github.com/ran-jit/tomcat-cluster-redis-session-manager/wiki 여러 버전이 있는데 제일 최근 버전인 4.0 버전을 사용해 보기로 한다. 다운로드 library maven project에 추가하기 위에서 다운로드 압축파일을 풀면 아래 파일들이 나온다. commons-pool2-2.6.2.jar jedi..
Embedded Redis 로 redis junit 작성하기 Backend 를 개발할때 Cache 서버로 Redis Memory Server를 많이 사용한다. 그렇다면 JUnit 테스트 코드 작성시에도 간단하게 Redis Server를 사용할 수 있을까? 아래 라이브러리 및 설정을 활용하여 JUnit시 test embedded redis를 활용할 수 있다. pom.xml org.springframework.boot spring-boot-starter-data-redis 2.7.4 it.ozimov embedded-redis 0.7.3 test 위 it.ozimov 의 상세 정보는 아래 릴리즈 사이트에 가서 살펴볼수 있다. https://github.com/ozimov/embedded-redis 라이브러리 다운로드 후 property 설정에 기본적인 테스트 Redi..
[Vue.js] Vue Cli 로 Vue3 시작하기 Vue3를 시작하기 전에 node.js가 설치되어 있어야 한다. NVM(Node Version Manager) 을 설치하면 node.js를 편리하게 설치, 관리 할수 있다. 다음 링크에 관련 내용을 작성해 두었다. https://kindloveit.tistory.com/106 node.js가 설치되었으면 Vue Cli(Command Line Interface)를 Global로 설치하도록 한다. $ npm install -g @vue/cli 참고로 Global로 설치를 하면 현재 Local이 아닌 시스템 전역 위치에 설치가 되는데 위치가 궁금할 때가 있다. Global로 설치시 아래 경로에서 설치가 된다. C:\Users\[MyUser]\AppData\Roaming\npm\node_modules 실제로 위..
kakao 로그인 (javascript) 카카오 로그인 구현은 여러방식중에 javascript 기반 구현을 살펴보고자 한다. https://developers.kakao.com/tool/demo/login/login 위 카카오 디벨로퍼의 js sdk 데모를 보면 아래와 같이 샘플 코드를 제공한다. 위 코드를 간략하게 분석해보면 화면단에서 카카오 로그인 버튼을 누르면 아래 메소드가 실행되고 카카오 Auth서버로 이동하여 로그인 화면으로 진입하게 된다. function loginWithKakao() { Kakao.Auth.authorize({ redirectUri: 'https://developers.kakao.com/tool/demo/oauth', }); } 여기서 redirectUri가 로그인 후 인가 Code를 받을 주소를 입력한다. 로그인 ..
[Node.js] NVM으로 Node.js 버전 여러개 사용하기 (Windows) 가끔 여러가지 웹 어플리케이션을 하나의 PC에서 개발하다보면 Node 버전이 여러개 필요할 경우가 있다. 억지로 하나의 버전을 맞추자니 어느 한쪽의 수정량이 많거나 수정이 안될수 도 있다. 그럴때는 NVM (Node Version Manager) tool을 사용하여 원하는 시점에 원하는 node 버전으로 switching 을 할 수가 있다. NVM(Windows 버전)은 아래 사이트에서 다운로드 가능하다. https://github.com/coreybutler/nvm-windows/releases/tag/1.1.10 사이트에 진입 후 윈도우즈 설치 바이너리를 다운로드 후에 설치한다. 이미 Node.js가 설치되어 있으면 NVM 설치중에 이미 설치된 버전을 Control 할 것인지를 물어본다. 예를 선택하..
DBeaver 설치 및 DB 연결 DB 접속 Client 툴로 Oracle, Postgresql, MariaDB 등 현존하는 대부분의 DB 연결을 지원하는 DBeaver 툴을 설치해보고 DB 연결은 어떻게 설정하는지 확인해보고자 한다. 우선 공식 설치 파일은 아래 페이지로 가서 다운로드 받는다. https://dbeaver.io/download 원하는 플랫폼의 인스톨러를 다운로드 받고 설치한다. (기본 설정값으로 설치 진행. Next 계속 입력) Postgresql DB 연결 DBeaver 툴 설치 후 Tool 상에서 Postgresql DB 연결을 위해 jdbc 드라이버 설정을 해준다. 우선 Postgresql 용 jdbc 드라이버를 다운로드 받는다. https://jdbc.postgresql.org/download 앞서 설치한 DBe..
Tomcat redis session cluster 설정 웹 개발 시 이중화 등의 HA 구성을 할때나 다른 서버와의 인증 정보를 공유 하고자 할 때는 Tomcat 간에 session cluster 기능을 통해 세션 동기화를 할 수 있다. 이때 공용 세션 저장소로 redis 메모리 DB를 활용할 수 있고 아래 리포지터리에서 제공하는 라이브러를 가지고 구현을 할 수 있다. https://github.com/ran-jit/tomcat-cluster-redis-session-manager/wiki 현재 사용하는 Tomcat이 버전이 9.0.65 대로 위 tomcat-cluster-redis-session 라이브러리 중 tomcat-cluster-redis-session-manager-2.0.4 버전을 사용해 보기로 했다. 다운로드를 하고 압축을 풀면 아래 4가지 라이..
[Backend] Konga api gateway admin 활용 이전 포스트에서는 Kong api gateway opensouce버전 및 konga admin web 서버를 설치하는것을 알아봤다. 이번 포스트에서는 실제로 konga admin에서 service 및 route를 설정해보고 postman 으로 api gateway를 거쳐 실제 backend까지 잘 도달하는지 확인해 보고자 한다. 우선 localhost:8080으로 backend api 서버를 띄어두고 /api/v1/users란 api 를 테스트 api로 삼았다. 아래는 우선 kong에서 최종적으로 도달할 backend 주소를 입력하고 service url을 등록한다. 적절한 name을 입력하고 host에 실제 backend 주소, port에 실제 backend service port 그리고 service..