본문 바로가기

분류 전체보기10

[WebLogic] 설치 및 기동 0. 참고 weblogic을 사용할 별도의 계정 생성해서 사용 # root 로그인 $ su - root # weblogic 계정 생성 [원하는 이름으로 만들면됨] $ adduser weblogic $ su - weblogic OpenJDK가 아닌 Oracle JDK를 이용해야만 설치가 가능하다. https://www.oracle.com/java/technologies/downloads/ 자바가 여러개 설치되어있다면 update-alternatives 명령어를 사용해서 OS레벨의 jdk를 변경해주거나 ~/.bash_profile에서 JAVA_HOME을 제대로 잡아주면된다. https://kimdia200.tistory.com/3 [Linux 명령어] update-alternatives 손쉬운 자바 버전 변.. 2023. 9. 19.
메모리 덤프(dump) 분석 [ jps, jmap, jhat ] JAVA 어플리케이션을 구동할때 메모리 사용량은 중요하다 static 메모리를 필요 이상으로 많이 사용하거나 힙메모리의 사용량이 이상하게 점점증가해서 메모리 초과가 발생하는 등 메모리 사용량의 이상 동작이 느껴질때는 메모리 덤프를 떠서 직접 확인해보는게 가장 좋다. 물론 더 유용한 도구들도 많겠지만 java-jdk가 깔려있다면 누구나 설치되어있는 가장 기본적인 툴을 사용 할 줄 알아야 추후 어떤 환경에서도 덤프 기능을 원활히 사용 할 수 있을것 같아 jps, jmap, jhat을 사용하려 한다. 1. jps 명령어 유닉스의 명령어중 'ps'는 현재 실행되고 있는 프로세스들을 표시하는 명령어인데 'jps'명령어는 현재 실행되고있는 JVM 프로세스를 표시해준다. kys@DESKTOP-7JHK5HR  ~ .. 2022. 5. 16.
[알고리즘] Sliding Window Sliding Window 일정범위(Window 창문)를 움직여서(Sliding) 원하는 값을 추출하는 알고리즘 투포인터 알고리즘과 동일하게 시간복잡도 O(n^2)의 알고리즘을 O(n)으로 바꾸는 알고리즘 예제 - 연속 최고 매출 찾기 사업자가 자신의 매출을 매일 n일 동안 기록하고 m일 연속 매출의 최댓값을 찾아보자 int n = 10 //10일간의 매출기록 int k = 3 // 연속 일자 3 //n=10 길이의 배열을 임의로 생성 int[] arr = {10, 9, 8 ,6, 4, 5, 10, 16, 9, 10}; int k = 3; int max = Integer.MIN_VALUE; int sum = 0; for(int i=0; i 2022. 3. 30.
[알고리즘] 투포인터 투포인터 알고리즘 1. 투포인터 알고리즘은 두개의 포인터를 기준으로 검색을 하며 원하는 값을 찾는 알고리즘이다. 2. 반드시 검색을 하는 목록은 정렬이 이뤄져 있어야 한다. 3. O(n^2) 의 시간복잡도를 O(n)으로 작업 할 수 있어서 소요 시간을 획기적으로 단축 할 수 있다. 예제 - 두배열의 공통된 값을 찾기 int[] arr1 = {1, 4, 6, 7, 8, 10} int[] arr2 = {2, 4, 5, 8, 9} 위와같은 순차정렬된 두개의 배열이 존재 할 때. 공통된 값을 추출하는 알고리즘을 작성해보자. 단순 중첩for문을 사용한 코드는 아래와 같다. int[] arr1 = {1, 4, 6, 7, 8, 10} int[] arr2 = {2, 4, 5, 8, 9} List list = new A.. 2022. 3. 30.
[JEUS] 콘솔 사용법, 서버추가, 배포 0. JEUS 8 Console Documents https://technet.tmaxsoft.com/upload/download/online/jeus/pver-20170202-000001/reference-book/ch04.html#cmd_add-data-sources-to-server 제4장 콘솔 툴 4.2.8.26. remove-response-header 웹 엔진의 Response Header 설정을 삭제한다. 삭제되는 Response Header는 대소문자를 구별하지 않는다. 단, XML에만 반영하며 실제로 서비스에 적용하려면 서버를 재시작해야 한 technet.tmaxsoft.com 1. JEUS 콘솔 접속법 ## PATH 환경변수로 $JEUS_HOME/bin 경로가 잡혀있다면 바로 사용 가능.. 2022. 3. 28.
[JEUS] 설치 및 기동 0. 설치환경 Linux / JDK 1.8 linux에서 jeus 라는 계정을 새로 생성하여 진행함 /etc/hosts 파일도 해당 컨테이너의 hostname 을 입력해줘야함 # root 로그인 $ su - root # hostname 확인 $ hostname ec2-user # hostname 변경 $ hostnamectl set-hostname kys $ hostname kys # /etc/hosts 파일에 hostname, ip 추가 $ vi /etc/hosts -------------------------------------------------- (위의 기본값 형식 따라서) 111.111.111.111 kys -----------------------------------------------.. 2022. 3. 24.
[Linux 명령어] su / su - / sudo 리눅스 사용자 전환,변경 명령어 su (Switch User) : 쉘 사용 유저 변경 -c : 쉘을 실행 하지 않고 주어진 명령만 수행 -s : 지정된 쉘로 유저 변경 -, -l : 변경될 사용자의 환경 변수까지 적용하여 로그인, pwd위치도 홈디렉토리 sudo (Super User DO) : 계정을 바꾸지 않고 Root계정의 권한으로 명령어 1회 실행, 비밀번호 요구 설명 리눅스에서 실행권한에 따라서 해당 작업을 하지 못하는 경우가 존재한다. 따라서 권한을 갖고 있는 유저로 로그인 하거나 권한을 빌려서 작업을 하는 경우가 있는데 위의 두 명령어는 그 때 사용하는 명령어 이다 sudo 명령어의 경우 간단하게 뒤에 실행할 명령어를 root의 권한으로 실행하는것으로 특이한 점은 없고 실행히 비밀번호를 요구한다는 점만 기억하면 좋을것.. 2022. 3. 16.
[Linux 명령어] CentOS / Ubuntu 방화벽 설정 (firewalld, ufw) CentOS 부팅시 방화벽 서비스 등록/해제 # 서비스 등록 $ sudo systemctl enable firewalld # 서비스 해제 $ sudo systemctl disable firewalld 방화벽 서비스 실행/중지 # 서비스 실행 $ sudo systemctl start firewalld # 서비스 중지 $ sudo systemctl stop firewalld 방화벽에 등록된 포트 확인 / zone확인 $ sudo firewall-cmd --list-ports $ sudo firewall-cmd --get-default-zone public zone은 aws에서 보안그룹과 같은 역할을 할 수 있다고 생각하면 된다. 즉, 방화벽 설정을 한곳에 묶어두고 일괄 변경 할 수 있다는 얘기. 방화벽에 포.. 2022. 3. 15.
[Linux 명령어] update-alternatives 손쉬운 자바 버전 변경 목적 리눅스에 java를 여러 버전 설치했을 경우 손쉽게 사용하는 버전을 교체하기 위해 사용하는 명령어 [CentOS의 yum 패키지 매니저를 통해 java-1.8, java11 두 개를 설치하였습니다.] 자바 버전 확인 $ java -version openjdk version "1.8.0_312" OpenJDK Runtime Environment (build 1.8.0_312-b07) OpenJDK 64-Bit Server VM (build 25.312-b07, mixed mode) $ javac -version javac 1.8.0_312 자바 설치 위치 확인 ##JAVA 설치경로 확인 $ which java /usr/bin/java $ ls -al /usr/bin/java /usr/bin/java .. 2022. 3. 15.
Scanner 클래스 사용법 java.util.Scanner Scanner는 보조 입력 스트림으로 생성자를 사용할 때 파라미터로 메인이 되는 inputStream을 넣어 사용한다. 주료 키보드 입력을 받을 때 스캐너를 많이 사용하는데 System.in(InputStream)을 넣어 사용한다. //Scanner = 보조 입력 스트림, System.in = 메인 입력 스트림 Scanner sc = new Scanner(System.in); //next계열 String next = sc.next(); String nextInt = sc.nextInt(); String nextDouble = sc.nextDouble(); String nextBoolean = sc.nextBoolean(); //nextLine계열 String nextLin.. 2021. 9. 14.