내장된 HTTP 서버
Embedded HTTP server임베디드 HTTP 서버는 임베디드 시스템에서 사용되는 HTTP 서버다.null
HTTP 서버는 일반적으로 기계 및/또는 전기 부품이 있는 기계를 제어하거나 감시하는 응용 프로그램(임베디드) 시스템의 소프트웨어 구성요소로 구현된다.[citation needed]null
HTTP 서버는 브라우저를 사용하여 하나 이상의 로컬 또는 원격 사용자와 통신할 수 있도록 HTTP 프로토콜을 구현한다.사용자가 로컬 사용자 인터페이스(디스플레이, 키보드 등)에 필요한 전통적인 주변장치를 사용하지 않고 네트워크를 통해 임베디드 시스템이 제공하는 정보(사용자 인터페이스, 데이터 모니터링, 데이터 로깅, 데이터 구성 등)와 상호작용할 수 있도록 하는 것이 목적이다.[citation needed]null
경우에 따라 HTTP 서버를 통해 제공되는 기능들은 프로그램 간 통신도 허용한다. 예를 들어 모니터링되는 기계에 대해 기록된 데이터를 검색할 수 있다.null
우사게스
내장된 응용프로그램 내의 사용 예는 다음과 같을 수 있다(예::[citation needed]
- 기존 애플리케이션을 위한 씬 클라이언트 인터페이스 제공
- 개발 단계에서 색인화, 보고 및 디버깅 도구를 제공한다.
- 정규 인터페이스에 표시될 정보의 배포 및 획득 프로토콜 구현(아마도 웹 서비스일 수 있음) 및 XML을 데이터 형식으로 사용할 수 있음.
- 웹 응용 프로그램을 개발한다.
이점
HTTP를 사용하여 위 작업을 수행하는 데는 몇 가지 이점이 있다.[citation needed]
- HTTP는 잘 연구된 교차 플랫폼 프로토콜이며, 자유롭게 사용할 수 있는 성숙한 구현이 있다.
- HTTP는 방화벽 및 인트라넷 라우터에 의해 거의 차단되지 않는다.
- HTTP 클라이언트(예: 웹 브라우저)는 모든 최신 컴퓨터에서 쉽게 사용할 수 있다.
- 홈네트워킹과 유비쿼터스 컴퓨팅의 상승 추세에 필적하는 어플리케이션에서 임베디드 HTTP 서버를 이용하는 경향이 증가하고 있다.
일반적인 요구 사항
임베디드 HTTP 서버가 실행되는 플랫폼의 자연스러운 제한은 임베디드 또는 보다 정밀한 임베디드 HTTP 서버의 비기능적 요구 사항 리스트에 기여한다.이러한 요구사항 중 일부는 다음과 같다.[citation needed]null
- "소형" RAM 및 ROM 설치 공간.정확한 크기는 시스템에 따라 다르지만, 많은 경우 수 메가바이트가 넘는 것은 내장할 수 없다.
- 최소 CPU 활용률.
- 여러 CPU 및 운영 체제 조합을 위한 교차 컴파일 지원
- 운영 체제 및 애플리케이션과의 정적 연결을 포함하여 기존 애플리케이션과의 손쉬운 통합
- 파일 시스템이 없는 경우 응용 프로그램 메모리에서 페이지 제공
- 모듈화.
- 단일 스레드 및 다중 스레드 지원
모든 특정 프로젝트에 대해 요구사항은 크게 달라질 수 있다.예를 들어, ROM과 RAM 발자국은 매우 심각한 제약이 될 수 있고 시스템 설계자의 선택을 제한할 수 있다.시스템에 대한 C++ 또는 JVM 가용성은 또 다른 제약조건이 될 수 있다.일반적인 임베디드 시스템은 여러 개의 동시 태스크를 실행하며 HTTP 서버는 그 중 하나에 불과하며 우선순위가 낮은 태스크로 구성될 수 있기 때문에 자주 성능이 문제가 된다.null
참고 항목
참조
외부 링크
- libmicrohtpd는 페이지 하단에 포함된 HTTP 서버 라이브러리의 광범위한 목록을 포함한다.
- 예: 내장된 HTTP 서버 구성요소의 기능