기존 이솝 임베디드 포럼의 지식인 서비스가 게시판 형태로 변경되었습니다.

안녕하세요.
Web Application Server 또는 Web Server에 대한 질문이 있습니다.

지금까지 제가 개발한 장비는 아래와 같이 ASCII 기반의 명령어를 이용해 개발한 제품입니다.
임베디드 리눅스(측정 관련 어플리케이션) <---- ASCII 기반의 명령어(TCP/IP) ----> GUI

그런데 다른 업체에서 개발한 제품을 보니 웹브라우저에서 장비의 IP에 특정 포트로 접속을 하면 웹브라우저 상에서 UI가 나타나며 측정과 데이터 획득 및 그래프로 표현이 됩니다.

나름 조사한 바로는 이게 Web Application Server로 나옵니다.

여기서 궁금한게 있습니다.

1. 해당 내용이 Web Application Server가 맞는지요?

2. Web Application Server가 맞다면 구현을 할 경우 기존의 측정 관련 어플리케이션(C언어로 구현)은 어떻게 해야하는지?
  - Web Application Server가 기존의 측정 어플리케이션과 인터페이스해야 되는지?
  - 아니면 Web Application Server가 기존의 측정 어플리케이션의 기능을 포함해야 하는지?

3. 만약 Web Application Server를 구현하려면 필요한 지식이나 공부해야 할것이 어떤게 있나요?

제가 GUI나 Web Application Server관련 전공자가 아니라 올바른 질문이 아닐수도 있습니다.
감사합니다.

서치

2019.03.29 18:13:06
*.75.54.174

안녕하세요.


질문 주신 글을 보니 제 전문 분야다 싶어서 답글 답니다.


1. 웹 브라우저 UI를 나타내는 역할을 하는게 Web Application Server인지 물어보셨는데요.  정확하게 구분해서 말씀드리면 웹 브라우저 상에 표시되고 버튼 등을 눌렀을때 특정 기능을 수행하는 프로그램을 웹 프로그램이라고 합니다. 웹 프로그램은 웹 서버라고 부르는 프로그램(일반적으로 아파치, nginx, 톰캣 등) 위에 탑재되고요. web application server는 웹 프로그램이 보다 원활하게 동작하고 쉽게 탑재할 수 있도록 만들어진 웹 서버라고 볼 수 있습니다. 줄여서 was 라고 하는데 이 단어는 일반적인 용어이기보다 주로 자바 언어 기반의 웹 프로그램에서 많이 나타나는 단어입니다.


2. 웹 프로그램을 구현할 경우 기존의 프로그램을 어떻게 해야 하는지?

웹 프로그램을 개발할때 기존 프로그램이 이미 좋은 기능을 제공하고 있다면 웹 프로그램 안에 측정 기능을 따로 개발하지 않으셔도 되고요. 웹 프로그램을 만들 수 있는 언어(PHP, Python, Java 등)에는 시스템 명령을 실행해 결과를 받을 수 있는 API가 있어서 그것을 가져다 사용하시면 됩니다.


3. 웹 프로그램을 구현해야 한다면 필요한 지식이나 공부할 것

간단하게 생각하면 별로 없을것도 같은데 웹은 의외로 굉장히 많은 지식이 필요합니다. 먼저 웹 브라우저에 내용을 표시하기 위한 언어로 HTML, CSS가 필요하고요. 버튼 등을 눌렀을때 웹 서버에서 측정된 결과를 받아오도록 자바스크립트가 필요합니다. 그래프 그릴때도 자바스크립트가 필요합니다. 그리고 브라우저가 웹 서버에 데이터를 요청하면 측정 프로그램을 실행해서 응답할 서버쪽 프로그램을 만들어야 하는데 여기에 사용되는 언어는 다수가 있지만 PHP, Java, Python 등이 많이 사용됩니다. 그래서 이들 언어를 배우셔야 하구요.


자바스크립트는 굉장히 빠른 속도로 개발되고 있어서 웹 프로그램(보통 서버에서 동작하는 프로그램와 웹 브라우저에서 동작하는 프로그램 모두를 일컫습니다)을 모두 자바스크립트로 개발하기도 합니다. 여기에 사용하는 언어는 보통 자바스크립트 ES 6 이라고 하며 프레임워크로 NodeJS 라는 것이 사용됩니다.


일반적으로 엑셀과 비슷한 모양새를 가지는 프로그램이라면 자바 언어 기반의 프레임워크에서는 HTML이나 CSS, 자바스크립트를 몰라도 자바 언어만으로도 웹 브라우저에서 동작하는 프로그램을 쉽게 만들 수도 있습니다.


그렇지만 이 곳 홈페이지나 제니퍼(WAS 성능 측정 프로그램) 등과 같이 화려한 화면을 만들땐 HTML, CSS, 자바스크립트를 비교적 자유로이 쓰실 수 있어야 합니다.


조금 두서없이 말씀드렸는데 도움이 되시면 좋겠습니다.


감사합니다.

SpecialCase

2019.04.04 10:18:25
*.177.158.129

답변감사합니다.

웹 프로그램에 대한 큰 그림을 그리는데 많은 도움이 되었습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수sort
6348 binder에서 BnInterface나 BpXXX이렇게 붙는데요 Bn과 Bp는 어... [1] BellFive 2010-07-28 10856
6347 LCD 디스플레이 관련 질문입니다. file [2] 조현호 2011-08-31 10462
6346 가상머신(virtualbox, vmware) 드라이버 설정 환경 문의 입니다. [2] pedor11 2014-01-03 9811
6345 [질문/완료] 무선랜 붙여서 핑 날렸는데,, 문제 발생.. [5] 장병남 2008-09-23 9652
6344 MCU / AP [6] 김민욱 2018-08-27 9526
6343 Q&A 게시판 사용시 주의사항. 고현철 2006-04-05 9525
6342 Arndale + MT-6620 [2] nsys 2012-12-08 9400
6341 [완료] Crosstool 0.43으로 toolchain 제작 시도중에. [2] 김성재 2008-12-03 9381
6340 NAK bailout생기면서 I2C 통신 fail이 나네요. 훌러덩 2012-04-10 9014
6339 [질문] x86(AMD geode LX800) 보드는 구입이 가능한가요?[완료] [12] 김성주 2007-03-15 8968
6338 USB storage 마운트 어떻게들 하시나요. <== [완료] [11] 박영학 2006-09-23 8095
6337 kernel source중 gpio와 관련된 질문입니다. [1] 소노공 2010-12-10 8087
6336 [s3c2440] FTDI USB Serial converter사용하고 싶은데요??[완료... [8] 김창연 2006-10-24 7860
6335 Android 포팅 방법에 대한 질문 [11] 전병환 2009-04-09 7750
6334 NAND bad sector가 새로 발생했을 때… [1] 오르다 2015-07-31 7427
6333 안드로이드폰에서 통화중 녹음 [3] 최강산 2010-07-30 7423
6332 안드로이드 커널 소스 다운 받는 방법.. [3] 이성호 2009-03-12 7312
6331 6410을 이용해서 영상 Encoder/Decoder를 구현하려고 합니다. [9] 이종우 2009-03-04 7282
6330 NDK로 native C application 컴파일하기 [2] [春] 2010-01-15 7154
6329 임베디드 보드의 top 명려에 대한 질문입니다.(우분투top 비교, 프로... [9] pedor11 2014-03-05 7036

사용자 로그인