본문 바로가기
반응형

전체 글32

JSP 컴파일과정 1. Webserver나 Servlet 엔진에서 클라이언트의 요청을 받게 됩니다. 2. JSP Handler(JSP Container Process)의 루틴을 거치면서 Servlet 객체존재여부와 파일변경여부를 확인 3. 변경되었다면 새로 source파일을 생성하고 compile과정을 거쳐 실행, 이미 로딩되어 있는데 변경처리되지 않았다면 기존에 존재하는 것을 이용 4. 로딩을 하지않았다면 처음부터 로딩을 시작하여 source파일을 만들고 compile과정을 거쳐 새로 실행 5. 다른 서블릿들도 Servlet Container에 적재하는 과정을 반복 2022. 8. 31.
이스트시큐리티 알약 공개용 패치오류(2022.08.31) 2022년 08월 30일자 이스트시큐리티의 대표적 제품인 알약에서 문제가 발생하였다. 알약 공개용 사용자 중 위 날짜를 기준으로 알약 자동업데이트 되었을 시 일부 화면 멈춤 현상이 있는 경우가 발생되었으며, 알약이 업데이트된 내용은 랜섬웨어 탐지 기능 고도화 적용 후, 랜섬웨어 탐지 기능 오작동으로 인한 것으로 확인되었다고 밝혔다. 복구방법은 아래와 같다. 1. 수동 조치툴 다운로드 가능한 경우 ① 수동 조치툴 다운로드 후 실행 2. 수동 조치툴 다운로드 불가능한 경우 ① PC 강제 재부팅 3번 시도하여 안전모드(네트워킹 사용) 진입 * PC 강제 재부팅 : Power Off 버튼 5초 이상 누름(3회 반복) ② 수동 조치툴 다운로드 후 실행 ③ 재부팅 *복구패치 다운로드 URL : https://adv.. 2022. 8. 31.
OutOfMemory 발생 시 문제해결 프로세스 java.lang.OutOfMemoryError: Java Heap Space 한정된 힙 영역에 대량의 데이터를 가져오는 행위 : sql조건 축소, 32비트->64비트 변경 후 힙 사이즈 증가 애플리케이션의 불필요한 행위 : 이미 가져온 데이터를 다른 객체로 복사해 사용하는 행위. 작은 힙 사이즈 : 애플리케이션의 수정과 데이터의 증가에 비해 작은 힙 메모리를 사용하는 경우 늘려줘야 한다. 메모리 leak : 지속적 참조객체로 인해 gc수행 시 제거되지 않는 현상으로 애플리케이션 수정이 필요. java.lang.OutOfMemoryError: PermGen space 펌 영역 부족 현상으로 적정한 값을 차지 못하는 경우 최솟값과 최댓값을 다르게 하여 gc로그를 통해 적정 값을 찾는다. 간혹 릭이 발생하는.. 2022. 8. 30.
WAS(Web Application Server)란? ◆ 웹 애플리케이션 서버(Web Application Server, WAS) : 인터넷 상에서 HTTP를 통해 사용자 컴퓨터나 장치에 애플리케이션을 수행해 주는 미들웨어(소프트웨어 엔진)이다. WAS는 동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 되며, 주로 DB서버와 같이 수행이 된다. WAS는 대부분이 자바 기반으로 주로 자바 EE 표준을 수용하고 있으나, 자바 기반이지만 자바 EE 표준을 따르지 않는 제품과 .NET이나 Citrix 기반인 비 자바 계열도 존재한다. ※ 3티어의 중간 계층으로 명칭되는 미들웨어는 Client와 Server 간의 통신이나 데이터 전달을 수행하는 SW를 상징하는데, 기업환경과 웹 환경에서 서비스를 제공할 수 있는 미들웨어 소프트웨어가 WAS이다.(=We.. 2022. 8. 30.
Class Loader Class Loader 클래스 로더는 상위로 부터 순서대로 부트스트랩(Bootstrap), 확장(Extensions), 시스템(System) 클래스로더가 순서대로 올라간다. 즉, 동일한 클래스가 여러 곳에 존재할 때 로딩되는 우선순위는 Bootstrap>Extensions>System Class Loader가 된다. 부트스트랩 클래스 로더까지 확인해도 없으면 요청받은 클래스 로더가 파일 시스템(CLASSPATH 등 기준)에서 해당 클래스를 찾는다. - 부트스트랩(Bootstrap) Class Loader : 자바 가상 머신이 실행될때 가장 먼저 실행되는 클래스 로더로, JAVA 실행에 필요한 기본적인 클래스들($JAVA_HOME/jre/lib/rt.jar)을 로딩한다. 다른 클래스 로더와 달리 자바가 아.. 2022. 8. 30.
Java Thread Thread? 하나의 프로세스 내부에서 독립적으로 실행되는 하나의 작업 단위를 말한다. 두개 이상의 스레드가 같은 자원을 이용할 때는 필연적으로 경합이 발생하고 경우에 따라서 DEADLOCK이 발생할 수도 있다. 스레드 상태 NEW: 스레드가 생성되었지만 아직 실행되지 않은 상태 RUNNABLE: 현재 CPU를 점유하고 작업을 수행 중인 상태. 운영체제의 자원 분배로 인해 WAITING 상태가 될 수도 있다. BLOCKED: CPU를 점유하기 위해 다른 스레드가 락을 해제하기를 기다리는 상태 WAITING: wait() 메서드, join() 메서드, park() 메서드 등를 이용해 대기하고 있는 상태 TIMED_WAITING: sleep() 메서드, wait() 메서드, join() 메서드, park().. 2022. 8. 30.
반응형