Shopify의 기술 스택이란?
게시 됨: 2023-06-08소개
Shopify는 175개 이상의 국가에서 온 2백만 명의 전자 상거래 기업가에게 알려진 이름입니다. 전자 상거래 사업을 시작하는 사람이라면 누구나 이 구독 기반 플랫폼 및 상점 첫화면 빌더에 대해 들어봤을 것입니다.
Shopify가 누리는 엄청난 인기는 최신 기술 스택과 결합된 놀라운 UI 덕분입니다. 온라인 비즈니스를 처음부터 구축, 지원, 사용자 지정 및 확장할 수 있는 완전한 도구 및 코딩 언어 세트를 제공합니다.
리포지토리에는 점포 템플릿, 결제 게이트웨이, POS 소프트웨어, 쇼핑 카트, 마케팅 도구, 구매 버튼 등이 포함되어 있습니다. 이 문서에서는 사용 가능한 도구, 해당 코딩 언어 지원 및 새로운 개발을 포함하여 Shopify의 기술 스택에 대해 설명합니다.
기술 스택의 의미
기술 스택, AKA 기술 스택은 SaaS 제품을 구축하는 데 필요한 도구, 애플리케이션, 소프트웨어 및 코딩 언어의 배열입니다. 즉, 기술 스택은 웹 애플리케이션 및 비즈니스 생태계를 생성, 실행, 관리 및 확장하는 데 필요한 인프라입니다.
기술 스택은 구축되는 새로운 앱의 유형, 수행되는 사용자 정의 수준 및 플랫폼의 효율적인 기능을 결정합니다. 여기에는 프런트엔드와 백엔드의 두 가지 주요 구성 요소로 구성된 기술이 포함됩니다. 일반적인 기술 스택에는 웹 브라우저, 프로그래밍 언어, 프레임워크, 데이터베이스, 웹 서버 및 운영 체제가 포함됩니다.
Shopify 기술 스택의 기본 사항
Shopify는 기술적으로 숙련된 기업가와 초보 기업가 모두를 위한 편리하고 사용하기 쉬우며 확장 가능한 플랫폼입니다. 매장 빌더는 포괄적이고 유연한 소프트웨어 개발 키트(SDK) 덕분에 최소한의 코딩만 필요합니다.
초보 기술자는 모든 웹 사이트 테마, 사용자 정의 가능한 웹 사이트 템플릿, 드래그 앤 드롭 디자인 도구 및 쉬운 코딩 언어를 실험할 수 있습니다. 그러나 웹 및 애플리케이션 개발자는 헤드리스 API, 호스팅 서비스 및 React 기반 소프트웨어 프레임워크의 구성 가능한 Shopify 스택을 전적으로 사용하여 새 앱을 구축하고 Shopify 스토어를 사용자 지정할 수 있습니다.
현재 Shopify는 App Store에 약 50개의 기본 앱과 4000개 이상의 타사 애플리케이션을 보유하고 있습니다. 평균 API 응답 시간은 100밀리초 미만입니다. 1분 안에 모든 매장에 대해 40,000개의 체크아웃을 쉽게 처리할 수 있습니다. 동시에 QR 코드 생성기 및 손쉬운 비즈니스 설정을 위한 이윤 계산기와 같은 몇 가지 무료 내장 도구와 위젯이 있습니다.
이 모든 것은 Shopify의 광범위한 기술 스택으로 인해 가능합니다. 다음은 Shopify의 기술 스택 내역 및 최신 추가 사항 모음집입니다.
Shopify 및 해당 앱을 구축한 기술
Shopify의 인상적인 데이터 대기 시간 기록은 Ruby on Rails 프레임워크의 견고한 기반 덕분입니다. Shopify의 창립자 Tobi Lutke는 Ruby on Rails의 첫 번째 버전을 사용하여 플랫폼을 구축하여 Shopify를 가장 오래된 기존 Rails 앱 중 하나로 만들었습니다.
Shopify 핵심 앱은 Rails 모놀리스이며 대부분의 도메인별 앱은 이 전체 스택 프레임워크로 작성됩니다. 몇 가지 예는 Shopify Shipping , Identity 및 App Store입니다. Ruby on Rails 레거시 코드를 유지하는 것과 함께 Shopify는 최신 추가 기능으로 Node.js가 포함된 JavaScript와 같은 다른 프레임워크도 환영했습니다.
Shopify 데이터베이스에 사용되는 기술
Shopify의 데이터베이스 기록은 코드베이스보다 더 많은 변경을 거쳤습니다. MySQL을 관계형 데이터베이스로 사용하여 여정을 시작했습니다. 그러나 2014년에는 모든 방대한 데이터를 MySQL에 저장하는 것이 점점 더 어려워졌습니다. 따라서 데이터를 더 작은 부분으로 분할하여 여러 데이터베이스에 저장하기 시작했습니다. 이 단계를 샤딩이라고 합니다.
샤딩을 위해 Shopify는 Memcached(메모리 캐시 저장용) 및 Redis(키-값 및 쿼리 저장용)와 같은 데이터베이스를 사용했습니다. 이 솔루션이 문제를 관리하는 것처럼 보였지만 여전히 대규모 시스템 중단을 초래했습니다.
이것이 현재 Shopify가 포드를 사용하여 자체 데이터 저장소가 있는 Shopify 프로그램의 인스턴스를 생성하는 이유입니다. 이것은 정전 문제를 해결하는 데 도움이 되었습니다. Shopify의 데이터베이스 기술 스택은 Kubernetes, Docker, Google Kubernetes Engine의 컴파일을 사용합니다. Nginx, Lua 및 OpenResty는 로드 밸런서에 사용됩니다.
Shopify의 Admin을 구성하는 기술
Shopify는 판매자와 개발자를 위한 편의 계층을 추가하는 클라이언트 측 관리 스택과 관련하여 기술 스택 제공으로 다재다능합니다. 랜딩 페이지 및 제품 목록 페이지 생성과 같은 프런트 엔드 애플리케이션을 위한 HTML 및 jQuery 템플릿으로 시작했습니다.
잠시 동안 Batman.js 및 Single Page Application Framework로 전환되었습니다. 현재 Shopify는 기본 HTML 및 JavaScript로 돌아갔습니다. 이와 함께 React 및 Typescript와 같은 JavaScript 프레임워크의 최신 변형을 통합했습니다.
Shopify 기술 스택의 아키텍처 분석
1) 프론트엔드
Shopify에는 프런트 엔드 개발자가 맞춤형 상점을 만들 수 있는 직관적인 프런트 엔드 기술 스택이 있습니다. 최신 개발 라인에서 Shopify는 백엔드에서 프런트엔드를 구분하여 헤드리스 상거래를 촉진하고 있습니다. 이것은 주로 헤드리스 상거래용 내장 툴킷인 Hydrogen을 통해 수행됩니다.
Shopify의 대화형 클라이언트 측 도구 중 일부에는 장바구니, 국제 가격 계산기, 판매 시점, 랜딩 페이지 UI 등이 포함됩니다. 기술 스택은 페이지 레이아웃 설계, 탐색을 위한 HTML, CSS뿐만 아니라 React, Typescript와 같은 JavaScript 라이브러리와 호환됩니다. 메뉴 등
Shopify의 최근 노력에는 Liquid(사용자 지정 Shopify 스토어 테마 및 템플릿을 만들기 위한 템플릿 언어), Shopify CLI(앱을 구축하기 위한 라인 인터페이스 도구의 명령) 및 Polaris(관리자를 위한 디자인 시스템)가 포함됩니다.
2) 백엔드
Shopify에는 백엔드 작업 및 작업이라고 하는 앱 뒤의 기능을 지원하는 강력한 기술 모음이 있습니다. 확장 가능하고 안정적인 인프라에는 프리미티브, API, SDK 및 기타 도구가 포함됩니다. 상점 소유자와 개발자가 체크아웃 흐름, 재고 및 주문 관리, 판매 처리 등을 위한 사용자 지정 가능하고 완벽한 시설을 갖춘 상점 용량을 만들 수 있도록 도와줍니다.
2022년 Shopify는 공식적으로 Ruby와 함께 Rust를 채택하여 고성능 시스템 프로그래밍의 잠금을 해제했습니다. 역사적으로 Shopify의 백엔드 개발자는 Ruby Stack과 호환되는 C 및 Go와 같은 언어에 의존했습니다. 이제 그들은 WeAssembly와 같은 차세대 웹 플랫폼과의 통합을 가능하게 하는 Rust로 유연성을 우선시했습니다.
또 다른 주목할 만한 움직임으로 Shopify는 Shopify 기능을 통해 모든 개발자를 위한 백엔드 인터페이스를 민주화했습니다. 이를 통해 Shopify의 백엔드 로직에 대한 사용자 지정 코드를 생성하여 오픈 소스 플랫폼으로 만들 수 있습니다.
3) 데이터베이스 및 클라우드 서비스
Shopify는 전통적으로 데이터의 확장성, 내구성 및 보안을 보장하기 위해 MySQL 및 RDBMS와 같은 관계형 데이터베이스를 사용해 왔습니다. 그러나 글로벌 역량, 제로 네트워크 중단 및 향상된 속도에 대한 요구 사항을 재평가한 후 Shopify는 '포드'를 채택했습니다.
포드는 각각 자체 프로세스를 실행하는 데이터 저장소의 자율적인 소형 패킷을 생성합니다. 이를 위해 Shopify는 Kubernetes와 Docker를 사용했습니다. 최근 Shopify는 인지 부하를 줄이고 호스트와 애플리케이션 컨테이너 간의 경계를 없애기 위해 클라우드 네이티브로 전환하기로 결정했습니다. 이 경우는 코드 개발 플랫폼을 최적화하는 데만 해당됩니다.
4) 애플리케이션 프로그래밍 인터페이스(API)
Shopify는 고성능 구경을 갖춘 강력한 API입니다. API를 통해 여러 백엔드 및 프런트엔드 사용 사례를 확장하여 매장 소유자가 여러 플랫폼과 상호 운용할 수 있습니다. Shopify의 API는 GraphQL 및 REST 프레임워크로 구축되었으며 Node.js, PHP, Python, Ruby 및 Curl과 같은 여러 클라이언트 라이브러리를 지원합니다.
Shopify의 API는 마켓 플레이스, 관리 기능, 결제, 메시징, 매장 등의 특정 카테고리로 광범위하게 분류됩니다. 결제 인증, 장바구니에 제품 추가, 원활한 체크아웃 활성화, 할인 제공, 알림 전송 등과 같은 전자 상거래 기능을 트리거합니다.
Shopify는 맞춤형 스토어 테마를 생성하고 콘텐츠를 동적으로 업데이트하며 헤드리스 상거래용으로 구축하기 위한 특정 API를 개발했습니다. 이러한 API는 Ajax API(REST 엔드포인트 포함), 섹션 렌더링 API(HTML 마크업) 및 Hydrogen(Remix 기반)입니다.
5) 쇼피파이 앱스토어
Shopify 앱 스토어는 약 8,000개의 기본 및 타사 애플리케이션에 이르는 방대한 앱 컬렉션의 본거지입니다. 2018년 Shopify는 완전히 새로운 테마와 호스팅하는 앱의 깔끔한 분류로 앱 스토어를 개편했습니다. 다음과 같은 6가지 주요 범주가 있습니다.
- 제품 찾기용 앱(특히 생산자 직송, 주문형 인쇄 서비스용)
- 제품 판매용 앱(판매, 충성도, 구독 타겟팅용)
- 주문 및 배송용 앱(처리 처리, 재고, 주문 추적 등)
- 매장 디자인용 앱(맞춤형 페이지, 통화 변환기, 팝업용)
- 매장 관리용 앱(고객 지원, 헬프 데스크, FAQ)
- 마케팅 및 전환용 앱(타겟팅 이메일 마케팅, 할인)
Shopify에는 개발자가 앱을 구축, 호스팅 및 실행하는 데 도움이 되는 포괄적인 기술 스택이 있습니다. Shopify는 주로 코드 베이스 작성을 위한 Ruby 및 Node 스크립트를 제공합니다. 공식 디자인 시스템 및 UI 키트인 Polaris와 빠른 앱 개발을 지원하는 Shopify CLI 도구. 앱 빌더는 Shopify의 GraphQL Admin API를 사용하여 제품을 청구할 수 있습니다.
스토어를 최적화하려면 Shopify 기술 스택에 앱이 있어야 합니다.
매장의 판매, 물류 및 고객 참여를 최적화할 수 있는 몇 가지 타사 기술 애플리케이션은 다음과 같습니다.
1) 반품 관리 - ClickPost Returns Plus
ClickPost Returns Plus 는 전문 Shopify 반품 관리 솔루션입니다. 이 앱은 브랜드가 자동화 기능으로 반품을 최적화하여 고객 충성도를 높이고 이탈률을 줄이는 데 도움이 됩니다.
이 앱을 사용하여 브랜드는 반품 정책에 맞게 구성할 수 있는 사용자 지정 가능하고 모바일 친화적인 브랜드 반품 포털을 만들 수 있습니다. 이와 함께 여러 언어로 된 셀프 서비스 반환 포털, 자동 이메일 업데이트 및 심층 분석 보고서를 가질 수 있습니다.
2) 개인화된 이메일 마케팅을 위해 - Klaviyo
Klaviyo는 이메일 및 SMS를 통한 고객 커뮤니케이션에 대한 개인화된 접근 방식으로 잘 알려진 옴니채널 마케팅 도구입니다. 청중 통찰력을 위한 데이터 분석 및 이메일 최적화를 위한 A/B 테스트와 같은 강력한 데이터 기반 도구를 보유하고 있습니다. 더 빠른 고객 전환을 위해 캠페인을 자동화하고 맞춤형 메시지를 만들 수 있습니다.
3) 고객 지원 - Zendesk
Zendesk는 고객 서비스 및 지원 요구 사항에 대해 잘 알려진 애플리케이션입니다. 유도 대화, 셀프 서비스 지원 및 AI 봇과 같은 도구를 사용하여 자동화된 고객 지원을 제공합니다. Zendesk를 사용하면 상점 소유자가 의미 있는 고객 지원을 위해 맞춤형 고객 메시징 및 IVRS 통화를 트리거할 수 있습니다.
4) 고객 전환을 위해 - Justuno
Justuno는 이메일 캡처 및 팝업으로 고객을 전환하기 위해 특별히 설계된 고객 참여 도구입니다. 배너 광고, 웹사이트 메시징, 페이지 내 프로모션, 카운트다운 타이머 등과 같은 강력한 표시 및 리드 캡처 도구가 있습니다. Justuno는 버려진 카트를 복구하고 평균 주문 금액을 높이는 데 가장 도움이 됩니다.
결론
기술 스택은 모든 비즈니스 애플리케이션 및 SaaS 플랫폼의 기본을 결정합니다. Shopify의 Rails 기술 스택은 미국 상거래의 10%를 지원하는 매우 효율적이고 강력한 비즈니스 인프라의 비결입니다. 이 기사가 전체 스택 개발자와 브랜드가 Shopify의 기술을 최신으로 이해하는 데 도움이 되기를 바랍니다.
FAQ
1) Shopify는 어떤 기술로 구축되었습니까?
Shopify는 프런트엔드 및 백엔드 개발을 위한 완전한 웹 앱 프레임워크인 Ruby on Rails로 구축되었습니다. Shopify는 Ruby 레거시를 계속 유지하지만 지난 몇 년 동안 Node.js 및 Rust와도 작업하기 시작했습니다.
2) 브랜드는 Shopify 기술 스택을 어떻게 감사할 수 있습니까?
Shopify 기술 스택 감사는 비즈니스 프로세스와 관련된 애플리케이션 또는 API를 이해하는 것으로 시작됩니다. 관련 비즈니스 애플리케이션에 사용되는 모든 애플리케이션 및 기술을 나열하는 것부터 시작하십시오. 완료되면 나머지 팀에게 목록을 보내 앱과 도구를 설명합니다.