어드민 10월 15일, 2021에 포스트됨 공유하기 10월 15일, 2021에 포스트됨 Emad Bin Abid 가 작성한 Everything You Need To Modernize With RAD Server (영문 원본 보기) 를 번역했습니다. 현대 사회에서 우리는 기술에 둘러싸여서 파묻혀있고 그 기술의 형태도 다양하다. 전적으로 클라우드 기반인 기술이 대부분이긴 하지만 여전히 상당 부분은 클라우드와 물리적인 하드웨어 컴퓨팅 장비가 함께 섞여 있기도 하다. 하지만 아무리 최신 기술이라도 결국은 더 최신 기술에 의해 밀려나고 시대에 뒤쳐지게 되는 때가 반드시 온다는 사실 하나는 분명하다. 모든 기술이 각자 급격하게 발전하지만, 결국 이런 발전된 기술이 제공하는 더 발전된 단계에 의해서 또는 문제를 해결하거나 서비스를 제공하는 방식 자체가 더 새롭고 강력한 그 무언가에 의해 교체되고 만다. 기술과 애플리케이션이 뒤안길로 사라지지 않도록 지키려면, 끊임없이 기능을 업드레이드하고 다가올 트렌드와 사용 방식을 예측하여 반영해야 한다. 단순 명쾌하다.그리고, 이 과정에서 어떤 작업은 매우 고될 수도 있다. 애플리케이션이 복잡하고 코드 기반이 너무 광범위한 경우에는 특히 그렇다. 또한 애플리케이션에서 사용된 많은 라이브러리와 프레임워크들 중에는 단종되거나, 쓸모없어지거나 업데이트가 필요한 것들도 있다. 애플리케이션을 업그레이드하고 현대화하는 어려움을 극복하려면, RAD 서버와 같이 그 과정을 세련되게 진행할 수 있는 강력한 수단을 제공하는 견고한 개발 솔루션이 필요하다. 우리는 이런 수단을 통해서 변경을 어떻게 해낼 것인 지에 대한 감을 잡을 수 있다. 그리고 이런 수단들 자체가 직접 현대화 작업 자체를 가이드하는 역할을 하기도 한다. 이 글은 RAD 서버를 사용하여 현대화 하는 것이 어떤 것인지 왜 애플리케이션에서 필수 요소이고 최우선으로 고려해야 하는 지를 들여다 본다. 애플리케이션을 현대화 해야하는 이유는? 불과 5년 전과 비교해도, 소프트웨어 개발 분야는 상당히 달라졌다. 운영체제의 추상화와 지원 능력이 발전함에 따라 애플리케이션은 하드웨어 장비의 리소스를 훨씬 더 효율적으로 사용한다. 컴포넌트 생태계가 풍부해 지고, 개발 도구 업계가 더 성숙해졌고, 프로그래밍 언어의 범위도 넓어짐에 따라 애플리케이션이 복잡한 처리를 이전보다 더 잘 수행할 수 있도록 하는 코드를 구현하는 과정 역시 더 최적화되었다. 이런 환경에서 우리의 애플리케이션이 살아남기 위해서는, 현대화를 해야 하고, 이전보다 더 많은 서비스를 제공해야 한다. 웹 애플리케이션 개발을 살펴보면, 웹 브라우저와 그 렌더링 능력이 발전함에 따라 웹 애플리케이션은 훨씬 더 동적이고 견고해졌다. 웹 애플리케이션을 개발 속도 역시 엄청나게 빨라졌다. 또한 화면 렌더링 측면에서는 반응형 UI 기술이, 그리고 장비의 센서 활용 면에서는 여러 하드웨어 센서와 기능의 최소한의 공통 분모를 다룰 수 있는 속성과 메소드를 제공하는 API와 같은 기술이 나온 덕분에, 제대로 만든 웹 애플리케이션이라면 모든 장비에서 사용할 수 있다. 모듈화는 마이크로서비스를 통해 실현되었고, 서버리스(Serverless)를 통해 운영 경제성까지 갖추었다. 보안성과 확장성 역시 애플리케이션 개발과 관련하여 매우 중요한 요소가 되었다. 사이버 공격이 증가함에 따라, 애플리케이션은 모든 면에서 보안성이 확보해야 하고, 관련된 베스트 프랙티스 (가장 좋다고 검증된 조치법)를 반영해야 한다. 또한 애플리케이션의 확장성을 확보하여 많은 사용자를 품을 수 있고 필요할 때 바로 사용될 수 있어야 한다. 이런 것들이 없이는 경쟁에서 밀리고 결국 잊혀지게 될 수도 있다. RAD 서버는 무엇인가? 어디에 사용되는가? RAD 서버는 현재 백-엔드 개발 애플리케이션 분야에서 앞서가는 솔루션 중 하나로서, 애플리케이션 서비스를 구축하고 배포할 수 있도록 하는 플랫폼이다. 여러 뛰어난 장점들을 갖추고 있으며 특히 백-엔드를 구축하려고 마음 먹으면 RAD 서버를 사용하여 바로 시작할 수 있다. API를 개발하고 애플리케이션을 서비스 하는데 필요한 기능 대부분이 이미 준비되어 있기 때문에 백-엔드 서버 전체를 맨 처음부터 시작하지 않아도 된다. 필요한 외부의 서버와 서비스는 RAD 서버를 통해 손쉽게 연결할 수 있다. MySQL, 오라클, SQL 서버, 인터베이스(Interbase) 등 거의 모든 엔터프라이즈 데이터베이스 기술에 연결할 수 있다. RAD 서버에는 사용자 관리 서비스, 디렉토리 서비스 등의 중요한 백-엔드 기능이 이미 들어 있다. 특히 정기적으로 솔루션을 개발하고 재배포하는 소프트웨어 제조사에게는 가장 도움이 되는 도구가 될 것이다. RAD 서버를 사용하면 REST API와 해당 엔드포인트를 작성, 공개, 관리를 빠르게 할 수 있다. 더 나아가 API 분석 기능, 성능과 이슈 모니터링 등의 기능이 내장되어 있어서 바로 사용하면 된다. 또한 사용자 관리, 그룹관리, 접근 제어를 할 수 있는 관리 포털도 제공된다 RAD 서버를 사용하여 애플리케이션을 현대화하는 방법은? RAD 서버에 내장되어서 바로 쓸 수 있는 백-엔드 개발과 플랫폼 모니터링 기능은 제쳐두고, 기존의 델파이와 C++빌더로 만든 기존의 클라이언트/서버에 있는 비즈니스 로직을 RAD 서버를 통해 어떻게 현대화 할 수 있는 지를 살펴보자. RAD 서버를 사용하면 기존의 애플리케이션 로직을 보안성과 확장성이 높은 서비스 기반 아키텍처로 손쉽게 마이그레이션 할 수 있다. 서비스 기반 아키텍처는 애플리케이션이 원활하게 작동할 수 있도록 하기 위해 서비스가 필요한 애플리케이션 구성 요소에게 해당 서비스를 제공하는 것에 촛점을 맞춘다. 애플리케이션이 일단 RAD 서버로 옮겨서 현대화되고 나면, 많은 이점을 누릴 수 있으며 이전보다 훨씬 많은 것을 제공할 수 있다. 전용 관리 콘솔, 배포 간편, 내장된 통계 콘솔 역시 RAD 서버의 장점이다. 또한 마이그레이션된 기존의 비즈니스 로직을 서비스하는 엔드포인트를 생성하고 관리할 수 있다. RAD 서버를 사용하여 현대화를 하면 다음과 같은 장점들 역시 갖출 수 있다. 클라우드 서비스 연결 능력: 거의 모든 기술 분야에서 클라우드 컴퓨팅과 여기에 연결하는 능력이 생존을 결정하게 될 미래가 빠르게 다가오고 있다. RAD 서버를 사용하면 구글, 아마존, 등등 대표적인 클라우드 플랫폼에서 제공하는 REST 클라우드 서비스를 수용할 수 있다. 도커(Docker)를 견고하게 지원: 컨테이너 기술은 최근의 소프트웨어 개발 산업에서 가장 큰 혁신이다. 그 중에서도 도커(Docker)는 거의 모든 곳에서 사용되는 지배적인 컨테이너 서비스이다. RAD 서버를 사용하면 도커 이미지를 만들고 도커 허브 (Docker Hub)에 올려둘 수 있어서 구글 클라우드, 마이크로소프트 애저, AWS로 간단하게 배포할 수 있다. 사물인터넷 장비 연결 능력: 사물인터넷은 강력한 네트워크 그리고 속도가 빠른 데이터 전송 환경을 바탕으로 하는 멋진 기술이다. 사물인터넷을 지원하는 장비는 필요한 애플리케이션과 바로 연결되어 작동할 수 있다. RAD 서버를 사용하면, 사물인터넷 장비를 여러분의 애플리케이션 서비스에 손쉽게 연결할 수 있다. 위 기능들은 오늘날의 디지털 시대의 첨단 기술이다. RAD 서버로 마이그레이션을 하면, 이제 여러분도 이런 첨단 기능을 갖출 수 있으며 서비스 기반 접근을 반영할 수 있다. RAD 서버의 능력을 살펴볼 수 있는 사례는? 초창기의 RAD 서버는 가장 먼저나온 백-엔드 개발 플랫폼은 아니지만, 그 서비스와 기능을 통해서 백-엔드의 기준을 세웠다. 많은 기업과 개발자들이 비즈니스 로직 처리를 담당하는 백-엔드 서비스를 제공하는 견고한 애플리케이션을 만들기 위해 RAD 서버를 사용해오고 있다. RAD 서버를 활용하는 아래의 프로젝트를 보면, 여러분이 바랬던 어플리케이션이 어떤 모습일지에 대해좋은 아이디어를 얻을 수 있을 것이다. 아래 내용은 RAD 스튜디오에 들어있는 예제들이다. RAD 서버가 애플리케이션에 어떻게 생명을 주는 지를 볼 수 있다. RAD 서버 멀티-테넌시 예제: 일반적인 소매점을 위한 예제이다. 여기에는 EMS(enterprise management system)을 활용하며, 파이어닥(FireDAC) 컴포넌트를 사용하여 데이터베이스에 연결한다. 또한 RAD 서버 콘솔을 통해 엔드포인트의 갯수와 사용 빈도 등의 통계를 보는 기능도 볼 수 있다. RAD 서버 파이어닥(FireDAC) 리소스 예제: 파이어닥(FireDAC)은 델파이에서 데이터를 연결할 때 사용하는 컴포넌트 세트로써 엔터프라이즈 데이터베이스 연결 속도가 빠르다. 이 예제는 EMS서버와 여기에 연결하는 클라이언트를 만드는 프로젝트이며, 파이어닥(FireDAC)을 사용하여 SQLite 데이터베이스에 연결한다. RAD 서버 콘솔은 별도로 하고, 이 예제의 EMS 서버는 RAD 서버 엔진을 기반으로 작동한다. 따라서, 해당 서버 호스트를 클라우드에 둘 수도 있고, 온프레미스에 둘 수도 있다. 위 예제와 별개로, 이와 비슷하게 RAD 서버를 충분히 활용하는 사례 템플릿들도 있고 원하면 가져다 쓸 수도 있다. 예를 들어, RAD 서버 간호사실(RAD Server Nurses Station) 템플릿은 병원/의원에서 환자 데이터를 자동으로 수집하는 기능이 구현되어 있다. 이 템플릿에는 사용자 관리, 데이터 수집과 배포, 알림 서비스 등 RAD 서버가 이미 내장하고 있는 기본 기능들도 사용하고 있다. 또한 다른 시스템이 연결할 때 REST HIPPA(미국의 개인의료 정보 보호 규정) 연결을 활성화하는 기능도 있다. 당신의 델파이 애플리케이션을 현대화하고 마이그레이션 할 준비가 되었다면, RAD 서버를 살펴보자. 어떻게 활용하면 원하는 목적을 이룰 수 있는 지를 알 수 있다. 인용하기 이 댓글 링크 다른 사이트에 공유하기 더 많은 공유 선택 사항
Recommended Posts
이 토의에 참여하세요
지금 바로 의견을 남길 수 있습니다. 그리고 나서 가입해도 됩니다. 이미 회원이라면, 지금 로그인하고 본인 계정으로 의견을 남기세요.