서지주요정보
Refactoring for scalability in server components = 서버 컴포넌트의 확장성을 위한 재구성 기법
서명 / 저자 Refactoring for scalability in server components = 서버 컴포넌트의 확장성을 위한 재구성 기법 / Jae-Eun Kwon.
저자명 Kwon, Jae-Eun ; 권재은
발행사항 [대전 : 한국과학기술원, 2001].
Online Access 원문보기 원문인쇄

소장정보

등록번호

8011980

소장위치/청구기호

학술문화관(문화관) 보존서고

MCS 01010

휴대폰 전송

도서상태

이용가능

대출가능

반납예정일

등록번호

9007595

소장위치/청구기호

서울 학위논문 서가

MCS 01010 c. 2

휴대폰 전송

도서상태

이용가능

대출가능

반납예정일

초록정보

Scalability of server, the number of clients which can handle with the limited resources, plays a crucial role for server performance and maintenance. It is a widespread consensus that server components should be stateless to implement a scalable server. However, there is little systematic approaches to make a server stateless. Making stateless server still have been a tip implemented through expert experiences. Therefore, we suggest a refactoring method to transform a stateful server to a stateless server through refactoring. Refactorings are behavior-preserving program transformations which can aid in restructuring of legacy designs. Refactorings have very mature foundations and recently many refactoring researches have been performed, but mentioned techniques does not concern itself with how to use existing refactoring rules to achieve specific non-functionality. Thus, our proposed refactoring method contains the systematic guidance of how to use refactorings to transform a stateless server to a stateful server. We propose strategies to find stateful components and to apply refactoring rules to each component, then suggest an algorithm to refactoring a server with many components. We have conducted an empirical study with an example, simple banking system. As a result, we successively transformed a stateful server to a stateless server.

서버 컴포넌트의 확장성(scalability), 즉 제한된 자원으로 처리할 수 있는 클라이언트의 수는 서버의 성능과 유지에 매우 결정적인 요인으로 작용한다. Server-side architecture인 Enterprise JavaBeans(EJB)와 Microsoft Transaction Server(MTS)는 각각 서버의 확장성을 위한 메카니즘을 제공하고 있고, 이 메카니즘들은 서버의 상태 비유지(stateless), 즉 서버가 클라이언트의 정보를 유지 하지 않는다는 사실을 전제로 하고 있다. 서버의 확장성을 증대하기 위해 서버를 상태 비유지로 구성해야한다는 사실은 널리 받아들여지고 있는 사실이다. 그러나 확장성을 증가시키기 위해 상태 유지(stateful) 서버를 상태 비유지 서버로 만드는 체계적인 방법이 부족한 실정이다. 따라서 우리는 재구성(refactoring)을 통해 상태 유지 서버를 상태 비유지 서버로 전이시키는 방법을 제안하였다. 재구성은 기존의 프로그램을 행위의 변화 없이 재구조화시키는 방법이다. 재구성은 일반적인 디자인 전이에 관해 많은 연구가 진행되었지만, 특정한 비기능성을 증가시키기 위해 재구성을 어떻게 적용할 것인가에 대한 연구는 부족하였다. 우리가 제안한 방법은 상태 유지 서버를 상태 비유지 서버로 전이시키기 위한 체계적인 재구성의 적용을 시도하고 있다. 우리는 먼저 상태 유지 서버와 컴포넌트를 정의하고, 상태 유지 정보를 찾아내는 정당성을 증명하였다. 그리고 정의에 따라 상태 유지 컴포넌트를 찾고, 재구성을 체계적으로 적용하는 알고리즘을 제안하였다. 그리고 상호 의존 관계를 가지는 컴포넌트들로 구성된 서버를 상태 비유지 상태로 만들기 위한 알고리즘을 제안하고, 이 재구성이 행위를 변화시키지 않음을 증명하였다. 마지막으로 간단한 은행 시스템의 예제를 통해 우리가 제안한 방법이 성공적으로 상태 유지 서버를 상태 비유지 서버로 전이시킴을 보였다.

서지기타정보

서지기타정보
청구기호 {MCS 01010
형태사항 [v], 61 p. : 삽도 ; 26 cm
언어 영어
일반주기 Includes appendix
저자명의 한글표기 : 권재은
지도교수의 영문표기 : Doo-Hwan Bae
지도교수의 한글표기 : 배두환
학위논문 학위논문(석사) - 한국과학기술원 : 전산학전공,
서지주기 Reference : p. 58-60
주제 Refactoring
Server Components
Scalability
재구성
서버 컴포넌트
확장성
QR CODE qr code