自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Netflix 開(kāi)源 DGS,用于 Spring Boot 的 GraphQL 框架

開(kāi)源
Netflix 已開(kāi)放其 Domain Graph Service(DGS)框架的源代碼 ,該框架是為獨(dú)立和聯(lián)合 GraphQL 服務(wù)開(kāi)發(fā)的內(nèi)容流服務(wù),用于簡(jiǎn)化 GraphQL 的實(shí)現(xiàn)。

Netflix 已開(kāi)放其 Domain Graph Service(DGS)框架的源代碼 ,該框架是為獨(dú)立和聯(lián)合 GraphQL 服務(wù)開(kāi)發(fā)的內(nèi)容流服務(wù),用于簡(jiǎn)化 GraphQL 的實(shí)現(xiàn)。

Netflix 的軟件工程師 Paul Bakker 以及 Kavitha Srinivasan 在博客中寫道:“通過(guò)開(kāi)源該項(xiàng)目,我們希望為 Java 和 GraphQL 社區(qū)做出貢獻(xiàn),并向使用該框架的所有人學(xué)習(xí)并與之合作,以使 DGS 在將來(lái)變得更好。”

GraphQL 最初由 Facebook 內(nèi)部開(kāi)發(fā),是一種用于 API 的開(kāi)源查詢語(yǔ)言,是一種服務(wù)器端運(yùn)行時(shí)用于對(duì)現(xiàn)有數(shù)據(jù)執(zhí)行查詢。正如 GraphQL Foundation 解釋的那樣,該語(yǔ)言提供了基于 REST 體系結(jié)構(gòu)的替代方案,目的是提高開(kāi)發(fā)人員的生產(chǎn)力并最大程度地減少傳輸?shù)臄?shù)據(jù)量。”

GraphQL 被包括 Credit Karma、GitHub、Intuit、PayPal 和《紐約時(shí)報(bào)》等在內(nèi)的許多組織用于生產(chǎn)環(huán)境中。Netflix 也將其用作數(shù)據(jù)查詢和操作語(yǔ)言,將數(shù)據(jù)提取到系統(tǒng)中以支持其內(nèi)容工程部門。

為什么需要 DGS 框架

Netflix 在 2019 年開(kāi)始實(shí)施聯(lián)合 GraphQL 架構(gòu),向新的體系結(jié)構(gòu)過(guò)渡意味 Netflix 公司的許多后端團(tuán)隊(duì)需要在其 Java 生態(tài)系統(tǒng)中采用 GraphQL。Netflix 已經(jīng)為后端開(kāi)發(fā)標(biāo)準(zhǔn)化了 Spring Boot 快速應(yīng)用程序開(kāi)發(fā)框架。由于該公司的框架是在 Spring Boot 之上創(chuàng)建的,為了使這種新的聯(lián)合架構(gòu)獲得成功,Netflix 就需要在 Spring Boot 中為 GraphQL 帶來(lái)出色的開(kāi)發(fā)體驗(yàn)。

DGS 框架的主要功能包括:

  • 基于注釋的 Spring Boot 編程模型
  • 用于將查詢測(cè)試編寫為單元測(cè)試的測(cè)試框架
  • Gradle 代碼生成插件,可從 GraphQL 模式創(chuàng)建 Java/Kotlin 類型
  • 與 GraphQL Federation 輕松集成
  • 與 Spring Security 集成
  • GraphQL 訂閱(WebSocket 和 SSE)
  • 文件上傳
  • 錯(cuò)誤處理
  • 基于 Java 的 GraphQL 客戶端

在 Spring Boot 之上創(chuàng)建的 DGS 框架,它利用了 graphql-java 庫(kù),DGS 框架最初僅在 Netflix 內(nèi)部使用,著重于與 Netflix 生態(tài)系統(tǒng)的集成以進(jìn)行跟蹤、日志記錄和指標(biāo)等。但是,將框架適當(dāng)?shù)啬K化也是他們重中之重的任務(wù)。顯然,Netflix 構(gòu)建的大部分框架實(shí)際上并不是特定于 Netflix 本身的。該框架基本上只是構(gòu)建獨(dú)立和聯(lián)合 GraphQL 服務(wù)的一種簡(jiǎn)便方法。

該框架有很多 Kotlin 代碼,我可以用 Java 使用它嗎?

盡管 DGS 框架主要是用 Kotlin 編寫的,但該框架主要設(shè)計(jì)用于 Java,并且大多數(shù)框架的使用者都使用 Java。當(dāng)然,如果使用的是 Kotlin,效果也很好。

Netflix 是否在該框架的分支上運(yùn)行?

不,Netflix正在使用相同的 OSS 組件!Netflix 為分布式跟蹤、日志記錄、指標(biāo)等插入了一些額外的模塊,并且我們有文檔說(shuō)明如何為自己的基礎(chǔ)架構(gòu)實(shí)現(xiàn)類似集成。

準(zhǔn)備好用于生產(chǎn)環(huán)境中了嗎?

是的!在開(kāi)源之前,Netflix 已經(jīng)在不同的部門中使用了超過(guò)一年半的時(shí)間,甚至包括一些大規(guī)模項(xiàng)目。我們已經(jīng)發(fā)布了許多發(fā)行版,其中增加了新功能、修復(fù)了錯(cuò)誤等,并且它已經(jīng)成為一個(gè)非常穩(wěn)定的平臺(tái)。

本文轉(zhuǎn)自O(shè)SCHINA

本文標(biāo)題:Netflix 開(kāi)源 DGS,用于 Spring Boot 的 GraphQL 框架

本文地址:https://www.oschina.net/news/130340/open-sourcing-the-netflix-domain-graph-service-framework

 

責(zé)任編輯:未麗燕 來(lái)源: 開(kāi)源中國(guó)
相關(guān)推薦

2021-12-02 16:20:17

開(kāi)源微服務(wù)框架

2021-07-28 14:14:09

JavaScript開(kāi)源框架

2021-09-13 09:50:28

MicroEJ開(kāi)源JavaScript框

2020-05-21 18:52:06

PHP框架CodeigniterWeb開(kāi)發(fā)

2023-12-30 08:12:42

2011-05-18 09:47:39

spring

2019-08-15 10:56:10

WebServletSpring mvc

2013-01-05 09:43:25

亞馬遜AWS公有云服務(wù)Netflix

2013-07-23 09:42:21

IBMNetflix

2021-07-09 14:31:55

IBM開(kāi)源框架混合云

2019-09-06 08:29:33

Netflix架構(gòu)推薦系統(tǒng)

2019-02-28 10:18:44

GitHub 技術(shù)開(kāi)源

2024-01-22 08:46:37

MyBatis數(shù)據(jù)脫敏Spring

2017-03-13 08:58:46

Spring Clou概覽架構(gòu)

2013-12-11 09:47:35

NetflixAWSIaaS

2021-05-06 10:52:09

Java Spring Bo框架

2024-07-05 11:22:39

2016-08-05 15:04:33

javascripthtmljs

2021-03-08 10:21:22

開(kāi)源技術(shù) 框架

2019-03-05 11:06:08

學(xué)術(shù)出版開(kāi)源工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)