2021 년에 API 빌더 선택 — Canonic 또는 Hasura

시장의 많은 플레이어가 API 구축을 단순화하면서 다가오는 프로젝트 또는 린 개발 팀에 적합한 도구는 정말 까다로운 작업 일 수 있습니다.

2020 년 10 월 15 일, Canonic 제품을 Product Hunt 를 통해 우리는 Hacker News 에서 다음과 같은 놀라운 호응과 함께 오늘의 세 번째 제품 으로 선정되었습니다. 잘. 제품에 대한 모든 질문 중 가장 자주받은 질문은 “Canonic은 Hasura와 어떻게 다른가요?”

그래서 Canonic과 Hasura는 정확히 무엇입니까?

Hasura는 오픈 소스 GraphQL 서버입니다. 데이터베이스 이벤트에 대한 웹 후크 트리거를 사용하여 Postgres 를 통해 실시간 GraphQL API를 제공합니다. , 비즈니스 로직을위한 원격 스키마. Postgres에서 지원하는 GraphQL 앱을 빌드하거나 Postgres를 사용하는 기존 애플리케이션을 위해 점진적으로 GraphQL로 이동하는 데 도움이됩니다.

Canonic은 로우 코드 플랫폼 로 몇 분 만에 API를 만들 수 있습니다.
백엔드 용 GraphQL 서비스를 제공하는 동시에 전체 프로덕션 준비 백엔드 인프라 요구 사항을 관리합니다. 이를 통해 콘텐츠 모델을 정의하고, 데이터베이스를 자동으로 프로비저닝하고, 실시간으로 서버를 가동하고, GraphQL 및 REST API를 통해 콘텐츠를 제공 할 수 있습니다.

이는 구축을위한 원활한 경험을 제공하는 것을 목표로합니다. 가장 사용자 친화적 인 방식으로 모든 종류의 디지털 제품을위한 강력한 백엔드를 제공합니다.

그래도 비슷한 느낌이 든다면? 다음은 몇 가지 주요 차별화 요소입니다.

1. New / Linking / Importing Data API

Hasura 기존 / 신규 Postgres 데이터베이스와 그 위에 CRUD GraphQL API를 제공합니다.

Canonic 는 다음 중 하나에 대한 유연성을 제공합니다.

  • 기존 데이터베이스가있는 경우 Canonic의 가져 오기 / 연결 기능을 사용하면 데이터를 Canonic으로 매우 쉽게 가져올 수 있습니다 (현재 MongoDB , 향후 Postgres , Airtable , MySQL 등) 그 위에 API 빌드를 시작합니다.
  • 새 프로젝트 의 경우 CMS, 데이터베이스를 자동으로 생성하고 프로젝트를 단 몇 분 만에 실시간으로 배포 할 수 있습니다. Canonic에서 데이터베이스 구축

CRUD API는 두 GraphQL 모두에서 생성됩니다. 및 REST 형식.

스크린 샷 가져 오기
Canonic 가져 오기 화면

2. 직관적 인 콘텐츠 모델링

Hasura의 기본 사용 사례는 기존 데이터베이스에 데이터 API를 제공하는 것입니다. 새로운 테이블, 해당 필드 및 이들 간의 관계를 생성하는 까다로운 프로세스. 데이터 유형, 외래 키 등에 대한 지식이없는 사람에게는 다소 혼란 스러울 수 있습니다.

Hasura 스크린 샷
Hasura 콘텐츠 모델러

Canonic 은 고유 한 그래프 기반 콘텐츠 모델링 엔진 을 사용하면 데이터를 매우 직관적이고 대화 형 방식으로 배치 할 방식의 구조를 정의 할 수 있습니다.

캐 노닉 그래프 기반 콘텐츠 모델링 시스템
  • 테이블에 포함 할 다양한 유형의 필드를 만듭니다.
  • 가장 적합한 방식으로 순서를 변경합니다.
  • 내장 지원 다양한 사용자 가입 유형 (Google, Github 등) 통합 용
  • 확인 추가 콘텐츠를 추가 / 업데이트 할 때 각 필드가 준수해야합니다.
  • 관계를 정의하고 테이블을 쉽게 연결합니다.
  • 시맨틱을 위해 또는 원하는 경우 필드를 함께 그룹화합니다. 해당 데이터 그룹에 대한 항목 목록을 저장합니다.
  • 미리보기 는 변경 사항을 배포 할 때 어떻게 표시되는지 확인합니다.

3. API 및 비즈니스 로직 확장

Hasura 에서 CRUD API를 확장하여 비즈니스를 작성할 수 있습니다. 로직 :

  • 자신 만의 GraphQL 서비스를 구축하고이를 Hasura의 GraphQL 서비스와 병합하여 단일 엔드 포인트에서 함께 작동하도록합니다.
  • 사용자 지정 웹훅 작성 이상적으로는 데이터베이스가 변경 될 때마다 트리거되는 서버리스 함수로서 데이터베이스가 변경 될 때 Hasura가 트리거합니다.

설정 Canonic , 새 사용자 지정 엔드 포인트를 추가하려는 경우 별도의 서비스를 구축하여 Canonic과 연결할 필요가 없습니다.

  • 원하는만큼 많은 엔드 포인트를 만들 수 있습니다. GraphQL 및 REST 형식 모두에서 사용할 수 있습니다.
  • 내장 된 코드 편집기를 사용하여 맞춤 비즈니스 로직을 바로 추가 할 수 있습니다.
Canonic API 워크 플로 화면

제품이 변경 될 필요없이 새로운 엔드 포인트를 구축하고 기존 엔드 포인트를 확장 할 수 있습니다. 다른 곳.

4. API 문서

백엔드 서비스는 궁극적으로 API 계약에 대한 올바른 지식을 보유해야하는 다른 플랫폼과 통합되어야합니다. Canonic은 모든 API에 대한 문서를 한곳에서 현명하게 생성하므로 누구나 백엔드 또는 데이터베이스 구조를 전혀 몰라도 계약이 통합을 시작하는 것을 직접 확인할 수 있습니다.

문서화는 반복적 인 프로세스입니다. 시스템의 현재 상태와 올바른 상태를 반영해야합니다. 이렇게하면 문서화에 대한 책임이 없어지고 빠르게 빌드 할 수 있습니다.

Canonic Docs 스크린 샷
Canonic Docs 화면

비교해 Hasura는 API 계약에 대한 문서를 제공하지 않습니다.

5. Full Blown Content Management System

Hasura 는 새 행과 값을 추가하는 전통적인 접근 방식을 따릅니다. 각 열의 필드. 기본 표 형식을 사용하여 데이터베이스에 저장된 데이터를 볼 수 있습니다.

Hasura CMS 스크린 샷
반면에 Hasura CMS

Canonic은 콘텐츠 모델을 정의한 방식에 맞춘 본격적인 CMS를 제공합니다. 액세스 제어를 추가하여 액세스 권한이있는 사람 만보고 작업 할 수 있도록 할 수 있습니다. 거기에서 직접 이미지 / 파일을 업로드하고 콘텐츠에 정의한 모든 유효성 검사 규칙을 따를 수 있습니다.

Canonic 자동 생성 cms 스크린 샷
Canonic CMS 스크린 샷

6. GraphQL 서비스 이상

Hasura . CRUD를 작성하고 확장 가능한 실시간 백엔드를 직접 작성하는 번거로운 노력을 절약하는 것을 목표로합니다.

Canonic은보다 시민이되는 것을 목표로합니다. 최초의 비 기술 친화적 인 플랫폼 최소 수준의 기술 노하우로 전체 백엔드 스택을 구축 할 수 있습니다.

이것이 Canonic Hasura와 어떻게 다른지 잘 이해하기를 바랍니다. 및 스택, 개발 워크 플로에 적합하고 프로젝트에 가치를 추가하는 방법에 대해 더 명확하게 설명합니다.

Canonic / Hasura

여기 <에서 Canonic에 가입하고 무료로 사용할 수 있습니다. / a>. discord 커뮤니티 다른 회원 및 당사와 직접 교류합니다.

웹 사이트 | Twitter | LinkedIn | Facebook | 인스 타 그램