Delphi를 사용하여 통신 및 데이터 교환 서버 구축 - 트랜시버 기술 분석(1부) 작성자: 火鸟 [email protected] 소개 일반적인 국내 정보 개발 및 구현 프로젝트에서 대부분의 개발 워크로드는 다양한 고객에 적응하는 데 중점을 둡니다. 요구 사항의 차이에 따라 특정 모듈을 수정하여 궁극적으로 고객이 기대하는 소프트웨어 기능을 달성합니다. 그러나 개발자의 경우 다양한 고객을 위해 서로 다른 소프트웨어 버전을 개발하면 작업 중복, 비용 상승, 유지 관리 증가, 호환성 및 안정성 저하 등 일련의 문제가 발생합니다. 따라서 개발자는 소프트웨어의 제품화를 실현해야만 프로젝트 주기를 단축하고 시장 경쟁력을 강화할 수 있으며, 이로 인해 막히지 않고 다양한 고객의 요구에 최대한 적응할 수 있다는 것을 깨닫는 것이 고객 만족의 핵심입니다. 사업적 이해관계 간의 균형. 트랜시버 개념 트랜시버는 다양한 애플리케이션과 비즈니스 프로젝트의 다양한 통신 요구 사항을 충족하도록 설계 및 개발된 일반 통신 제품 소프트웨어입니다. 플랫폼 중립적, 애플리케이션 중립적, 통합 관리 및 여러 애플리케이션 시스템 간의 통신 및 데이터 교환 제어에 사용할 수 있습니다. 원래 설계는 통신 모듈의 반복적인 개발을 줄이고 통신 소프트웨어의 중앙 집중식 관리를 강화하는 것입니다. 송신 및 수신을 소스에서 대상으로의 동등한 데이터 흐름 프로세스로 추상화함으로써 기존 공통 통신 방법의 송신 및 수신 처리와 통신 예외(큐)의 내결함성 버퍼링 처리가 통합되어 트랜시버의 강력한 기능을 구성합니다. 이는 기업 수준의 커뮤니케이션 요구 사항을 충족하기에 충분합니다. 다음은 트랜시버 애플리케이션의 예입니다.
| 의사소통 방향 | 원천 | 버퍼(큐) | 목표 | 기능 구현 |
| C1.데이터 보내기 | S1. 로컬 FILE에서 가져옵니다. | 싱크에 이상이 있는 경우 데이터는 Transceiver에 버퍼링될 수 있으며 Transceiver는 이를 재전송하는 역할을 맡게 됩니다. | T1. 원격 TCP 포트에 제출합니다. | 원격 위치로 파일 전송 |
| C2.데이터 수신 | S2. 원격 POP3에서 가져옴 | T2. 다른 SMTP 계정으로 제출 | 메일 전달 |
| C3.데이터 보내기 | S3. 로컬 DB에서 가져옵니다. | T3. 원격 HTTP 페이지에 제출 | 데이터베이스에서 읽고 웹페이지에 제출 |
| C4.데이터 수신 | S4. 원격 FTP에서 가져옴 | T4. 처리를 위해 로컬 COM에 제출 | 원격 끝에서 가져와 처리를 위해 COM에 전달합니다. |
| C5.데이터 수신 | S5. 원격 DCOM에서 가져옵니다. | T5. 로컬 MSMQ 대기열에 제출 | 원격 구성 요소에서 메시지 대기열을 얻고 처리를 기다립니다. |
트랜시버에서는 소스와 타겟 모두 S1~S5 및 T1~T5와 같은 포트로 간주됩니다. 이들은 모두 C1과 유사하게 트랜시버에 의해 생성되고 제어되는 통신 구성 요소입니다. C5의 여러 통신 프로세스 정의는 채널로 간주됩니다. 기본적인 통신 기능을 수행할 수 있는 채널은 두 개의 Port(하나는 Source, 다른 하나는 Target)로 구성됩니다. ,큐는 통신 예외가 발생할 때 내결함성 처리 계층입니다. 표에 표시된 것처럼
트랜시버는 통신 프로세스 전송 및 수신 모두에 대해 완벽한 지원을 제공할 수 있습니다. 소스와 싱크의 종류, 수량, 대응 관계에 제한이 없습니다. 소스와 타겟 간의 매칭 관계를 자유롭게 설정할 수 있습니다. 위 표에는 트랜시버 통신 기능의 몇 가지 사용 사례만 나열되어 있습니다. 트랜시버는 데이터 통신 요소를 애플리케이션, 데이터 및 PROtocol의 세 가지 수준으로 추상적으로 통합하고 복잡하고 변화하는 통신 요구 사항에 적응할 수 있으며 애플리케이션 통신 성능 및 요구 사항에 대해 최대의 유연성을 제공할 수 있습니다. 재사용성. 그림 1: 트랜시버 통신 포트(Port)의 상호 작용 기능
트랜시버 기능 1. LAN/WAN과 다른 운영 체제/응용 프로그램 시스템 간의 데이터 전송/수신 서비스는 현재 다음 통신 포트를 지원합니다.
| 통신방식 | 상호작용 레이어 | 송신 종료 | 수신 측 | 권장 환경 |
| TCP | 규약 | √ | √ | 방화벽이 없는 엔터프라이즈 패스트 이더넷/네트워크 |
| FTP | 규약 | √ | √ | 파일서버를 이용한 네트워크/환경간 파일전송 |
| SMTP | 규약 | √ | | B2C 상황/메일 발송 서버 포함 |
| POP3 | 규약 | | √ | B2C 상황/메일 수신 서버 포함 |
| HTTP | 규약 | √ | √ | 방화벽을 넘어선 네트워크/인터넷 환경 |
| 파일 | 데이터 | √ | √ | 로컬 파일에서 로컬 파일로 읽기/쓰기 |
| MSMQ | 데이터 | √ | √ | 메인프레임과 같은 다른 시스템/다른 애플리케이션 사용 |
| DB | 데이터 | √ | √ | 맞춤형 데이터베이스 구조 아래/다른 애플리케이션 간 |
| COM/DCOM | 애플리케이션 | √ | √ | 비즈니스 로직은 특정 데이터 처리 요구 사항이 있는 전용 모듈 인터페이스/환경에 매핑됩니다. |
Transceiver 응용 사례에서 볼 수 있듯이
Transceiver의 포트 및 채널 정의에 따르면 위의 8가지 유형의 송신/수신 양쪽 끝 포트를 자유롭게 결합하여 8x8의 총 64가지 유연한 통신 방법을 구현할 수 있습니다. 복잡하고 변화무쌍한 기업 애플리케이션 통신 환경을 만나보세요. 참고: UDP 프로토콜의 수요 환경은 TCP와 유사하고 연결 보안이 부족하기 때문에 작성자는 이를 구체적으로 구현하지 않았습니다. 필요한 경우 유연하게 추가할 수 있으며 애플리케이션 수준에서 구현하기 쉽습니다. Delphi를 사용하는 CORBA 및 EJB의 구성 요소 인터페이스(포트)는 Transceiver Shell의 필수 부분이 됩니다. 2. 버퍼링 처리에 사용되는 Queue 메커니즘은 비정상적인 통신 상황에 대응하여 데이터 버퍼 큐 추적 및 데이터 재전송을 수행할 수 있습니다. 3. 데이터의 시간, 내용, 소스, 대상, 버퍼링 시간 및 현재 상태를 완전히 기록할 수 있는 데이터 로깅. 4. 다중 언어 지원, 데이터 변환 및 사용자 인터페이스를 위한 다중 언어 지원 인터페이스를 제공합니다. 사용자는 언어 요구 사항에 따라 인터페이스 언어 유형 및 데이터 트랜스코딩 구성 요소를 자유롭게 추가할 수 있습니다.
트랜시버 구현 트랜시버는 트랜시버 서비스와 트랜시버 콘솔의 두 부분으로 구성됩니다. 트랜시버 서비스는 트랜시버 커널과 트랜시버 쉘이라는 두 가지 논리 계층으로 나눌 수 있습니다. 그림 2: 트랜시버 설계 아키텍처 1. 트랜시버 콘솔 소개 콘솔의 기능은 제어판 애플리케이션 형태로 트랜시버 서비스에 대한 효과적인 포트 및 채널 정의와 규칙을 제공하고 전송 로그, 데이터 대기열, 환경을 설정하는 것입니다. 매개변수 등은 콘솔을 거치지 않고도 사용자가 트랜시버의 시스템 구성 라이브러리와 레지스트리를 직접 수정하여 수동으로 설정할 수도 있습니다. 공간 제한으로 인해 인터페이스와 트랜시버의 다중 언어 동적 지원을 설명하기 위해 3개의 스크린샷만 제공됩니다. 껍데기. 포트 정의와 트랜시버 채널 정의의 세 가지 측면에 대한 구현 세부 사항은 자세히 설명하지 않습니다. 첨부 그림 3: 트랜시버 콘솔의 다국어 동적 지원(부록 4와 5에는 서로 다른 인터페이스 언어가 있음) 첨부 그림 4: 트랜시버 콘솔을 통해 트랜시버 서버에 대한 통신 포트 정의 첨부 그림 5: 통신 채널 정의를 위해 SourcePort와 TargetPort 결합 트랜시버 서버 작성자:Firebird
[email protected]은
C#을 통해 컬렉션 클래스 개요 .NET을 구현합니다. 컬렉션 및 관련 기술 Delphi를 사용하여 통신 및 데이터 교환 서버 구축 - 트랜시버 기술 분석(1부) Delphi를 사용하여 통신 및 데이터 교환 서버 구축 - 트랜시버 기술 분석(2부)
오래된 것: 프로그램 바로가기/프로그램 삭제 항목/EXE 자체 - DIY 오래된 항목 삭제: 프로그래밍 알고리즘에 대한 어린 시절 참고 사항