Course Outline
Java 플랫폼 소개
- JVM, JRE 및 JDK
- Java SE 대 EE
- 경량 서블릿/JSP 컨테이너인 Apache Tomcat 및 이것이 WebLogic, WebSphere, JBoss 및 GlassFish와 같은 본격적인 Java EE 애플리케이션 서버와 어떻게 다른지
Tomcat에 설치된 애플리케이션 아키텍처
- 클래스와 JAR 이해
- 서블릿
- JSP
- Java콩
- JNDI 및 데이터 소스
- 애플리케이션이 다른 서버(웹 서비스, EJB 등)에서 호출할 수 있는 리소스
설치 중 Tomcat
- Java 런타임 환경(JRE) 설치
- 성능을 위해 JRE 조정
- 실제 Tomcat 설치 수행
Tomcat 설치 디렉터리 검사
- 큰 상자
- conf
- lib
- 로그
- 온도
- 웹앱
- 일하다
구성 Tomcat
- server.xml(자세한 연습)
- web.xml
- context.xml
Java EE 애플리케이션 배포
- 배포용 JAR 패키징 Tomcat
- 배포용 WAR 패키징 Tomcat
- 애플리케이션 서버 중립적 구성과 애플리케이션 서버별 구성 비교
- Tomcat에서는 지원되지 않지만 다른 Java EE 애플리케이션 서버에서는 지원되는 EAR 및 기타 아카이브 유형 개요
- 버전 관리 Java EE 애플리케이션
- 업데이트된 애플리케이션 배포 관리
Tomcat 밸브
- Access로그 및 FastCommonAccess로그
- 요청필터밸브
- SingleSignOnValve(요청 시)
- RequestDumperValve(요청에 따라)
메모리 관리 및 JMX 모니터링
- Java 가비지 컬렉션 이해
- JAVA_OPTS, JMX 및 JConsole을 사용하여 메모리 사용량 모니터링 및 조정 Tomcat
- Tomcat의 JVM 메모리 힙 크기 조정
- JMX 및 JConsole을 사용하여 Tomcat의 MBean을 통해 Tomcat 구성
- Tomcat을 다시 시작하지 않고 "즉시" JMX를 통해 Tomcat의 구성 업데이트
- JMeter을 사용한 부하 테스트
- VisualVM(JDK 6에 내장된 새로운 모니터링 도구) 및 PSI 프로브 사용
- Ant를 통해 JMX MBean 제어하기
로깅 및 문제 해결
- JULI 로깅
- log4j 로깅
- 예외 및 스레드 덤프 이해
- Tomcat에서 발생하는 오류 해결
- 배포된 애플리케이션에서 생성된 오류 문제 해결
- Tomcat 이외의 응용 프로그램 서버에 적용 가능한 문제 해결 전략
Tomcat 애플리케이션과 데이터베이스 연결
- 클래식 JDBC 접근 방식
- 더 나은 접근 방식: JNDI 리소스
- 데이터베이스 연결 풀 설정 및 모니터링
보안
- 파일 시스템 보안
- Java 보안 관리자
- 영역, 인증 및 권한 부여
- SSL
Java VM 및 Tomcat 성능 튜닝 전략
- 추가 JVM 튜닝 팁
- 병렬 가비지 수집 활성화
- 기본 커넥터 구축
- 불필요한 애플리케이션 비활성화/제거
- 들어오는 연결 및 데이터베이스 연결 풀 조정
- Jasper 개발 모드 끄기
- JSP 사전 컴파일
- 서블릿 미리 로드
- 애플리케이션별 튜닝 제안
- 다른 애플리케이션 서버에서 사용 가능한 튜닝 레버
The World Beyond Tomcat: 이해 Java EE 애플리케이션
- Java Tomcat에서 지원되지 않는 EE API에 대한 설명: EJB, JMS 및 기타 여러 API
- 타사 애플리케이션 프레임워크 개요(프레임워크 정의 및 관리자가 알아야 할 사항): Spring, Struts 1/Struts 2, JSF(ICEfaces, RichFaces 등에 대한 논의 포함)
- 데이터 계층 프레임워크 및 관리자가 알아야 할 사항(Hibernate, JPA 등)
- Tomcat에는 없지만 WebLogic, WebSphere 및 JBoss에서 제공하는 기능
Tomcat 기타 기능
- 메모리 누수 방지 및 감지
- Servlet 3.0, JSP 2.2 및 EL 2.2 지원(및 Tomcat 관리자에 대한 실질적인 의미)
- 사이트 간 요청 위조 방지(및 구성 방법)
- Tomcat 7의 새로운 세션 관리 기능이 세션 고정 공격을 방지하는 방법
- 별칭 지원(정적 콘텐츠를 WAR 파일 외부에 저장할 수 있음)
Apache httpd 또는 IIS 뒤에서 Tomcat 실행 [이 섹션은 선택한 웹 서버 및 커넥터 모듈을 사용하여 설명됩니다]
- Apache httpd나 IIS 뒤에서 Tomcat을 실행하는 이유는 무엇입니까?
- mod_jk(Apache 또는 Tomcat) 또는 mod_proxy_ajp 및 mod_proxy_balancer(Apache 2.2 이상에만 해당) 설치
- AJP를 통해 Tomcat에 대한 트래픽 프록시
- Tomcat에 대한 웹 서버의 연결 상태 모니터링
- mod_jk 또는 mod_proxy_balancer를 통한 로드 밸런싱 Tomcat
Tomcat 클러스터링
- mod_jk(Apache 또는 IIS) 또는 mod_proxy_balancer(Apache 2.2 이상만 해당)를 로드 밸런서로 구성
- 소프트웨어 로드 밸런싱의 대안인 하드웨어 로드 밸런싱
- 고정 세션
- 공유 세션 백엔드 구성
- FileStore/JDBCStore(이전 접근 방식, 일반적으로 권장되지 않음)
- <Cluster> 태그 사용
- 배포 가능하도록 애플리케이션 구성
- 장애 조치 설정 및 테스트
Requirements
없음
회원 평가 (7)
Most I liked Folios fantastic skills - knowledge of Tomcat, ability to structure the sessions and to explain the subjects.
Vita Byrdal
Course - Apache Tomcat and Java EE Administration
That the trainer meets the expectations. That the trainer is knowledgeable, expert and fast.
Lars HL
Course - Apache Tomcat and Java EE Administration
The content of the course is good. It covers most of the important topics which we use in our day to day activities.
Prem Nandivada
Course - Apache Tomcat and Java EE Administration
The training was very relevant to our work. And provided us with detailed overview and hands-on experience with Apache Tomcat technology.
Anton HIkov
Course - Apache Tomcat and Java EE Administration
I liked it was interesting with lot of hot subject, absolutely can understand better the product.
Annamaria Vilner
Course - Apache Tomcat and Java EE Administration
I was benefit from the materials, labs and extensive knowledge shown by the trainer.
Richard Hennessy
Course - Apache Tomcat and Java EE Administration
The trainers deep understanding of the subject matter.