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

안녕하세요.
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
6368 flow control에 관해서 여쭤 보고자 합니다. 열심히 2015-06-17 113
6367 android uenvt에 내용을 추가 했는데요 맞는 방법인가요? [1] pedor11 2015-05-20 121
6366 input device에 할당된 버튼키를 제거하고 터미널에서 키보드로 대... [1] 김민욱 2017-05-25 122
6365 camera HAL시 퍼미션을 얻을 수 있는가요? [2] 조신 2015-11-18 147
6364 압력센서 신호처리 관련하여 문의드립니다. [3] kernel_study 2016-11-03 148
6363 [apt pkg server 관련] [2] 밥줘잉 2016-10-20 150
6362 nfs 서버 구축 질문 [4] 김민욱 2017-06-10 164
6361 ACPI Shutdown Signal이 들어갈때의 동작을 변경하고 싶습니다. +... [4] 겟페우스 2017-06-08 165
6360 SoM GPIO 제어 문의 [1] 단순최고 2021-01-25 168
6359 USB GPS를 재부팅 후에도 자동으로 동작하게 하려고 합니다. [3] 겟페우스 2017-06-03 172
6358 touch screen관련 여쭤봅니다. [1] 열심히 2015-07-25 173
6357 virtualbox에 안드로이드가 잘 안도네요 [1] 더미원 2017-03-20 180
6356 2440 보드의 address 신호와 소스상의 주소를 어떻게 이해 하고 있... [2] DavidKim 2015-07-29 181
6355 i.mx6q에서 libvpu.so 라이브러리를 사용하여 link시에 undefined ... [1] 이동희 2019-08-09 182
6354 udev 를 이용하여 /dev 사용권한을 변경할수 있나요? [1] pedor11 2015-11-18 185
6353 키이벤트 관련 질문드립니다. [3] 하하호호하하 2015-10-06 188
6352 Alto 4330 보드에서 sdcard의 리눅스 커널로 부팅하는 방법 [2] 포도씨 2016-11-18 192
6351 밑의 LCD 포팅 질문드렸었는데 추가 질문이 있습니다. [2] ImYeol 2015-08-13 193
6350 check_usb_vfs("/dev/bus/usb") 에러 [1] 생생맥주 2015-01-25 200
6349 smsc9220 질문 file [2] *김종원 2015-07-24 203

사용자 로그인