News & 기고POST
Service Management Enterprise Solution 분야의 리더가 되겠습니다.
클라우드 2.0시대 EGENE SaaS의 행보
작성자
admin
작성일
2024-01-15 04:10
조회
677
클라우드 2.0시대 EGENE SaaS의 행보
Micro Service Architecture란 무엇인가?
마이크로서비스 아키텍처(Microservices Architecture, MSA)는 소프트웨어 시스템을 작고 독립적인 서비스로 나누어 개발하고 배포하는 아키텍처 패러다임입니다. 전통적인 단일 모놀리식(monolithic) 아키텍처와 대조적으로, MSA는 여러 서비스로 분할된 작은 기능 모듈들로 구성됩니다. 각 서비스는 자체적인 데이터베이스, 비즈니스 로직, 사용자 인터페이스를 포함할 수 있으며, 독립적으로 배포 및 확장될 수 있습니다.MSA의 주요 특징과 원칙은 다음과 같습니다:
- 독립성과 분리성: 각 마이크로서비스는 자체적인 기능을 수행하며, 독립적으로 배포될 수 있습니다. 이로써 한 서비스의 장애가 전체 시스템에 미치는 영향이 줄어듭니다.
- 자체적인 데이터 관리: 각 서비스는 자체적인 데이터베이스를 가지며, 데이터의 소유와 관리를 독립적으로 수행합니다.
- API 통신: 서비스 간의 통신은 주로 API를 통해 이루어집니다. 각 서비스는 필요한 데이터를 요청하고 응답을 주고받습니다.
- 독립적인 배포: 각 서비스는 독립적으로 개발, 테스트, 배포될 수 있습니다. 이는 지속적 통합과 지속적 배포(CI/CD)를 쉽게 구현할 수 있음을 의미합니다.
- 기술 다양성: 각 서비스는 자체적인 기술 스택을 선택할 수 있습니다. 이는 최신 기술의 도입이 용이하며, 특정 기술에 의존하지 않고 다양한 기술을 혼합하여 사용할 수 있습니다.
모놀리식 아키텍쳐는 모든 기능이 하나로 구현된 애플리케이션 구조를 말하며 현 EGENE과 같이 하나의 서버에서 서비스하는 애플리케이션이 모놀리식 아키텍쳐입니다. 거의 모든 시스템이 이러한 모놀리식 아키텍쳐 구조이며 기본적이으로 빠른 서비스 개발이 가능한 구조입니다. 하지만 기능이 많아지고 시스템이 복잡해지면서 기능 반영 시간이 길어지고 시스템의 안정성이 떨어진다는 문제도 안고 있습니다.
모놀리식 아키텍쳐의 단점은 무엇을까?
- 단일 애플리케이션 구조: 변경에 대한 영향도가 커서 제품의 신뢰도가 떨어진다.
- 모듈간 높은 응집도: 시스템 복잡도가 높기때문에 진입 장벽이 높다.
- 유지보수 및 배포 어려움: 전체 애플리케이션을 업데이트 하고 배포하기 어렵고 시간이 오래 걸린다.
EGENE 클라우드 SaaS 서비스 행보
클라우드 SaaS 서비스는 기존 On-Premise 방식과 다르게 온라인 환경에서 사용자가 제공되는 서비스를 구독하는 형태이기 때문에 빠른 개발과 배포가 필요하고 특히나 EGENE은 엔터프라이즈 시스템이기 때문에 확장성 또한 뛰어나야 합니다.MSA 전환의 가장 우선이 되고 큰 문제는 마이크로 서비스 분리였으며, 마이크로 서비스 분리 방법은 기능단위 분리, 소스단위 분리, 서비스단위 분리 등 다양하게 있습니다. EGENE의 경우 구축 플랫폼의 성격이 강한 애플리케이션이고 마이크로 서비스당 데이터베이스 분리 원칙이 있기 때문에 마이크로 서비스 정의에 많은 어려움이 있었습니다.
많은 검토를 통해 EGENE SaaS 서비스는 플랫폼으로 역할별로는 사용자 ITSM 서비스와 관리자 콘솔 서비스가 분리되었고 기능별로는 인증 서비스, 인터페이스 서비스가 분리되었습니다.
- 사용자 서비스: ITSM 서비스 사용자가 로그인하고 사용하는 서비스이며 향후 PMS등 다양한 서비스로 분리됩니다.
- 콘솔 서비스: 고객 관리자가 서비스 관리를 위한 시스템이며 사용자관리 및 EGENE 패키지가 제공하는 도구를 이용하여 서비스 커서터마이징을 수행합니다.
- 인증 서비스: EGENE SaaS 서비스는 안전한 통합 로그인 서비스를 제공합니다.
- 인터페이스 서비스: 서비스 속도에 영향을 줄 수 있는 메일, 메신저 등 외부 시스템과 연동을 담당하는 서비스로 비 동기 처리를 수행합니다.
[그림] MSA Architecture 구조
에스티이지는 이번 과제 수행을 통해 EGENE을 짧은 시간에 MSA 구조로 변화하고 SaaS 서비스 오픈이라는 성과를 달성하였으며, 시작은 성공적이라 할 수 있습니다. 하지만 클라우드 2.0 시대에서 높은 경쟁력을 갖추기 위해서도, 만족도 높은 서비스를 제공하기 위해서도 지속적인 개선과 노력이 필요할 것입니다.
이를 위해 에스티이지 EGENE의 서비스 개선 활동은 계속 되어질 것입니다.
- Front-End와 Back-End 분리: JSP를 이용한 동적 화면을 제공하기 때문에 서비스 속도가 느려지는 문제가 있는데 다이내믹한 ui/ux 제공과 속도 향상을 위해서 front-end 애플리케이션의 개편.
- 서비스 API 정의: 플랫폼으로서 많은 기능을 제공하지만 제공되는 서비스의 구분이 모호하기 때문에 이용자를 위한 서비스 기준의 API가 정의.
㈜에스티이지 R&D센터 고재학 이사