/ / 소켓 기반 델파이 클라이언트 - 서버

소켓을 기반으로하는 클라이언트 - 서버 델파이

오늘날,클라이언트 - 서버 아키텍처의 개발 및 배포에 전념하는 정보 기술 이것은 다양한 분야의 정보 시스템이 점점 다양 해지고 있기 때문입니다. 또한 데이터베이스의 구조는 특정 매개 변수에 의해 작성되며 특수 응용 프로그램을 사용하는 경우에만 표준 모드로 작업 할 수 있습니다. 따라서 클라이언트 - 서버 아키텍처의 구현은 다양한 사이트의 정보 기술 부서에서 발생하는 매우 중요한 작업입니다. 성공적인 솔루션으로 인해 회사는 최적이고 원활하게 작동 할 수 있습니다.

소켓 기반 서버

소켓 프로토콜을 실행하는 서버,여러 사용자의 요청을 동시에 처리 할 수 ​​있습니다. 이 경우 관리자는 언제든지 설정을 조정하여 동시에 제공되는 사용자 수에 제한을 입력 할 수 있습니다. 기본적으로이 매개 변수에는 제한이 없습니다.

클라이언트를 서버에 연결하면데이터가 교환되는 소켓이있는 별도의 채널. 그러나 가장 안전하고 안전한 방법은 각각의 새 연결에 대해 별도의 별도 프로세스를 배포하는 것입니다.

"클라이언트 - 서버"아키텍처의 스키마

자주 사용되는 정의를 일관되게 분석하면서 아키텍처 구현의 체계를보다 자세히 살펴 보겠습니다.

1. ServerType 및 포트의 등록 정보. 사용자가 서버에 연결할 수 있으려면 서버와 클라이언트가 모두 사용하는 포트가 동일한 지 확인해야합니다. Port 속성에서 만든이 매개 변수의 용도입니다. 연결 유형은 ServerType 매개 변수에 의해 결정됩니다.

2. 소켓을 여는 과정. 클라이언트 - 서버 세션을 시작하려면 소켓과 포트를 여는 것이 중요합니다. Listen 속성이 사용됩니다.

3 그런 다음 데이터가 사용자와 교환됩니다. 종료 할 때 클라이언트 연결이 끊어집니다. 시스템 관리자가 적절한 명령을 사용하면 서버가 종료되고 모든 기존 연결이 중단되며 새 연결을 기다리는 프로세스가 종료됩니다.

Delphi 클라이언트 - 서버 응용 프로그램에서 TServerSocket 사용

정보를 보내고 받으려면사용자가 OnClientWrite 및 OnClientRead 이벤트를 사용합니다. 이 경우 ClientSocket과 같은 매개 변수를 통해 사용자와 상호 작용할 수 있습니다. 작업하는 동안 다음과 같은 메서드와 속성이 자주 사용됩니다.

- 현재 연결된 사용자 수.

- 활성 프로세스의 수.

- 자유 프로세스의 수;

- 포트, 호스트 이름 및 로컬 IP 주소.

- 소켓 잠금을 해제하고 잠급니다.

결론적으로, 자주주의를 기울이십시오.사용 된 특수 특성은 데이터입니다. 이 속성은 다음과 같은 경우에 적용됩니다. 원칙적으로 서버는 많은 수의 사용자에게 서비스를 제공하기 때문에 각 클라이언트에 대한 정보를 저장할 필요가 있으며이 정보는 특정 소켓에 연결되어야합니다. 이러한 상황에서는 수동 바인딩을 사용하는 것이 매우 불편하므로 Data 속성이 널리 사용됩니다. 그러나 Data는 포인터이므로 포인터 작업에 대한 모든 규칙 (유형 표시, 메모리 할당 등)을 준수하는지 확인하는 것이 중요합니다.

문서

현재까지, 개발에 관한 문헌소켓 개발 및 사용과 관련된 Delphi 클라이언트 - 서버 응용 프로그램은 거의 나타나지 않습니다. 따라서이 측면에 대한 자세한 연구를 위해 Linux 및 Unix 시스템의 설명서를 참조 할 수 있습니다. 그러나 Perl이나 C ++에서 일반적으로 소켓을 사용하여 응용 프로그램을 배포하는 기술을 자세히 설명합니다.

더 읽기 :