
안녕하세요. 스프링프레임워크&부트 aws redis 연동(로컬에서 실서버까지) 3편입니다. 이전 포스팅에서 로컬환경에서 세션정보를 레디스 로컬 서버에 옮겨 관리 하게끔 했다면 이번 포스팅에서 실서버에서 작업을 해보도록 하겠습니다. 이전 포스팅을 안 보신 분들은 이전 포슽팅을 꼭 따라하신 후 이번 포스팅으 따라하시기 바랍니다. https://developer111.tistory.com/73 스프링 프레임워크 redis 연동(로컬에서 실서버까지)[1] 안녕하세요. 다중서버 환경에서 세션이 was 안에서 관리가 되면 세션 간의 공유가 되지 않아 특정 서버가 다운 되었을때 해당 서버의 사용자들은 다른 서버로 접속경로가 바뀌어도 로그인을 다 developer111.tistory.com 작업환경 aws ec2 am..

안녕하세요. 오늘은 스프링프레임워크&부트 redis 연동(로컬에서 실서버까지) 2편입니다. 지난번 포스팅에서 스프링부트를 통해 간단히 redis도 사용해보고 세션정보가 redis 서버로 전달됨을 확인했는데요. 이번 포스팅에서는 좀더 제대로 구현하고 테스트 하기 위해 스프링 시큐리티를 통해 로그인 인증 권한 관리가 되고 있는 프로젝트에서 세션정보 전달 뿐만 아니라 세션 관리까지 되는지 확인해보겠습니다. 로컬 환경 윈도우 OS 스프링 프레임워크 4.3.2 스프링 시큐리티 4.1.3 Redis-x64-3.2.100 mysql 5.5.2 빌드 툴 이클립스 레디스 설치 및 사용법은 이전 포스팅을 참조해주세요. https://developer111.tistory.com/72 스프링부트 레디스 연동하기(레디스 서버에..

스프링프레임워크&부트 redis 연동(로컬에서 실서버까지)[1]스프링프레임워크&부트 redis 연동(로컬에서 실서버까지)[2]스프링프레임워크&부트 redis 연동(로컬에서 실서버까지)[3] 안녕하세요. 다중서버 환경에서 세션이 was 안에서 관리가 되면 세션 간의 공유가 되지 않아 특정 서버가 다운 되었을때 해당 서버의 사용자들은 다른 서버로 접속경로가 바뀌어도 로그인을 다시 해야하는 불편함이 있습니다. 이를 위해 스프링 프로젝트에서 세션정보를 redis에 보내고 세션을 redis서버에서 관리하도록 해보겠습니다. 로컬에서 실서버까지 작업을 할 것이며 정확한 테스트를 위해 실제 로그인 인증권한 관리가 되고 있는 프로젝트에서도 진행을 할 것입니다. 내용이 길어 총 세편에 걸쳐 설명을 할 것이며 ..

스프링부트를 aws ec2 리눅스 서버에 배포해보겠습니다. 배포하기전 미리 준비해야할 사항이 있는데 배포할 프로젝트를 git에 push 하여주세요. 그리고 ec2 서버도 미리 만들어놔주세요. 셋팅은 같이 할 것입니다. 목차는 아래와 같습니다. ec2 서버에 자바 설치 ec2 서버에 깃 설치 깃으로 리포지터리 클론 배포 ec2 서버에 자바 설치 자신의 스프링부트 자바버전에 맞게 자바를 다운 받겠습니다. 먼저 다운 가능한 자바 버전 목록을 보겠습니다. (참고로 root로 로그인해주세요. 자바 다운 및 환경설정은 루트권한에서만 가능합니다.) yum list java*jdk-devel 제 프로젝트는 자바 8 버전에 맞춰져 있어서 8버전으로 다운을 받겠습니다. yum install java-1.8.0-openjd..

안녕하세요. 오늘은 RDS와 EC2를 연동해보도록 하겠습니다. RDS와 EC2를 연동하는 목적은 서버 인스턴스와 DB 인스턴스를 분리하여 사용하기 위한 목적으로 AWS를 사용하는 핵심 이유이기도 할 것입니다. 우리가 웹서버를 운용할때 DB를 운영하는 방법은 두가지가 있습니다. 첫번째, 서버 내에 DB를 설치하는 경우 서버 내에 DB를 설치하여 운영하는 방식은 초보자도 쉽게 관리할 수 있다는 장점이 있으며 AWS를 사용하는 경우 비용도 저렴하다는 장점이 있습니다. 허나 단점은 고가용성 있는 서버를 구축하기가 어렵다는 것입니다. 이에 대한 예시는 분리하여 사용하는 경우를 보면 더욱 이해하기 쉬울 것입니다. 서버와 DB를 분리하는 방식, 즉 RDS와 EC2를 연결하는 방식을 사용하며 위의 이미지처럼 하나의 서..
서버도 일종의 컴퓨터입니다. 일반 컴퓨터와 다르게 서버는 24시간 돌아가죠. 구체적으로 따지면 24시간이 아니라 서버를 시작하고 종료할때까지 쉬지않고 돌아가는거죠. 이럴 경우 서버에는 메모리가 쌓이게 됩니다. 조금 구체적으로 설명하면, 사용자들이 사용하고 이제는 사용하지 않는 자바의 객체들이 많이 있을것입니다. 예를 들어 내 웹사이트에 접속하고 웹사이트에서 나가더라도 접속자가 사용한 객체들은 여전히 남아 있습니다. 자바의 사용하지 않는 객체를 제거해주는 가비지컬렉터는 사용할 가능성이 낮다고 판단되는 객체를 제거합니다. 즉, 제거되지 않는 객체는 사용할 가능성이 있다라고 해석할 수 도 있으며 이는 사용중에 있다라고도 판단할수 있는거죠. 이렇게 객체들이 많이 쌓이면 메모리가 이 객체를 관리해야하기 때문에 서..

지난번 포스팅에서 원격지 서버에서 리모트 연결을 위한 설정을 하여 로컬서버에서 jconsole과 visualVM으로 접속을 하였습니다. developer111.tistory.com/35 ec2 리눅스 서버에 jconsole과 visualVM 원격접속 [1] (use jconsole and visualVM to remote connect ec2 linux server) 안녕하세요. 오늘은 ec2 리눅스 서버에 jconsole 원격 접속 방법을 알려드리겠습니다. 요즘 메모리 에러가 자주 나타나서 자바의 메모리를 공부하고 메모리 관리할수 있는 툴에 대해 알아보았는데 developer111.tistory.com 위의 포스팅과 연결되는 내용으로 이번 포스팅에서는 원격 접속 방법에 대해서는 다루지 않고 아이디 비밀..

안녕하세요. 오늘은 ec2 리눅스 서버에 jconsole 원격 접속 방법을 알려드리겠습니다. 요즘 메모리 에러가 자주 나타나서 자바의 메모리를 공부하고 메모리 관리할수 있는 툴에 대해 알아보았는데 jconsole과 visualVM이라는게 있었습니다. jconsole과 visualVM이 GUI형태로 메모리 사용량을 제공해주기 때문에 원격으로 접속만 할 수 있다면 굉장히 유용한 툴이 될 것 같았습니다. 몇일 동안 삽질을 반복하며 시도하였고 결국에는 다행히 원격접속에 성공하였습니다. 정말 많이 삽질했기때문에 제 경험을 토대로 하나부터 열까지 설정 하나하나 알려드리도록 하겠습니다. 우선 저의 환경을 알려드리겠습니다. 서버 OS : 아마존 리눅스2 WAS : tomcat7 java8 로컬 윈도우, 자바8 jcon..