우리 서버 제품은 현재 데스크톱 형태로되어 있으며 우리는 웹 기반 프론트 엔드를 제공하는 동시에 서비스로 이전하려고 노력하고 있습니다. 웹 경험이 많지 않으므로이 작업을 수행하는 가장 좋은 방법을 찾아내는 데 어려움을 겪고 있습니다.웹 프론트 엔드를 서버 응용 프로그램에 효율적으로 연결할 수 있습니까?
첫 번째 단계에서 우리의 요구 사항은 매우 기본입니다. 우리는 시스템의 다양한 구성 요소의 상태를보고 실시간으로 침입 한 로그를 모니터 할 수 있기를 원합니다.
내 생각은 어딘가에 다른 서버에서 실행되는 별도의 웹 프레임 워크에서 사용할 수있는 서버 응용 프로그램에 TCP 기반 인터페이스를 추가하는 것입니다. 기본 상태 메시지의 경우 이는 간단합니다. 사용자가 웹 인터페이스에 연결하고 서버 응용 프로그램에 현재 상태를 쿼리 한 다음 해당 상태를 사용자에게 표시합니다. 로그 스트리밍의 경우 좀 더 복잡해집니다. 항상 서버 응용 프로그램의 최신 로그를 지속적으로 요청하는 경우, 특히 각 사용자마다 별도의 연결이있는 경우 서버 응용 프로그램에 더 많은 스트레스를 가할 수 있습니다.
이상적으로 웹 서버는 서버 응용 프로그램에 대한 단일 영구 연결을 열고 서버 응용 프로그램은 상태가 변경되거나 새 메시지가 기록 될 때마다 웹 서버에 데이터를 전송합니다. 그런 다음 웹 서버는이 데이터를 캐시하고 연결된 모든 사용자에게 "전달"합니다. 이 방법으로 서버 응용 프로그램이 수행하는 작업량은 대부분 고정되어 있으며 현재 서버에 연결된 사용자 수에 의존하지 않습니다.
내 질문은 :
- 이 근본적으로 의미가 있습니까?
- 어떻게해야합니까? 그것은 웹 프레임 워크가 처리 할 수 있어야합니다 (나는 리프트쪽으로 기울어졌지만 지금 당장은 묶여 있지 않습니다) 또는 서버 애플리케이션에 대한 지속적인 연결을 유지하는 자체적 인 중간 캐싱 레이어를 작성해야합니다. 필요에 따라 웹 서버에 데이터를 제공합니까? 처음부터이 작업을 수행하는 것이 가장 좋은 방법입니까 아니면이 유형의 작업에 대해 이미 잘 테스트 된 솔루션이 있습니까?
내가 언급 한 것처럼 어떤 종류의 웹 개발이라도 나는 옳은 방향으로 나를 가리키고있는 어떤 것도 도움이 될 것입니다.
그래프 그리기는 그래프 서버 메트릭에 대한 부분적인 해결책 일 수 있습니다. – Kevin