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

更新於 發佈於 閱讀時間約 2 分鐘
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

為什麼會看到廣告
分享網站開發的前端、後端、資料庫與部屬維運技術,並記錄在工作上的心得
留言
avatar-img
留言分享你的想法!

































































Neon 是基於 PostgreSQL 的 Serverless Database,具備了 Serverless 帶來的高乘載量、划算的費用與 PostgreSQL 強大的效能的一款開源資料庫服務。
Discord Bot 就是在 Discord 群組中可以回話與管理群組成員的機器人,依據開發者的設計能有不同的功能,這篇文章想要教的是如何向 Discord 申請一個自己的 Bot,日後才會介紹如何開發自己想要的功能。
不論是 GraphQL 與 RESTful API 都需要生態系的支撐,才會好用與完整 這篇會先介紹 GraphQL 的生態系工具。
這裡會針 GraphQL 與 RESTful API 這兩者介面所需要做的事情來比較其應用的場景。
fast endpoints 是一個支援 .NET 6 以上(Nuget 版本清單) 的 API 輕量框架,雖以簡單與高性能為主打,但也提供了很多常用的功能實現,如 Swagger 整合、Jwt 認證、Api 版本控制、APi 速率限制、Api 回應快取…很適合以此為基礎打造 Api 服務。
MongoDB 在排序時會將資料全部載入記憶體,之後在記憶體中進行排序,而預設開放給排序的記憶體只有 32 MB,因此在大量資料排序時就會引發該錯誤。
Neon 是基於 PostgreSQL 的 Serverless Database,具備了 Serverless 帶來的高乘載量、划算的費用與 PostgreSQL 強大的效能的一款開源資料庫服務。
Discord Bot 就是在 Discord 群組中可以回話與管理群組成員的機器人,依據開發者的設計能有不同的功能,這篇文章想要教的是如何向 Discord 申請一個自己的 Bot,日後才會介紹如何開發自己想要的功能。
不論是 GraphQL 與 RESTful API 都需要生態系的支撐,才會好用與完整 這篇會先介紹 GraphQL 的生態系工具。
這裡會針 GraphQL 與 RESTful API 這兩者介面所需要做的事情來比較其應用的場景。
fast endpoints 是一個支援 .NET 6 以上(Nuget 版本清單) 的 API 輕量框架,雖以簡單與高性能為主打,但也提供了很多常用的功能實現,如 Swagger 整合、Jwt 認證、Api 版本控制、APi 速率限制、Api 回應快取…很適合以此為基礎打造 Api 服務。
MongoDB 在排序時會將資料全部載入記憶體,之後在記憶體中進行排序,而預設開放給排序的記憶體只有 32 MB,因此在大量資料排序時就會引發該錯誤。
你可能也想看
Google News 追蹤
Thumbnail
你是不是也有過這樣的經歷:剛修好的功能,過幾天又壞了;每次修改程式碼都得手動測試一遍,還常漏掉影響到的其他地方;整天忙到翻,但最後卻不知道忙在哪裡? 如果這些情境聽起來很熟悉,那麼你可能需要開始了解 單元測試!很多人覺得測試很難,或者認為時間不夠用,其實只要從幾個簡單的步驟開始,一個人也能輕鬆上手。
立法院內政委員會今(18)杯葛衝突僵持一個上午,下午2點22分會議室現場電視牆突然顯示開始會議,後再顯示延長會議至今晚12點,現場卻無任何國民黨立委在場。郭昱晴表示,再次對國民黨肢體暴力、程序暴力、就是要通過自肥法案的所作所為嚴正抗議;主張周一「閉門會議」無效、今日議事錄確認也無效。
「我不是藝術家,也沒打算成為藝術家。但我卻靠『藝術』賺錢,這就是我的故事。」 希臘·阿伯丁(Greece Aberdeen)的這段話,道出了許多人的心聲。在這個AI迅速發展的時代,我們是否也能像她一樣,憑藉一個AI工具開闢多條收入渠道呢? 希臘原本是一名IT從業者,但總覺得缺少了些什麼。
Thumbnail
這一位同學,剛加入不久,經過我的引導跟指導,先是在選擇權市場小賺一下,結果我昨天提示,可以抱波段多單。他有聽進去,目前成本價非常低,很耐震的洗刷。人家才剛加入一週,你看立刻見效,我也會讓你有這樣的功力!請洽以下網站,單週體驗800,雙週體驗1500。 想加入訂閱付費行列可以直接來以下網址:
Thumbnail
※ 什麼是Web API API 就是後端開出來讓前端來用的介面,讓前端與後端可以溝通。 API流程: 終端使用者用任何一種裝置進入瀏覽器。 瀏覽器透過 API 向後端發出請求,請求查詢或修改資料。 後端透過 API 收到前端的請求後,取得資料並回應給前端。 前端渲染畫面,終端使用者
Thumbnail
可能包含敏感內容
誰說小資族無法對抗主力與大戶?本團隊就是有能耐分析出三至五套加權指數可能的走法。而且我已經眼光放到兩週之後了。賢弟的選擇權獲利引擎「上班族」週週幫自己加菜金專案(採用月訂閱,一個月僅需要4000元,歡迎推廣或團購) https://vocus.cc/pay/salon/monthly/645345c
Thumbnail
透過GraphQL提供的分頁方式,優化後端讀取資料的效能,避免過度讀取舊資料及準確指定特定項目。同時,利用Local-only field達成資料的整理或再次經過計算,提升管理和重複使用的效能。
Thumbnail
Ruby on Rails 是一個使用 Ruby 語言編寫的開源 Web 應用程式框架。 PostgreSQL 是一個強大、開源的物件關聯式資料庫系統,擁有超過 35 年的活躍開發歷程,並以其可靠性、功能強大性和效能而享有盛譽。 PostgreSQL 提供許多特定資料類型,以下是 Rails 支
Thumbnail
IaaS 以虛擬化原理運作,企業可從雲端服務商那裡獲得運算、儲存和資料庫等服務,不再需要自己購買設備、管理設備,或託管設備的空間。
Thumbnail
IaaS是一種雲端服務模型,所使用的運算資源託管在公有雲 、私有雲或混合雲中,能將傳統IT硬體設備統整為虛擬的運算資源,而得以針對運算需求彈性地調配資源。
Thumbnail
你是不是也有過這樣的經歷:剛修好的功能,過幾天又壞了;每次修改程式碼都得手動測試一遍,還常漏掉影響到的其他地方;整天忙到翻,但最後卻不知道忙在哪裡? 如果這些情境聽起來很熟悉,那麼你可能需要開始了解 單元測試!很多人覺得測試很難,或者認為時間不夠用,其實只要從幾個簡單的步驟開始,一個人也能輕鬆上手。
立法院內政委員會今(18)杯葛衝突僵持一個上午,下午2點22分會議室現場電視牆突然顯示開始會議,後再顯示延長會議至今晚12點,現場卻無任何國民黨立委在場。郭昱晴表示,再次對國民黨肢體暴力、程序暴力、就是要通過自肥法案的所作所為嚴正抗議;主張周一「閉門會議」無效、今日議事錄確認也無效。
「我不是藝術家,也沒打算成為藝術家。但我卻靠『藝術』賺錢,這就是我的故事。」 希臘·阿伯丁(Greece Aberdeen)的這段話,道出了許多人的心聲。在這個AI迅速發展的時代,我們是否也能像她一樣,憑藉一個AI工具開闢多條收入渠道呢? 希臘原本是一名IT從業者,但總覺得缺少了些什麼。
Thumbnail
這一位同學,剛加入不久,經過我的引導跟指導,先是在選擇權市場小賺一下,結果我昨天提示,可以抱波段多單。他有聽進去,目前成本價非常低,很耐震的洗刷。人家才剛加入一週,你看立刻見效,我也會讓你有這樣的功力!請洽以下網站,單週體驗800,雙週體驗1500。 想加入訂閱付費行列可以直接來以下網址:
Thumbnail
※ 什麼是Web API API 就是後端開出來讓前端來用的介面,讓前端與後端可以溝通。 API流程: 終端使用者用任何一種裝置進入瀏覽器。 瀏覽器透過 API 向後端發出請求,請求查詢或修改資料。 後端透過 API 收到前端的請求後,取得資料並回應給前端。 前端渲染畫面,終端使用者
Thumbnail
可能包含敏感內容
誰說小資族無法對抗主力與大戶?本團隊就是有能耐分析出三至五套加權指數可能的走法。而且我已經眼光放到兩週之後了。賢弟的選擇權獲利引擎「上班族」週週幫自己加菜金專案(採用月訂閱,一個月僅需要4000元,歡迎推廣或團購) https://vocus.cc/pay/salon/monthly/645345c
Thumbnail
透過GraphQL提供的分頁方式,優化後端讀取資料的效能,避免過度讀取舊資料及準確指定特定項目。同時,利用Local-only field達成資料的整理或再次經過計算,提升管理和重複使用的效能。
Thumbnail
Ruby on Rails 是一個使用 Ruby 語言編寫的開源 Web 應用程式框架。 PostgreSQL 是一個強大、開源的物件關聯式資料庫系統,擁有超過 35 年的活躍開發歷程,並以其可靠性、功能強大性和效能而享有盛譽。 PostgreSQL 提供許多特定資料類型,以下是 Rails 支
Thumbnail
IaaS 以虛擬化原理運作,企業可從雲端服務商那裡獲得運算、儲存和資料庫等服務,不再需要自己購買設備、管理設備,或託管設備的空間。
Thumbnail
IaaS是一種雲端服務模型,所使用的運算資源託管在公有雲 、私有雲或混合雲中,能將傳統IT硬體設備統整為虛擬的運算資源,而得以針對運算需求彈性地調配資源。