[JEUS] 웹 애플리케이션 WAR 배포
2022. 8. 2. 20:12
WAS/JEUS
서버 생성 및 실행 Link : https://gomban.tistory.com/16 방법1. 웹 콘솔을 이용한 Deploy Applications > deploy - 애플리케이션 고유 ID 입력 - 배포할 웹 애플리케이션 파일 선택 - 웹 애플리케이션 파일 타입 선택 - Running 중인 배포할 서버 선택 - Context 의 Root 경로 입력 웹 어플리케이션 배포 확인 http://localhost:8888/test (매핑을 안해줘서 뒤에 jsp 경로 직접 침) 방법2. 수동 배포 *WebAdmin 이 가능하다면(JEUS 7.0 이상) 권장하지 않음. 1. 관리 콘솔 접속 shell > jeusadmin -u administrator -p 패스워드 2. 서버 생성 shell > add-s..
[JEUS] 서버 인스턴스 생성 및 실행
2022. 8. 2. 20:07
WAS/JEUS
JEUS 로 WAR ( Web Application aRchive ) 배포에 대해 다룹니다. JEUS 서버 설치는 아래 링크 참조 Link : https://gomban.tistory.com/15 Node Manager 정의 원격 머신에 있는 서버도 DAS 를 통해 기동시킬 수 있다. DAS가 기동된 상태에서 도메인에 속하는 모든 MS, 클러스터를 기동시킬 수 있다. 노드 매니저를 이용하지 않을 경우 서버 스크립트를 직접 실행시켜줘야 한다. 역할 서버를 lock 시킬 파일을 생성하여 FILE LOCK 획득 원격 서버의 기동 / 정지 / 재기동 ( 서버 다운 감지 시 자동 재기동 ) 실행한 서버에 프로세스 ID, state 기록 .properties 에 username, password, dasurl 정보..
[JEUS] JEUS 8.0 설치 + Eclipse 연동
2022. 8. 2. 20:03
WAS/JEUS
파일 목록 JEUS 8.0 Eclipse 4.23 ( 4.16 도 가능 | 대다수 상용 WAS plugin 들은 4.16 까지 지원하므로 4.16 추천 ) JEUS Eclips Plugin for JEUS 8 JDK 1.8u331 *JEUS 최신 버전은 8.5이나 JEUS Eclipse Plugin이 JEUS 8.5를 지원하지 않음 (파일 구조가 다른거 같음) 에러 : Missing classpath entry C:\TmaxSoft\JEUS8_5\lib\system\xml_resource.jar *JDK 는 여러 버전이 설치되어 있을 경우 기본 버전을 1.8로 바꿔야함 이클립스에서 JDK 1.8로 설정만 바꿔봤으나 서버 실행조차 안돼서 환경변수 세팅으로 자바 기본 버전을 1.8로 바꾸니 실행됨 s..
[Tomcat] 웹 애플리케이션 배포
2022. 8. 2. 19:57
WAS/tomcat
Tomcat으로 WAR 파일 배포 파일 목록 Tomcat 9.0 Tomcat 10.0 이전 버전 호환 문제 Javax 에서 Jakarta로 넘어갔기 때문에 웹 애플리케이션을 Servlet 5.0 으로 변경, 클래스 호출 부분 javax => jakarta 로 변경 필요함 Tomcat_HOME\webapps 에 배포할 war 파일 넣기 기본 경로 : C:\Program Files\Apache Software Foundation\Tomcat 9.0\webapps Tomcat_HOME\conf 의 server.xml 수정 태그 안에 태그 추가 *해당 태그 작성하지 않아도 webapps 폴더에 있는 웹 애플리케이션 파일을 톰캣이 자동으로 Deploy 해줌. 이 때 Context-name : 파일명 /..
[TOMCAT] TOMCAT CATALINA
2022. 8. 2. 19:55
WAS/tomcat
CATALINA Tomcat의 과거 코드명 WAS Tomcat의 코어 컴포넌트 $CATALINA_HOME Tomcat 설치의 홈 디렉토리 $CATALINA_BASE - Tomcat 구동 시 띄워지게 되는 웹서비스 인스턴스의 베이스 디렉토리 - conf, logs, temp, webapps, work 디렉토리 등을 포함하는 홈 디렉토리를 의미 - Tomcat 설치 시 $CATALINA_BASE 내에 설정들로 구동되어 웹 서비스를 제공한다 디렉토리 명 설명 bin 톰캣 실행 시 사용하는 스크립트 디렉토리 conf 웹 어플리케이션에 필요한 설정 파일 디렉토리 lib 톰캣에서 사용하는 라이브러리 디렉토리 logs 로그 디렉토리 temp 임시 파일 디렉토리 webapps 웹 어플리케이션 배포 디렉토리 기본적으로 ..
[PHP] PHP
2022. 8. 2. 19:53
PHP
자주 쓰질 않다보니 안까먹으려고 제 입맛대로 기록해둔 곳 입니다. CTRL - F 로 찾기 외부 파일을 포함하는 함수 include / include_once 같은 파일 여러 번 포함 가능 / 한번만 가능 포함할 파일이 없어도 다음 코드 실행 require / require_once 같은 파일 여러 번 포함 가능 / 한번만 가능 포함할 파일이 없으면 다음 코드 실행하지 않음 변수 선언 $변수이름 = 초깃값; $기호 사용하여 선언 변수를 선언할 때 타입을 명시하지 않음 $변수이름 = array( , ); 배열 선언 $변수이름 = array( “key” => “value” ) ; 배열의 키/값 선언 global $변수이름 php에서 전역변수를 사용하는 방법 상위 클래스에서 선언된 변수 $a = “a”;를..
[JAVA-Spring] 가변적인 Parameter 처리
2022. 8. 2. 19:34
Back-End/Java & Spring
웹에서 보낸 Request Parameter를 Controller 에서 처리해야 하는데 같은 로직에 다양한 VO / DTO 를 넣어줘야 할 경우가 있다. VO/DTO 마다 Controller를 새로 구현하여 데이터를 수신받는 것은 중복된 코드가 많아지고 유지보수도 귀찮아진다. 필드상에 VO/DTO를 선언하지 않고 하나의 Controller 에서 데이터를 수신할 수 있는 방법 2가지와 수신받은 데이터를 VO / DTO에 매핑시킬 수 있게 ObjectMapper 라이브러리를 사용한 방식에 대해 작성하였다. 매핑시킬 VO @Data public class Person { private int age; private String name; private String birth; } 서버로 데이터 전송 모..
[JAVA] Log4j
2022. 8. 2. 19:28
Back-End/Java & Spring
Logging Logging은 프로그램 실행 중 정보(성공, 실패, 시간, 횟수 등)를 기록하는 행위로 System.out.println() 또한 logging의 일종이다. System.out.println() 대부분의 개발자들은 로그를 찍기 위해 System.out.println() 메서드를 사용한 시스템 로그를 많이 사용한다. 이 방법은 가장 간단하고 쉽긴 하지만 서비스 운영중엔 확인이 어렵고 성능에 영향도 많이 준다. 파일이나 콘솔에 로그를 남길 경우 내용이 완전히 프린트되거나 저장될 때까지, 이후 프린트하려는 작업은 대기할 수 밖에 없다. 이 대기 시간은 또한 시스템의 성능에 의존하게 된다. 더 큰 문제는 보통 개발을 하는 사람과 서비스를 운영하는 사람은 다르기 때문에 System.out.pr..
[JAVA] JNDI( Java Naming and Directory Interface )
2022. 8. 2. 19:21
Back-End/Java & Spring
JNDI( Java Naming and Directory Interface ) 정의 디렉터리 서비스에서 제공하는 데이터 및 객체를 발견( discover ) 하고 참고( lookup ) 하기 위한 자바 API 목적 데이터베이스 커넥션을 자바 웹 애플리케이션이 아닌 WAS에서 데이터베이스 커넥션을 생성하고 풀로 관리하기 위함 WAS 의 설정파일 안에 JNDI 를 입력해놓으면 웹 애플리케이션은 JNDI 만 호출하면 DB 접속이 가능하다. 사용이유 개발을 하는 사람과 실제 서비스를 운영하는 사람은 다른 경우가 많기 때문에 소스 레벨에서 하드코딩 되어있는 것 보단 WAS에서 설정되어 있는 것을 선호한다. 보통 WAS에 서버를 여러개 생성해서 웹 애플리케이션을 배포하기 때문에 WAS 안에서 한번에 설정해주는 것이..
[JAVA] Apach Axiom API (XML Parser)
2022. 8. 2. 19:15
Back-End/Java & Spring
Apach Axiom VS Java DOM 성능 비교 JAVA 의 xml parser 중 하나 구조 JDOM 전체 파일을 읽어와서 Tree 형식으로 구조화해서 메모리에 올려놓기 때문에 메모리 관리 면에서 불리 한번 파싱하면 계속 조회/수정이 가능한 장점이 있음 AXIOM Tree 구조가 아닌 StAX API 를 기반으로 직접 접근하는 방식으로 메모리 관리에서 유리 조회/수정이 필요할 때 마다 계속 파싱해야하는 단점이 있음 성능 비교 ( y축 : 처리량 / x축 : 문서 크기 ) 테스트1 : 문서 전체를 파싱 문서 전체를 파싱하는건 Axiom 장점중 하나인 원하는 Element 만 파싱할 수 있다는 점을 발휘하지 못한다. 테스트2 : 각 용량별 XML 파일에서 67개의 Element 만 파싱 XML 파일..