반응형
반응형
Starting and Stopping Oracle Database: A Step-by-Step Guide. Oracle Database의 인스턴스와 리스너 시작/종료 방법을 알아보겠습니다. 먼저 DB 인스턴스와 리스너의 시작/종료 순서는 상관없다는 점을 알아두세요. 1. Oracle Database의 State 정의 Oracle Database는 그 동작 상태를 네 가지 상태로 구분할 수 있습니다. Shutdown: Database가 완전히 종료된 상태로 DB파일이 메모리에서 해제되고 DB 프로세스는 종료됨. Nomount: DB파일이 메모리에 로드는 됐지만 마운트는 안된 상태. DB 프로세스 종료 상태. Mount: DB파일이 마운트된 상태이지만 아직 열리지 않은 상태. Open: Database 프..
이번 포스팅에서는 IOCP 서버에서 소켓 풀을 관리하는 방법에 대해 알아보겠습니다. 이전 포스팅에서 IOCP 뼈대 코드를 작성하고 초기화하는 과정을 알아보았습니다. 2023.12.13 - [프로그래밍/C | C++] - IOCP 기반 다중 접속 및 데이터 처리-1 IOCP 기반 다중 접속 및 데이터 처리-1 윈도 환경에서 다중 클라이언트의 접속을 처리하는 네트워크 서버를 구현하기 위해서는 IOCP 사용이 필수라고 생각합니다. 에코 서버를 IOCP 기반으로 구현한 예제는 많지만 실제 현업에서 다중 blog.noyecube.com 2023.12.14 - [프로그래밍/C | C++] - IOCP 기반 다중 접속 및 데이터 처리-2 1. 리슨소켓 Accept 이벤트 감지 WSAEVENT hWSAEvent = W..
노트북에 리눅스를 설치하고 oracle database를 설치하고 전원을 켜뒀는데 다음날 확인하니 절전모드에 빠진 상태로 원격 접속이 안됩니다. 이번 포스팅에서는 리눅스 절전 모드 방지 설정을 알아보겠습니다. 1. 노트북 덮개 동작 무시 노트북을 서버로 사용하기 위해서는 24시간 전원을 켜두어야 하는데 설치 후 기본 상태로 두거나 덮개를 만지면 절전 모드로 진입하게 됩니다. 아래와 같이 설정 파일을 수정 후 데몬을 재기동합니다. # logind.conf 파일을 오픈 vi /etc/systemd/logind.conf # 아래 두 옵션의 주석을 해제하고 아래와 같이 ignore 설정 HandleLidSwitch=ignore HandleLidSwitchDocked=ignore #파일 저장 후 데몬 재시작 sy..
이전 포스팅에서 IOCP 서버 스켈레톤 코드를 작성해 보았습니다. 이번 포스팅에서는 IOCP 서버를 위한 스레드풀 초기화 코드를 살펴보겠습니다. 1. IOCP 서버 실행 결과 실행결과 먼저 살펴보겠습니다. 실행환경은 8 코어 16 스레드 CPU입니다. IOCP Worker Thread 16개, IOCP RIL Thread 16개씩 생성하였고 동시실행 가능 스레드 수는 각 8개씩 설정하였습니다. 스레드는 실행중 I/O 나 기타 사유로 Pending 상태에 빠질 수 있기 때문에 동시 실행 가능한 숫자보다 많은 수의 스레드를 생성하여 스레드풀에 등록해 둡니다. 2. 초기화 코드 호출 구조 및 예제 코드 RilInit 함수에서 서버를 초기화합니다. 작업 스레드풀을 생성하고 작업 스레드들을 대기시킵니다. 송신 스..
윈도 환경에서 다중 클라이언트의 접속을 처리하는 네트워크 서버를 구현하기 위해서는 IOCP 사용이 필수라고 생각합니다. 에코 서버를 IOCP 기반으로 구현한 예제는 많지만 실제 현업에서 다중 클라이언트 접속을 처리하기 위한 아키텍처를 어떤 방식으로 접근하면 좋을지 고민해 보는 차원에서 IOCP 기반 다중 접속 처리 및 데이터 처리 프로토타입 구상을 위해 이번 포스팅을 작성합니다. 1. 리눅스 epoll 대비 IOCP(I/O Completion Port) 장점 대부분의 유명한 게임서버는 Windows Server 기반이라는 사실을 알고 계신가요? 그 이유는 리눅스에서 다중 접속을 처리하기 위해 사용가능한 epoll 보다 Windows의 IOCP가 더 나은 장점이 있기 때문입니다. 윈도 표준 API로 윈도 ..
윈도에서 네트워크 어댑터가 두 개 이상 활성화되어 있으면 우선순위가 자동으로 설정되는데요. 그 우선순위에 따라 인터넷이 잘 될 수도 있고 안될 수도 있습니다. 이번 포스팅에서는 그 우선순위를 점검하고 수정하는 방법을 알아보겠습니다. 제 컴퓨터의 네트워크 어댑터 현황을 예를 들어서 설명하겠습니다. 저는 무선랜을 사용하여 외부 인터넷을 사용하고 있는데 유선랜을 유선공유기와 연결하여 다른 장치와 사설망으로 통신을 하려고 합니다. 그런데 웹브라우저로 인터넷을 시도하면 무선랜으로 패킷이 나가는 게 아니라 인터넷이 불가능한 유선공유기 쪽으로 인터넷연결 시도가 먼저 이루어졌다가 타임아웃이 발생하면 무선랜으로 시도하여 답답함을 느껴서 네트워크 어댑터의 라우팅 테이블을 점검하고 우선순위를 변경하기로 하였습니다. 1. 두..