Apache Mina 연구 노트(3) - IoService
이 장에서는 서버와 클라이언트의 모든 I/O 서비스를 제공하는 기본 클래스인 MINA의 IoService에 대해 설명합니다. 이는 피어와 메시지를 보내고 받고 세션, 연결 등을 관리하는 데 사용됩니다.
서버측에서는 IoAcceptor, 클라이언트측에서는 IoConnector로 구현한 인터페이스입니다.
이 인터페이스를 다음 부분에서 소개하겠습니다.
IoService 소개
IoService 세부 정보
IoAcceptor
IoConnector
IoService 소개
IoService는 Mina 프레임워크에서 기본 I/O 서비스를 제공하고 I/O 세션을 관리합니다. 미나에게 있어 매우 중요한 부분입니다.
위 그림에서 언급했듯이 IoService에는 많은 책임이 있습니다.
세션 관리
필터 체인 관리
핸들러 호출
통계 관리
청취 관리
통신 관리
이 인터페이스의 메서드:
getTransportMetadata();
IoAcceptor 또는 IoConnector가 실행 중일 때 이 메서드는 전송된 메타데이터를 반환합니다. , 일반적으로 이름(nio, apr, txtx), 연결 유형(연결 지향 또는 연결 없음)을 포함합니다.
addListener
지정된 이벤트를 수신하기 위해 IoServiceListener를 추가할 수 있습니다.
removeListener
지정된 IoserviceListener를 제거합니다
isDisposing
서비스가 폐기된 경우 서비스 상태를 반환
isDisposed
서비스가 폐기된 경우 서비스 상태를 반환
dispose
서비스에서 요청한 모든 리소스를 해제하는 데 사용됩니다. 사용자는 먼저 위의 두 가지 방법을 사용하여 서비스가 완전히 폐기되었는지 확인해야 합니다. 서비스를 종료하려면
getHandler
이 메소드를 호출해야 합니다.
setHandler
서비스와 관련된 메소드를 반환합니다. 서버가 요청을 받는 문제를 해결하기 위해 IoHandler는 프로그램 로직을 포함하는
getSessionConfig
세션 구성을 반환합니다.
getFilterChainBuilder
필터를 반환합니다. 필터링을 추가해야 할 때 체인 빌더를 추가해야 할 때 이 메소드를 호출해야 합니다.
IoService 세부 정보
Ioservice 이 인터페이스는 MINA의 두 가지 중요한 클래스인 IoAcceptor와 IoConnector로 구현됩니다. 서버 측에서는 IoAcceptor를 선택하고, 클라이언트 측에서는 IoConnector를 선택해야 합니다.
IoAcceptor
MINA에는 이미 구현된 클래스가 있습니다:
NioSocketAcceptor: 비차단 소켓 전송 IoAcceptor
NioDatagramAcceptor: 비차단 UDP 전송 IoAcceptor
AprSocketAcceptor: APR을 기반으로 하는 차단 소켓 전송 IoAcceptor
VmPipeSocketAcceptor: VM 내 IoAcceptor
필요한 IoAcceptor를 선택하세요.
아래 그림은 IoAcceptor 클래스와 인터페이스
IoConnector
NioSocketConnector : 비차단 소켓 전송 IoConnector
NioDatagramConnector : 비차단 UDP 전송 IoConnector
AprSocketConnector : APR 기반의 차단 소켓 전송 IoConnector
ProxyConnector : 프록시 지원을 제공하는 IoConnector
SerialConnector : 직렬 전송을 위한 IoConnector
VmPipeConnector : in -VM IoConnector
다음은 요약한 예입니다.
예를 들어 VM IoConnector를 생성하려는 경우 TCP 서버를 생성하려면 다음
public TcpServer() throws IOException { // Create a TCP acceptor IoAcceptor acceptor = new NioSocketAcceptor(); // Associate the acceptor to an IoHandler instance (your application) acceptor.setHandler(this); // Bind : this will start the server... acceptor.bind(new InetSocketAddress(PORT)); System.out.println("Server started..."); }
과 같은 코드를 작성하면 됩니다. 이렇게 하면 Tcp 서버가 생성됩니다. UDP 서버를 생성하려면 IoAcceptor acceptor = new NioDatagramAcceptor( );
해제하려면
acceptor.dispose(true)
를 호출하여 필터 체인을 추가하고
// Add a logger filter DefaultIoFilterChainBuilder chain = new DefaultIoFilterChainBuilder(); chain.addLast("logger", new LoggingFilter()); // And inject the created chain builder in the service acceptor.setFilterChainBuilder(chain);
서비스에 추가하면 됩니다. 위 내용은 Apache의 내용입니다. 미나 스터디노트(3) - IoService 관련 내용을 더 보시려면 PHP 중국어 홈페이지(www.php.cn)를 팔로우해주세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











서버 측에서 문자 인코딩을 설정하려면 Bridble Bootstrap 테이블을 해결하려면 다음 단계를 따라야합니다. 서버 문자 인코딩을 확인하십시오. 서버 구성 파일 편집; 인코딩을 UTF-8로 설정하십시오. 서버를 저장하고 다시 시작합니다. 인코딩을 확인하십시오.

Apache에서 CGI 디렉토리를 설정하려면 다음 단계를 수행해야합니다. "CGI-BIN"과 같은 CGI 디렉토리를 작성하고 Apache 쓰기 권한을 부여하십시오. Apache 구성 파일에 "Scriptalias"지시록 블록을 추가하여 CGI 디렉토리를 "/cgi-bin"URL에 매핑하십시오. Apache를 다시 시작하십시오.

Apache를 시작하는 단계는 다음과 같습니다. Apache 설치 (명령 : Sudo apt-get Apache2를 설치하거나 공식 웹 사이트에서 다운로드) 시작 apache (linux : sudo systemctl start : windes (선택 사항, Linux : Sudo SystemCtl

이 기사는 데비안 시스템의 OpenSSL 구성을 확인하여 시스템의 보안 상태를 신속하게 파악하는 데 도움이되는 몇 가지 방법을 소개합니다. 1. OpenSSL 버전을 먼저 확인하고 OpenSSL이 설치되었는지 확인 및 버전 정보를 확인하십시오. 터미널에 다음 명령을 입력하십시오. OpenSSLVERSION이 설치되지 않으면 시스템에 오류가 발생합니다. 2. 구성 파일을 봅니다. OpenSSL의 기본 구성 파일은 일반적으로 /etc/ssl/openssl.cnf에 있습니다. 텍스트 편집기 (예 : Nano)를 사용하여 Sudonano/etc/ssl/openssl.cnf이 파일에는 키, 인증서 경로 및 암호화 알고리즘과 같은 중요한 구성 정보가 포함되어 있습니다. 3. Ope를 활용하십시오

Apache에서 추가 ServerName 지시문을 삭제하려면 다음 단계를 수행 할 수 있습니다. 추가 ServerName Directive를 식별하고 삭제하십시오. Apache를 다시 시작하여 변경 사항이 적용됩니다. 구성 파일을 확인하여 변경 사항을 확인하십시오. 서버를 테스트하여 문제가 해결되었는지 확인하십시오.

이 기사는 데비안 시스템에서 Apache Logs를 분석하여 웹 사이트 성능을 향상시키는 방법을 설명합니다. 1. 로그 분석 기본 사항 Apache Log는 IP 주소, 타임 스탬프, 요청 URL, HTTP 메소드 및 응답 코드를 포함한 모든 HTTP 요청의 자세한 정보를 기록합니다. 데비안 시스템 에서이 로그는 일반적으로 /var/log/apache2/access.log 및 /var/log/apache2/error.log 디렉토리에 있습니다. 로그 구조를 이해하는 것은 효과적인 분석의 첫 번째 단계입니다. 2. 로그 분석 도구 다양한 도구를 사용하여 Apache 로그를 분석 할 수 있습니다.

Apache는 데이터베이스에 연결하여 다음 단계가 필요합니다. 데이터베이스 드라이버 설치. 연결 풀을 만들려면 Web.xml 파일을 구성하십시오. JDBC 데이터 소스를 작성하고 연결 설정을 지정하십시오. JDBC API를 사용하여 Connections, 명세서 작성, 매개 변수 바인딩, 쿼리 또는 업데이트 실행 및 처리를 포함하여 Java 코드의 데이터베이스에 액세스하십시오.

APACHE 서버에서 버전을 보는 3 가지 방법이 있습니다. 명령 줄 (APACHECTL -V 또는 APACHE2CTL -V)을 통해 서버 상태 페이지 (http : // & lt; 서버 IP 또는 도메인 이름 & gt;/server -status)를 확인하거나 APACHE 구성 파일 (ServerVersion : Apache/& lt; 버전 번호 & gt;).
