Offcanvas

���������

'LAMP 넘어설까?'··· 차세대 웹 개발 철학 잼스택 안내서

잼스택(Jamstack)은 점점 인기가 높아지고 있는 웹 개발 방식으로, 웹 개발 및 웹 페이지의 다운로드 속도를 높이기 위해 주로 사용된다. 데브옵스와 CI/CD에서 파생된 잼스택은 인터랙티브 웹 페이지 구축의 오랜 전통을 뒤집었다는 점에서 주목받고 있다. 그중 핵심은 로드 타임 코드 실행을 웹 서버가 아닌 브라우저 내 자바스크립트나 API로 접근할 수 있는 외부 서비스에서 진행하는 부분이다. 이는 매우 개발자 친화적인 방식으로, 궁극적으로 렌더링 속도를 높이고 여러 플랫폼에 맞춤화할 수 있는 정적 웹사이트를 구축할 때 사용된다.    잼스택과 LAMP 스택의 차이 잼스택은 자바스크립트, API, 마크업(Markup)이라는 세 가지 축을 기반으로 하는 웹 애플리케이션 아키텍처다. JAM이라는 단어도 이 세 기술의 앞 자에서 따왔다. 잼스택을 추구하는 웹 페이지는 표준 마크업 언어로 구성돼서, 애플리케이션 서버 또는 노드JS와 같은 서버 사이드 기술에 의존하지 않고 어디서나 빌드하고 테스트할 수 있다. 이때 인터랙티브 기능은 표준 브라우저에서 실행되는 자바스크립트 코드로 제공된다. 이 코드는 HTTPS를 통해 재사용할 수 있는 API를 호출하며, 해당 호출은 다시 웹페이지에 넣을 수 없는 외부 데이터 및 다른 기능에 액세스하기 위해 사용된다.  잼스택이 왜 혁신적인지 알아보려면 일단 LAMP(Linux Apache MySQL PHP) 스택부터 살펴봐야 한다. LAMP 스택은 지난 15년간 웹 개발자가 선택하는 대표적인 개발 방식이었다. LAMP는 리눅스(웹 서버를 구동하는 OS), 아파치(리눅스 시스템에서 실행되는 서버 소프트웨어), MySQL(웹 애플리케이션 데이터가 저장되는 데이터베이스), PHP/펄/파이썬(서버 사이드 작성 언어)의 각 첫 글자를 따와 만든 단어다. LAMP 기반 웹사이트를 방문하면 웹 서버는 서버 사이드 코드를 실행하며, 이 코드는 필요할 때마다 MySQL 데이터베이스에서 데이터를 가져와 웹 페이...

잼스택 JAM LAMP 넷틀리파이 개츠비 정적사이트생성기

2022.06.17

잼스택(Jamstack)은 점점 인기가 높아지고 있는 웹 개발 방식으로, 웹 개발 및 웹 페이지의 다운로드 속도를 높이기 위해 주로 사용된다. 데브옵스와 CI/CD에서 파생된 잼스택은 인터랙티브 웹 페이지 구축의 오랜 전통을 뒤집었다는 점에서 주목받고 있다. 그중 핵심은 로드 타임 코드 실행을 웹 서버가 아닌 브라우저 내 자바스크립트나 API로 접근할 수 있는 외부 서비스에서 진행하는 부분이다. 이는 매우 개발자 친화적인 방식으로, 궁극적으로 렌더링 속도를 높이고 여러 플랫폼에 맞춤화할 수 있는 정적 웹사이트를 구축할 때 사용된다.    잼스택과 LAMP 스택의 차이 잼스택은 자바스크립트, API, 마크업(Markup)이라는 세 가지 축을 기반으로 하는 웹 애플리케이션 아키텍처다. JAM이라는 단어도 이 세 기술의 앞 자에서 따왔다. 잼스택을 추구하는 웹 페이지는 표준 마크업 언어로 구성돼서, 애플리케이션 서버 또는 노드JS와 같은 서버 사이드 기술에 의존하지 않고 어디서나 빌드하고 테스트할 수 있다. 이때 인터랙티브 기능은 표준 브라우저에서 실행되는 자바스크립트 코드로 제공된다. 이 코드는 HTTPS를 통해 재사용할 수 있는 API를 호출하며, 해당 호출은 다시 웹페이지에 넣을 수 없는 외부 데이터 및 다른 기능에 액세스하기 위해 사용된다.  잼스택이 왜 혁신적인지 알아보려면 일단 LAMP(Linux Apache MySQL PHP) 스택부터 살펴봐야 한다. LAMP 스택은 지난 15년간 웹 개발자가 선택하는 대표적인 개발 방식이었다. LAMP는 리눅스(웹 서버를 구동하는 OS), 아파치(리눅스 시스템에서 실행되는 서버 소프트웨어), MySQL(웹 애플리케이션 데이터가 저장되는 데이터베이스), PHP/펄/파이썬(서버 사이드 작성 언어)의 각 첫 글자를 따와 만든 단어다. LAMP 기반 웹사이트를 방문하면 웹 서버는 서버 사이드 코드를 실행하며, 이 코드는 필요할 때마다 MySQL 데이터베이스에서 데이터를 가져와 웹 페이...

2022.06.17

칼럼|언제 잼스택을 도입하는 것이 맞을까?

잼스택은 앱 서버나 서버 기술에 대한 종속 없이 웹사이트를 빌드하고 테스트할 수 있도록 해주는 웹 애플리케이션 모델이다. 어떤 경우에 잼스택을 도입하면 좋을지에 대해 헤드리스 CMS인 스토리블록(Storyblok)의 CEO 도미닉 앵거러가 의견을 전했다. 다들 한번쯤 이런 질문을 던져봤을 것이다. 기술은 점점 더 빠르고, 세련되며, 직관적으로 발전하고 있는데 웹 사이트는 왜 정반대로 가는 것처럼 보일까? 최근의 많은 연구에 따르면 웹 사이트의 로딩 속도와 기능에 대한 소비자 불만이 증가하고 있다. 웹 사이트가 기업의 중요한 채널임을 고려한다면 웹사이트의 성능 저하는 진지하게 고려해볼 만한 문제다.    웹사이트의 성능이 왜 뒤처지고 있을까 웹사이트의 성능이 저하되는 원인은 무엇일까? 대부분의 경우, 불충분하거나 부적절한 인프라 위에 여러 기능들이 구축돼 있기 때문이다. 달리 말해, 웹사이트에서 기능, 통신, 데이터 전송 측면에서 많은 작업을 할 수 있을 것 같아도, 인프라를 비롯해 웹사이트를 뒷받침하는 설계나 개발 방법이 발전하지 못했기 때문이다. 이는 마테크가 발전하고 소비자의 기대치가 높아짐에 따라 점점 더 많은 기업에 영향을 끼칠 수 있는 문제다.  이 문제를 해결할 수 있는 여러 선택지가 있다. 가장 확실한 방법은 최신 기술 인프라와 현대적인 기능을 토대로 웹사이트를 처음부터 다시 구축하는 것이다. 그러나 이 작업은 비용과 시간이 많이 소모되기 때문에 얻을 수 있는 이득이 제한적이다. 웹 사이트의 KPI만을 염두에 두고 추진될 경우 더욱 그렇다. 웹페이지를 처음부터 재구축하는 것이 직접적인 처방은 될 수는 있겠지만, 결국 한번 시도만 해보고 그만두게 될 공산이 크다.  대신 웹 사이트의 구축, 업데이트 및 유지 관리에 대한 실제 메커니즘과 이를 클라우드 네이티브 방식으로 더욱 광범위하게 통합하는 방법을 재고해보는 게 좋다. 그런 점에서 잼스택은 고려해볼 만한 가치가 있다. ...

잼스택 웹사이트 헤드리스 cms 넷틀리파이 웹페이지 자바스크립트 API 마크업

2021.06.04

잼스택은 앱 서버나 서버 기술에 대한 종속 없이 웹사이트를 빌드하고 테스트할 수 있도록 해주는 웹 애플리케이션 모델이다. 어떤 경우에 잼스택을 도입하면 좋을지에 대해 헤드리스 CMS인 스토리블록(Storyblok)의 CEO 도미닉 앵거러가 의견을 전했다. 다들 한번쯤 이런 질문을 던져봤을 것이다. 기술은 점점 더 빠르고, 세련되며, 직관적으로 발전하고 있는데 웹 사이트는 왜 정반대로 가는 것처럼 보일까? 최근의 많은 연구에 따르면 웹 사이트의 로딩 속도와 기능에 대한 소비자 불만이 증가하고 있다. 웹 사이트가 기업의 중요한 채널임을 고려한다면 웹사이트의 성능 저하는 진지하게 고려해볼 만한 문제다.    웹사이트의 성능이 왜 뒤처지고 있을까 웹사이트의 성능이 저하되는 원인은 무엇일까? 대부분의 경우, 불충분하거나 부적절한 인프라 위에 여러 기능들이 구축돼 있기 때문이다. 달리 말해, 웹사이트에서 기능, 통신, 데이터 전송 측면에서 많은 작업을 할 수 있을 것 같아도, 인프라를 비롯해 웹사이트를 뒷받침하는 설계나 개발 방법이 발전하지 못했기 때문이다. 이는 마테크가 발전하고 소비자의 기대치가 높아짐에 따라 점점 더 많은 기업에 영향을 끼칠 수 있는 문제다.  이 문제를 해결할 수 있는 여러 선택지가 있다. 가장 확실한 방법은 최신 기술 인프라와 현대적인 기능을 토대로 웹사이트를 처음부터 다시 구축하는 것이다. 그러나 이 작업은 비용과 시간이 많이 소모되기 때문에 얻을 수 있는 이득이 제한적이다. 웹 사이트의 KPI만을 염두에 두고 추진될 경우 더욱 그렇다. 웹페이지를 처음부터 재구축하는 것이 직접적인 처방은 될 수는 있겠지만, 결국 한번 시도만 해보고 그만두게 될 공산이 크다.  대신 웹 사이트의 구축, 업데이트 및 유지 관리에 대한 실제 메커니즘과 이를 클라우드 네이티브 방식으로 더욱 광범위하게 통합하는 방법을 재고해보는 게 좋다. 그런 점에서 잼스택은 고려해볼 만한 가치가 있다. ...

2021.06.04

'클라우드는 멋진 신세계'··· 개발자가 만들고 과학자·엔지니어가 만끽한다

시장분석 업체 레드몽크(Redmonk)가 퍼뜨린 “개발자는 새로운 킹메이커”라는 말은 이제 상투적인 표현에 가까워졌다. 그러나 개발자에게 (인프라를 통해) 역량을 부여하는 것의 핵심에 있는 것은 개발자가 아니라, 기업이 제품을 구축하는 방식의 변화였다.   또 궁극적으로는 이러한 제품을 구축하는 주체가 누구인지가 핵심 논점이다. 물론 개발자가 중심에 있지만, 최근 마이크로소프트와 엔비디아, 삼성이 모두 참여한 리스케일(Rescale)의 시리즈 C 펀딩을 보면 지금은 개발자가 구축한 플랫폼에서 다른 사람들이 어떤 결과물을 내고 있는지 살펴보기에 적절한 시점인 것 같다. 구체적으로는 엔지니어와 과학자들이 큰 수혜자이며 결과적으로 이들이 과학적 진보의 속도를 비약적으로 높이고 있다.     PhD 생산성 견인 우선 개발자로 돌아가 보자. 모든 기업이 소프트웨어 기업이 되려고 부산하게 움직이는 지금, 개발자는 모든 기업이 귀중하게 여기는 보물과 같다. 개발 팀은 더 이상 아웃소싱해야 하는 코스트 센터가 아니라 이제 비즈니스를 견인하는 최상위 수익 창출자로 인식된다. 경영진은 성장의 동력으로 개발자에게 투자해야 한다는 것을 배웠다. OpEx 클라우드 컴퓨팅이 부상하면서 이 추세는 더욱 공고해졌다.   하지만 개발자는 그 자체로는 최종 목표가 된 역사가 없다. 개발자는 다른 사람들이 기업의 생산성에 더 완전하게 기여할 수 있도록 길을 닦는 역할을 했을 뿐이다. 구체적으로 말해, 개발자의 스포트라이트 중 일부를 이제는 엔지니어와 과학자가 가져와야 한다. 이러한 고임금 전문가들(보통 박사 학위자)은 엄청나게 비싸면서도 연구 속도를 늦추는 맞춤형 온프레미스 하드웨어에서 방대한 워크로드를 실행하려고 대기 행렬을 만드는 데 익숙하다. 그리고 마지막 작업에서 배운 것을 반복하려면 다시 줄의 맨 뒤로 가야 한다.   하지만 과거는 과거고 지금은 지금이다.   엔지니어와 과학자들이 클라우드라는 바뀐 환경에서 실제 세계 조건을 시...

과학자 CICD 잼스택 HPC

2021.02.18

시장분석 업체 레드몽크(Redmonk)가 퍼뜨린 “개발자는 새로운 킹메이커”라는 말은 이제 상투적인 표현에 가까워졌다. 그러나 개발자에게 (인프라를 통해) 역량을 부여하는 것의 핵심에 있는 것은 개발자가 아니라, 기업이 제품을 구축하는 방식의 변화였다.   또 궁극적으로는 이러한 제품을 구축하는 주체가 누구인지가 핵심 논점이다. 물론 개발자가 중심에 있지만, 최근 마이크로소프트와 엔비디아, 삼성이 모두 참여한 리스케일(Rescale)의 시리즈 C 펀딩을 보면 지금은 개발자가 구축한 플랫폼에서 다른 사람들이 어떤 결과물을 내고 있는지 살펴보기에 적절한 시점인 것 같다. 구체적으로는 엔지니어와 과학자들이 큰 수혜자이며 결과적으로 이들이 과학적 진보의 속도를 비약적으로 높이고 있다.     PhD 생산성 견인 우선 개발자로 돌아가 보자. 모든 기업이 소프트웨어 기업이 되려고 부산하게 움직이는 지금, 개발자는 모든 기업이 귀중하게 여기는 보물과 같다. 개발 팀은 더 이상 아웃소싱해야 하는 코스트 센터가 아니라 이제 비즈니스를 견인하는 최상위 수익 창출자로 인식된다. 경영진은 성장의 동력으로 개발자에게 투자해야 한다는 것을 배웠다. OpEx 클라우드 컴퓨팅이 부상하면서 이 추세는 더욱 공고해졌다.   하지만 개발자는 그 자체로는 최종 목표가 된 역사가 없다. 개발자는 다른 사람들이 기업의 생산성에 더 완전하게 기여할 수 있도록 길을 닦는 역할을 했을 뿐이다. 구체적으로 말해, 개발자의 스포트라이트 중 일부를 이제는 엔지니어와 과학자가 가져와야 한다. 이러한 고임금 전문가들(보통 박사 학위자)은 엄청나게 비싸면서도 연구 속도를 늦추는 맞춤형 온프레미스 하드웨어에서 방대한 워크로드를 실행하려고 대기 행렬을 만드는 데 익숙하다. 그리고 마지막 작업에서 배운 것을 반복하려면 다시 줄의 맨 뒤로 가야 한다.   하지만 과거는 과거고 지금은 지금이다.   엔지니어와 과학자들이 클라우드라는 바뀐 환경에서 실제 세계 조건을 시...

2021.02.18

풀스택 서버리스 잼스택 제공하는 ‘레드우드(Redwood)’ 살펴보기

기트허브(GitHub) 공동 창업자 톰 프레스턴워너를 필두로 하는 오픈소스 프레임워크 ‘레드우드(Redwood)’ 프로젝트 개발팀은 잼스택(Jamstack) 애플리케이션 개발을 지원하는 편향적인(opinionated) 풀스택 서버리스 웹 애플리케이션 프레임워크를 제공하고 있다.    ‘레드우드’는 애플리케이션 프론트엔드와 백엔드 모두에서 자바스크립트(JavaScript)를 기본언어로 사용한다. 이렇게 단일 언어를 사용하면 코드 재사용부터 개발자 채용까지 모든 것이 단순해진다고 개발팀은 설명했다.  개발팀은 공식 문서를 통해 ‘레드우드’ 혹은 ‘레드우드.js’를 설명하면서, CDN에 의해 정적으로 딜리버리되는 리액트(React) 자바스크립트 라이브러리 프론트엔드가 그래프QL(GraphQL)을 통해 전 세계의 AWS 람다(AWS Lamba)에서 실행되는 백엔드와 통신하며, 이를 모두 깃 푸시(git push)로 배포할 수 있다고 전했다.  이 밖에 ‘레드우드’를 사용하면, 그 자체로 운영상의 의사결정이 이뤄지기 때문에 다양한 기술과 구성을 선택하고 재선택하는 데 시간을 낭비하는 대신 애플리케이션 개발에 더 집중할 수 있다고 개발팀은 언급했다.  한편 사전 렌더링 및 디커플링 핵심 원칙을 활용하는 ‘잼스택’은 웹을 더 빠르고, 더 안전하며, 더 확장 가능하도록 하는 아키텍처를 제공한다. 잼스택은 최신 데브옵스 개발 철학을 정적 HTML 페이지와 결합한다.  레드우드는 현재 버전 0.20 상태다. 기트허브에서 액세스할 수 있다. 개발팀은 2020년 말에 스테이블 1.0 버전을 출시할 예정이라고 밝혔다. 표준 레드우드 애플리케이션에서 사용할 기술은 다음과 같다.  • 리액트(React) • 그래프QL(GraphQL) • 프리즘 데이터베이스 툴킷(Prism database toolkit) • 제스트 자바스크립트 테스팅 프레임워크(Jest JavaScript testing framework): 출시...

레드우드 잼스택 오픈소스 프레임워크 기트허브 리액트 자바스크립트 그래프QL AWS 람다 프론트엔드 백엔드 데브옵스

2020.11.04

기트허브(GitHub) 공동 창업자 톰 프레스턴워너를 필두로 하는 오픈소스 프레임워크 ‘레드우드(Redwood)’ 프로젝트 개발팀은 잼스택(Jamstack) 애플리케이션 개발을 지원하는 편향적인(opinionated) 풀스택 서버리스 웹 애플리케이션 프레임워크를 제공하고 있다.    ‘레드우드’는 애플리케이션 프론트엔드와 백엔드 모두에서 자바스크립트(JavaScript)를 기본언어로 사용한다. 이렇게 단일 언어를 사용하면 코드 재사용부터 개발자 채용까지 모든 것이 단순해진다고 개발팀은 설명했다.  개발팀은 공식 문서를 통해 ‘레드우드’ 혹은 ‘레드우드.js’를 설명하면서, CDN에 의해 정적으로 딜리버리되는 리액트(React) 자바스크립트 라이브러리 프론트엔드가 그래프QL(GraphQL)을 통해 전 세계의 AWS 람다(AWS Lamba)에서 실행되는 백엔드와 통신하며, 이를 모두 깃 푸시(git push)로 배포할 수 있다고 전했다.  이 밖에 ‘레드우드’를 사용하면, 그 자체로 운영상의 의사결정이 이뤄지기 때문에 다양한 기술과 구성을 선택하고 재선택하는 데 시간을 낭비하는 대신 애플리케이션 개발에 더 집중할 수 있다고 개발팀은 언급했다.  한편 사전 렌더링 및 디커플링 핵심 원칙을 활용하는 ‘잼스택’은 웹을 더 빠르고, 더 안전하며, 더 확장 가능하도록 하는 아키텍처를 제공한다. 잼스택은 최신 데브옵스 개발 철학을 정적 HTML 페이지와 결합한다.  레드우드는 현재 버전 0.20 상태다. 기트허브에서 액세스할 수 있다. 개발팀은 2020년 말에 스테이블 1.0 버전을 출시할 예정이라고 밝혔다. 표준 레드우드 애플리케이션에서 사용할 기술은 다음과 같다.  • 리액트(React) • 그래프QL(GraphQL) • 프리즘 데이터베이스 툴킷(Prism database toolkit) • 제스트 자바스크립트 테스팅 프레임워크(Jest JavaScript testing framework): 출시...

2020.11.04

네트리파이 잼스택 플랫폼, 기트허브 및 기트랩의 자체 호스팅 인스턴스 지원

네트리파이가 이제 기트허브 및 기트랩의 자체 호스팅 인스턴스에서 잼스택 웹사이트 퍼블리싱을 지원한다. 또한 새로운 사용자 단위 서비스 플랜도 공개됐다.  21일(현지 시각) ‘잼스택(Jamstack)’이라는 용어를 처음 고안한 네트리파이가 잼스택을 중심으로 한 자사 웹사이트 구축 플랫폼의 일부로 자체 호스팅한 기트허브(GitHub)와 기트랩(GitLab)의 인스턴스를 지원한다고 발표했다.    네트리파이를 사용하면 웹 프로젝트를 깃 저장소(Git repos)에서 네트리파이의 글로벌 네트워크로 퍼블리싱할 수 있다. 원래 네트리파이는 기트허브와 기트랩 퍼블릭 클라우드에서 호스팅되는 SaaS 기반 기트허브 및 기트랩 저장소 인스턴스만 지원했다.  이제 사용자 온프레미스에 구축된 기트허브 또는 기트랩 저장소에서 퍼블리싱이 가능하다. 이를 통해 기업 고객은 소스 코드를 온프레미스에서 유지 관리하면서 보안 및 제어를 보장받을 수 있다. 네트리파이에 따르면 자사 서비스를 자체 호스팅 저장소에 쉽게 연결할 수 있도록 UI 기반 워크플로우도 제공된다.  자체 호스팅 인스턴스는 ‘엔터프라이즈 플랜(Enterprise plan)’과 ‘비즈니스 플랜(Business plan)’에서 모두 지원된다. 이번에 새로 공개된 ‘비즈니스 플랜’은 보안 및 컴플라이언스 기능을 제공하며, 사용자당 매월 99달러다. ‘엔터프라이즈 플랜’은 고객별로 요금이 맞춤 산정된다. 해당 플랜에는 ‘비즈니스 플랜’의 모든 기능을 비롯해 고성능 웹사이트 구축, 에지 네트워크 제품, 맞춤 계약 청구서, 아키텍처 유효성 검사, 지정된 계정 관리자 등이 포함돼 있다.  잼스택은 데브옵스 및 CI/CD 기법을 활용하는 웹 애플리케이션 모델이다. 이는 로드타임 코드 실행을 웹 서버에서 떼어내고, API를 통해 액세스하는 브라우저 내 자바스크립트 외부 서비스로 옮긴다. ciokr@idg.co.kr

정적 웹사이트 잼스택 네트리파이 기트허브 기트랩 호스팅 인스턴스 웹사이트 퍼블릭 클라우드 온프레미스 Saas

2020.07.23

네트리파이가 이제 기트허브 및 기트랩의 자체 호스팅 인스턴스에서 잼스택 웹사이트 퍼블리싱을 지원한다. 또한 새로운 사용자 단위 서비스 플랜도 공개됐다.  21일(현지 시각) ‘잼스택(Jamstack)’이라는 용어를 처음 고안한 네트리파이가 잼스택을 중심으로 한 자사 웹사이트 구축 플랫폼의 일부로 자체 호스팅한 기트허브(GitHub)와 기트랩(GitLab)의 인스턴스를 지원한다고 발표했다.    네트리파이를 사용하면 웹 프로젝트를 깃 저장소(Git repos)에서 네트리파이의 글로벌 네트워크로 퍼블리싱할 수 있다. 원래 네트리파이는 기트허브와 기트랩 퍼블릭 클라우드에서 호스팅되는 SaaS 기반 기트허브 및 기트랩 저장소 인스턴스만 지원했다.  이제 사용자 온프레미스에 구축된 기트허브 또는 기트랩 저장소에서 퍼블리싱이 가능하다. 이를 통해 기업 고객은 소스 코드를 온프레미스에서 유지 관리하면서 보안 및 제어를 보장받을 수 있다. 네트리파이에 따르면 자사 서비스를 자체 호스팅 저장소에 쉽게 연결할 수 있도록 UI 기반 워크플로우도 제공된다.  자체 호스팅 인스턴스는 ‘엔터프라이즈 플랜(Enterprise plan)’과 ‘비즈니스 플랜(Business plan)’에서 모두 지원된다. 이번에 새로 공개된 ‘비즈니스 플랜’은 보안 및 컴플라이언스 기능을 제공하며, 사용자당 매월 99달러다. ‘엔터프라이즈 플랜’은 고객별로 요금이 맞춤 산정된다. 해당 플랜에는 ‘비즈니스 플랜’의 모든 기능을 비롯해 고성능 웹사이트 구축, 에지 네트워크 제품, 맞춤 계약 청구서, 아키텍처 유효성 검사, 지정된 계정 관리자 등이 포함돼 있다.  잼스택은 데브옵스 및 CI/CD 기법을 활용하는 웹 애플리케이션 모델이다. 이는 로드타임 코드 실행을 웹 서버에서 떼어내고, API를 통해 액세스하는 브라우저 내 자바스크립트 외부 서비스로 옮긴다. ciokr@idg.co.kr

2020.07.23

애저와 기트허브의 결합 ··· ‘애저 정적 웹앱’ 첫걸음  

마이크로소프트의 새 서비스가 애저(Azure)와 기트허브(GitHub)를 결합해 정적 웹 콘텐츠를 제공한다.  최근 가장 흥미로운 웹 개발 개념을 하나 꼽으라면 바로 ‘잼스택(Javascript, API, Markup Stack; Jamstack)’이라고 할 수 있다. 이는 웹 애플리케이션 플랫폼 넷틀리파이(Netlify)에 의해 널리 알려졌다.   구체적으로 살펴보자면 잼스틱은 자바스크립트, API, 마크업 스택을 사용하는 웹 애플리케이션 모델이다. 서버에서 생성된 동적 콘텐츠로는 전달되지 않는 정적 웹사이트를 전달할 수 있다. 즉 외부에서 구축돼 애저나 클라우드플레어(Cloudflare) 등의 콘텐츠 전송 네트워크(CDN)로 제공되는 효과적인 앱 전달 방식이라고 할 수 있다.  차세대 정적 웹 콘텐츠  잼스택을 사용하면 앱 서버나 노드.js 등에 의존할 필요가 없다. 표준 마크업 언어로 구성됐기 때문에 콘텐츠와 코드를 업데이트할 때 어디서나 구축하고 테스트한 후 서버로 푸시할 수 있다. 또 이 모델은 데브옵스(Devops) 기반 구축 프로세스와 잘 작동하며 기트허브와 같은 CI/CD 플랫폼과도 잘 호환된다.  잼스택은 흥미롭다. 페이지 코드는 정적이지만 콘텐츠는 그렇지 않다. 동적 콘텐츠는 다른 서비스에 느슨하게 결합된 API 연결과 함께 자바스크립트를 사용해 로컬로 렌더링된다. 예를 들어 정적 사이트가 전자상거래 매장을 호스팅한다고 가정해보자. 이때 RESTful 쿼리로 검색된 카탈로그 콘텐츠를 자바스크립트로 렌더링할 수 있다. API 호출을 제외하고 사이트와 백엔드 사이의 직접적인 연결이 없고 페이지 내의 코드가 오류를 감지해 사용자에게 알린다.  이렇게 잘 정의된 값의 API로 웹과 애플리케이션을 분리한다면 애플리케이션 및 웹 개발이 병렬로 진행될 수 있어 개발은 간소화되고 전달 속도는 빨라진다. 즉 느슨하게 결합된 모델은 클라우드 네이티브 애플리케이션에 프론트엔드를 추...

마이크로소프트 애저 클라우드 기트허브 정적 웹앱 프로그레시브 웹앱 잼스택 웹 애플리케이션 넷틀리파이 자바스크립트 API 마크업 스택 클라우드플레어 CDN 데브옵스 웹사이트 소프트웨어 개발 웹 개발 애저 펑션

2020.07.13

마이크로소프트의 새 서비스가 애저(Azure)와 기트허브(GitHub)를 결합해 정적 웹 콘텐츠를 제공한다.  최근 가장 흥미로운 웹 개발 개념을 하나 꼽으라면 바로 ‘잼스택(Javascript, API, Markup Stack; Jamstack)’이라고 할 수 있다. 이는 웹 애플리케이션 플랫폼 넷틀리파이(Netlify)에 의해 널리 알려졌다.   구체적으로 살펴보자면 잼스틱은 자바스크립트, API, 마크업 스택을 사용하는 웹 애플리케이션 모델이다. 서버에서 생성된 동적 콘텐츠로는 전달되지 않는 정적 웹사이트를 전달할 수 있다. 즉 외부에서 구축돼 애저나 클라우드플레어(Cloudflare) 등의 콘텐츠 전송 네트워크(CDN)로 제공되는 효과적인 앱 전달 방식이라고 할 수 있다.  차세대 정적 웹 콘텐츠  잼스택을 사용하면 앱 서버나 노드.js 등에 의존할 필요가 없다. 표준 마크업 언어로 구성됐기 때문에 콘텐츠와 코드를 업데이트할 때 어디서나 구축하고 테스트한 후 서버로 푸시할 수 있다. 또 이 모델은 데브옵스(Devops) 기반 구축 프로세스와 잘 작동하며 기트허브와 같은 CI/CD 플랫폼과도 잘 호환된다.  잼스택은 흥미롭다. 페이지 코드는 정적이지만 콘텐츠는 그렇지 않다. 동적 콘텐츠는 다른 서비스에 느슨하게 결합된 API 연결과 함께 자바스크립트를 사용해 로컬로 렌더링된다. 예를 들어 정적 사이트가 전자상거래 매장을 호스팅한다고 가정해보자. 이때 RESTful 쿼리로 검색된 카탈로그 콘텐츠를 자바스크립트로 렌더링할 수 있다. API 호출을 제외하고 사이트와 백엔드 사이의 직접적인 연결이 없고 페이지 내의 코드가 오류를 감지해 사용자에게 알린다.  이렇게 잘 정의된 값의 API로 웹과 애플리케이션을 분리한다면 애플리케이션 및 웹 개발이 병렬로 진행될 수 있어 개발은 간소화되고 전달 속도는 빨라진다. 즉 느슨하게 결합된 모델은 클라우드 네이티브 애플리케이션에 프론트엔드를 추...

2020.07.13

블로그 | 4세대 애플리케이션 모델을 이끄는 클라이언트-서버리스 탐구

마이크로소프트에 몸담았던 시절, 필자는 처음 두 번의 애플리케이션 모델 전환을 지켜봤다. 초기 메인프레임과 미니컴퓨터 시스템은 모놀리식이었고 데이터 스토리지와 애플리케이션 코드, 터미널 서비스가 모두 한 박스에 들어갔다. 1980년대에 마이크로프로세서와 이더넷 네트워크가 등장하면서 여러 대의 저비용 컴퓨터가 로컬 네트워크를 통해 함께 작동하고 통신할 수 있게 됐다. PC와 유닉스 워크스테이션이 서버에 연결되고 나서는 비즈니스 애플리케이션을 위한 새로운 다중 머신 클라이언트-서버 프로그래밍 모델을 활용하기 시작했다. 백엔드 SQL 데이터베이스(주로 오라클 데이터베이스 또는 SQL 서버)에 그래픽 사용자 인터페이스가 결합된 클라이언트-서버 애플리케이션이 등장했다.    클라이언트-서버 애플리케이션이 구축된 방식은 모놀리식 애플리케이션과는 매우 달랐다. 프레젠테이션 코드는 클라이언트 컴퓨터에서 실행되고 비즈니스 로직은 서버에 위치하며 일반적으로 SQL 저장 프로시저 내에 캡슐화됐다.     필자는 30여년 전, 마이크로소프트에서 처음에 애쉬튼 테이트(Ashton Tate)/마이크로소프트 OS/2 SQL 서버를 담당하면서 그 시기에 시작된 클라이언트-서버 여정을 지켜봤다.   클라이언트-서버 애플리케이션은 비록 번성한 기간은 짧았지만, 수많은 소규모 기업에 최초로 컴퓨팅을 제공한 기반이 된 사용하기 쉬운 그래픽 애플리케이션이라는 새로운 세대를 만들었다. SQL 서버 저장 프로시저를 호출하는 비주얼 베이직 클라이언트 애플리케이션의 조합은 마이크로소프트의 서버 사업을 일으켰고 소프트웨어 업체와 부가가치를 더하는 리셀러로 구성된 하나의 완전한 산업을 창조했다. 클라이언트-서버가 레거시 접근 방식이 된 지 20년이 넘었지만 많은 기업이 클라이언트-서버 애플리케이션의 업데이트된 버전을 계속 사용하고 있다.   클라이언트-서버는 인터넷과 웹으로 인해 레거시로 밀려났다. 클라이언트-서버 애플리케이션은 로컬 영역 네트워크에 ...

클라이언트서버리스 잼스택 애플리케이션모델 데이터베이스

2020.07.06

마이크로소프트에 몸담았던 시절, 필자는 처음 두 번의 애플리케이션 모델 전환을 지켜봤다. 초기 메인프레임과 미니컴퓨터 시스템은 모놀리식이었고 데이터 스토리지와 애플리케이션 코드, 터미널 서비스가 모두 한 박스에 들어갔다. 1980년대에 마이크로프로세서와 이더넷 네트워크가 등장하면서 여러 대의 저비용 컴퓨터가 로컬 네트워크를 통해 함께 작동하고 통신할 수 있게 됐다. PC와 유닉스 워크스테이션이 서버에 연결되고 나서는 비즈니스 애플리케이션을 위한 새로운 다중 머신 클라이언트-서버 프로그래밍 모델을 활용하기 시작했다. 백엔드 SQL 데이터베이스(주로 오라클 데이터베이스 또는 SQL 서버)에 그래픽 사용자 인터페이스가 결합된 클라이언트-서버 애플리케이션이 등장했다.    클라이언트-서버 애플리케이션이 구축된 방식은 모놀리식 애플리케이션과는 매우 달랐다. 프레젠테이션 코드는 클라이언트 컴퓨터에서 실행되고 비즈니스 로직은 서버에 위치하며 일반적으로 SQL 저장 프로시저 내에 캡슐화됐다.     필자는 30여년 전, 마이크로소프트에서 처음에 애쉬튼 테이트(Ashton Tate)/마이크로소프트 OS/2 SQL 서버를 담당하면서 그 시기에 시작된 클라이언트-서버 여정을 지켜봤다.   클라이언트-서버 애플리케이션은 비록 번성한 기간은 짧았지만, 수많은 소규모 기업에 최초로 컴퓨팅을 제공한 기반이 된 사용하기 쉬운 그래픽 애플리케이션이라는 새로운 세대를 만들었다. SQL 서버 저장 프로시저를 호출하는 비주얼 베이직 클라이언트 애플리케이션의 조합은 마이크로소프트의 서버 사업을 일으켰고 소프트웨어 업체와 부가가치를 더하는 리셀러로 구성된 하나의 완전한 산업을 창조했다. 클라이언트-서버가 레거시 접근 방식이 된 지 20년이 넘었지만 많은 기업이 클라이언트-서버 애플리케이션의 업데이트된 버전을 계속 사용하고 있다.   클라이언트-서버는 인터넷과 웹으로 인해 레거시로 밀려났다. 클라이언트-서버 애플리케이션은 로컬 영역 네트워크에 ...

2020.07.06

회사명:한국IDG 제호: ITWorld 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아00743 등록일자 : 2009년 01월 19일

발행인 : 박형미 편집인 : 박재곤 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2022 International Data Group. All rights reserved.

10.4.0.31