$\require{mediawiki-texvc}$

연합인증

연합인증 가입 기관의 연구자들은 소속기관의 인증정보(ID와 암호)를 이용해 다른 대학, 연구기관, 서비스 공급자의 다양한 온라인 자원과 연구 데이터를 이용할 수 있습니다.

이는 여행자가 자국에서 발행 받은 여권으로 세계 각국을 자유롭게 여행할 수 있는 것과 같습니다.

연합인증으로 이용이 가능한 서비스는 NTIS, DataON, Edison, Kafe, Webinar 등이 있습니다.

한번의 인증절차만으로 연합인증 가입 서비스에 추가 로그인 없이 이용이 가능합니다.

다만, 연합인증을 위해서는 최초 1회만 인증 절차가 필요합니다. (회원이 아닐 경우 회원 가입이 필요합니다.)

연합인증 절차는 다음과 같습니다.

최초이용시에는
ScienceON에 로그인 → 연합인증 서비스 접속 → 로그인 (본인 확인 또는 회원가입) → 서비스 이용

그 이후에는
ScienceON 로그인 → 연합인증 서비스 접속 → 서비스 이용

연합인증을 활용하시면 KISTI가 제공하는 다양한 서비스를 편리하게 이용하실 수 있습니다.

Drools를 이용한 Nginx와 Ajax기반의 Medical Expert System 개발
Medical Expert System Development based on Drools, Ajax and Nginx 원문보기

한국정보처리학회 2018년도 춘계학술발표대회, 2018 May 11, 2018년, pp.433 - 436  

장원용 (국민대학교 소프트웨어학부) ,  김태우 (국민대학교 소프트웨어학부) ,  류준영 (국민대학교 소프트웨어학부) ,  차은채 (국민대학교 소프트웨어학부) ,  최은미 (국민대학교 소프트웨어학부)

초록
AI-Helper 아이콘AI-Helper

본 논문은 웹 기반의 Medical Expert System을 위하여, 오픈 소스 Drools 기반으로 Spring MVC 프레임워크와 Ajax를 이용하여 구현하였다. 클라이언트와 서버 간에 비동기적 통신으로 JSON 데이터를 주고받아 서버의 부담을 감소하였으며, 데이터베이스 접근은 기존의 복잡한 JDBC 단점을 보완하고자 Mybatis 프레임워크를 적용하여 RDBMS 의 성능을 향상시켰다. 또한, 웹 기반의 장점을 최대한 활용하여 사용자 수가 늘어남에 따라 서버 트래픽 문제를 해결하기 위하여 Nginx를 이용한 로드밸런싱 구조를 구축하여 서버의 가용성을 확대하였다. 본 Medical Expert 시스템의 처리 프로세스는 일반 사용자가 웹으로 접근하여 설문을 작성한 후 기본적인 진단 및 평가를 제공하여 주는 서비스를 제공한다.

AI 본문요약
AI-Helper 아이콘 AI-Helper

* AI 자동 식별 결과로 적합하지 않은 문장이 있을 수 있으니, 이용에 유의하시기 바랍니다.

문제 정의

  • 또한, DB 레코드에 원시 타입과 Map 인터페이스, Java POJO를 설정해서 매핑하기 위해 XML과 Annotation을 사용할 수 있다. 객체지향 언어인 자바의 관계형 데이터베이스 프로그래밍을 쉽게할 수 있도록 도와주고 기존의 JDBC의 단점인 Connection과 Statement를 통해 쿼리를 전송하면 연결받은 후 Close하는 방식을 보완하기 위해 개발되었다. 따라서 JDBC 코드를 간편하게 사용할 수 있고 SQL 문장과 프로그래밍 소스코드가 분리되어 있어 사용하는데 편리하다.
  • Client에게 결과 페이지를 보여주기 위해 Spring에서 제공하는 View Resolver가 최종적으로 리턴되는 jsp파일이름을 연결하여 보여주게 된다. 본 논문에서 제안된 Medical Expert System은 주로 사용자가 작성한 설문지를 Drools 엔진을 통해서 진단 결과를 보여주는 서비스를 제공한다.
  • 본 논문은 Medical Expert System을 웹 기반에서 효율적으로 설계 및 구현하기 위하여 Spring MVC 프레임워크의 내부 동작 과정을 정확히 이해하고 Drools와 연동시킴으로써 Drools 기반으로 Medical Expert System을 설계 및 구현하였다. 또한, 서버의 부담을 줄이고 사용자의 편의성을 증진하고자 비동기적 통신을 하는 Ajax를 사용하여 페이지 전환을 최소화하였다.
  • 본 논문은 일반 사용자에게 설문을 통한 진단을 받을 수있는 서비스를 제공하기 위해 검증된 사상체질 설문을 적용했다. 아래 그림 6과 같이 사상체질 진단을 위해서는 통상적으로 사용되던 단일 단계 설문의 단점을 보완하여 2단계로 구성하였다.
  • 본 장에서는 Expert System을 구축하기 위한 관련 연구동향을 알아보고, 효율적이고 확장 가능한 Expert System구축을 위해 사용한 기술에 대한 소개를 한다. 인공지능 및 Expert System은 다양한 분야에서 활용이 되기 위해서는 분야별 신뢰 할 수 Domain Rule을 정립이 되어야 한다[7].
  • 하지만, Expert system을 사용할 때 사용자의 접근성을 확대하기 위하여, 웹 기반의 사용자 인터페이스를 설계 및 제공할 필요성이 있다. 웹 기반 서비스의 경우 트래픽이 많을 때 기능에 장애를 줄 수 있기 때문에 이것을 예방하고 해결하기 위해 요청을 분산시켜줄 서버 단의 로드 밸런싱 구조도 본 논문에서는 추가하여 구현하였다. Drools와 로드 밸런싱을 최대한 활용하고, 성능 향상을 위해 Spring MVC 구조와 Ajax를 사용해 웹 기반의 Medical Expert System을 설계 및 구현하였다.
본문요약 정보가 도움이 되었나요?

질의응답

핵심어 질문 논문에서 추출한 답변
Nginx는 무엇인가? Nginx[4]는 트래픽이 많은 웹사이트를 위해 확장성을 위해 설계한 비동기 이벤트 기반구조의 웹서버 소프트웨어이다. 대표적인 웹서버 Apache는 thread, process 기반 구조로 요청 하나당 쓰레드 하나가 처리하는 구조이기 때문에 사용자가 많으면 많은 쓰레드를 생성하고 메모리 및 CPU 낭비가 심하다는 단점이 있다.
Mybatis란 무엇인가? Mybatis[6] 는 개발자가 지정한 SQL, 저장프로시저 등 고급 매핑을 지원하는 퍼시스턴스 프레임워크이다. JDBC 로 처리하는 많은 부분의 소스코드와 parameter 설정 및결과 매핑을 대신해준다.
시스템에 로드밸런싱 구조를 적용할 경우 장점은 무엇인가? 로드밸런싱은 Client 요청이 많아 발생하는 서버 트래픽이 폭주할 때 여 러 서버로 분산시켜 전체 시스템의 부하를 처리할 수 있도록 한다. 이에 따라서 부하로 인한 속도 저하, 서버의 상태 등을 고려하여 적절히 서비스를 분산시켜 줄 수 있다. 또한, 1대의 서버 장애가 발생하여도 서비스 중단 없이 다른 서버로 적절히 자동으로 분배하여 서비스가 계속 운용할 수 있도록 할 수 있다. 현재 시스템은 WAS인 Tomcat 서버 2개로 분산시켰고, 앞 단에 로드밸런서인 Nginx를 위치시키고 연동하였다.
질의응답 정보가 도움이 되었나요?
섹션별 컨텐츠 바로가기

AI-Helper ※ AI-Helper는 오픈소스 모델을 사용합니다.

AI-Helper 아이콘
AI-Helper
안녕하세요, AI-Helper입니다. 좌측 "선택된 텍스트"에서 텍스트를 선택하여 요약, 번역, 용어설명을 실행하세요.
※ AI-Helper는 부적절한 답변을 할 수 있습니다.

선택된 텍스트

맨위로