Docker를 통해서 Elasticsearch5를 설치할 때 max virtual memory areas vm.max_map_count [65530] likely too low, increase to at least [262144] 와 같은 에러가 날 때 리눅스 계열의 OS라면 아래와 같이 설정해주면 되는데 sudo sysctl -w vm.max_map_count=262144 Windows에서 Docker Toolbox를 사용한다면 Docker 접속하여 아래 명령어를 차례로 작성해주면 된다. docker-machine ssh # (Docker에서 Oracle VM에 설치되어 있는 Docker에 접속하는 명령어 이다.) sudo sysctl -w vm.max_map_count=262144 단 위에 있는 명..
- 클래스 경로(Class Path) 컴파일 하거나 프로그램을 실행할 때 읽어올 클래스의 위치를 나열해 놓은 것이다. 클래스 경로를 나눌 때 두 가지로 나누는데 컴파일할 때는 빌드 타임 클래스 경로이고 실행할 때는 런 타임 클래스 경로이다. 빌드 타임 클래스 경로는 빌드할 때 필요한 프로그램의 코드와 프로그램에서 참조하고 있는 코드 즉 빌드하기 위해 필요한 클래스들의 경로가 들어있다. 예를 들어 인터페이스와 인터페이스를 구현한 클래스가 있다면 인터페이스가 빌드 타임 클래스 경로에 있어야 한다. 런 타임 클래스 경로는 프로그램을 실행할 때 사용되는 클래스와 프로그램을 참조하는 클래스들의 경로가 들어 있다. 예를 들어 인터페이스와 인터페이스를 구현한 클래스가 있다면 실제 구현된 코드가 런 타임 클래스 경로에..
불변 객체란 한번 생성된 후 변경할 수 없는 객체를 뜻하고 변경할 수 없기 때문에 멀티스레드 환경에서 마음 놓고 사용할 수 있다는 장점을 가졌다. 불변 객체를 만드는 방법은 아래와 같다. 1. 모든 인스턴스 변수는 private final키워드를 사용한다. 2. 인스턴스 변수를 수정하는 메서드를 제공하지 않는다. 3. 만약 객체를 return 해야 하는 경우가 생긴다면 새로운 객체를 생성하여 return 해준다. 4. 상속할 수 없게 한다. 만약 상속이 가능하다면 sub class를 통해 불변 상태가 깨질 수 있다. ( ex > public final class className {} ) 5. 인스턴스 변수로 불변 객체 또는 기본형 타입을 변수로 사용해야 한다. 가변 객체를 사용한다면 방어적 복사본을 만..