更新於 2023/02/17閱讀時間約 2 分鐘

Hasura 一個開源與高性能的 GraphQL Engine Service

Hasura
Hasura
Hasura 是一個開源、高性能、多資料來源與嚴謹權限控管的 GraphQL Engine Service。 他可以幫助開發者整合來自不同資料庫、不同服務的資料在同一個 Api 上獲取,並透過 GraphQL 在一次請求中獲得需要的資料。

Hasura 是什麼
一個具有 Gui 介面(正式環境可以關閉) 的 Api Gateway,可以將資料源轉為 GraphQL 或是 Restful Api。

Hasura 能做什麼
Hasura 可以將分散的數種資料源轉變為一組 GraphQL 或是 Restful Api,並且自訂每一個資料欄位的權限。
來自 https://hasura.io/
數據源可以是現有的 GraphQL 或是 Restful Api 的服務。
使用 GraphQL 資料源,來自 https://hasura.io/docs/latest/remote-schemas/index/
使用 Restful 資料源,來自 https://hasura.io/docs/latest/actions/index/
數據源也可以是多種資料庫。
來自 https://hasura.io/
Hasura 還可以針對不同使用者的權限決定哪些欄位可以訪問
Hasura 後台

如何開始體驗 Hasura
會有三種方案可供選擇
  • 官方的 Hasura Cloud (最簡單,且內建已串聯 Neon DB)
  • 第三方的 Nhost (整合度最高)
  • 自行使用 Docker 託管 (最自由)

使用 Hasura 的好處
我個人覺得是獨立出了一層供前端調用的 Api 服務,後端服務能夠以最小的成本更換技術,如一開始為了趕上線而使用在資料庫內寫 SP 的方式推上線,而日後由於使用者增加與功能複雜也可以遷移到 Serverless 或是獨立的 Api 服務提供邏輯處理。
而其自動產生 GraphQL CRUD 與針對個別欄位的權限控管可以節省很多開發上的時間,讓工程師可以專注在邏輯的撰寫。

如何入門 Hasura
Hasura 官方文件 是學習 Hasura 的好方法,而之後我也會撰寫使用 Hasura 搭建應用的教學,歡迎持續關注

參考

Hasura

Nhost

分享至
成為作者繼續創作的動力吧!
© 2024 vocus All rights reserved.