Discuz! Board

 找回密碼
 立即註冊
搜索
熱搜: 活動 交友 discuz
z»z z z 集装箱解决方案
查看: 1|回復: 0

集装箱解决方案

[複製鏈接]

1

主題

1

帖子

5

積分

新手上路

Rank: 1

積分
5
發表於 18:14:23 | 顯示全部樓層 |閱讀模式
GraphQL 的特点是,通过查询和变异,答案的结构在查询期间确定;调用者决定资源的哪些关系对他来说很重要并且应该包含在答案中。一方面,这使得请求和响应的数据结构更清晰、更可预测,并且调用更少,因此数据通信也更少。GraphQL 查询 此处显示了 GraphQL 查询。该请求引用资源“Books”,在响应中我们期望字段“title”,并且我们还想同时知道作者的名字和姓氏。以下清单显示了此查询的答案。您可以清楚地看到两种结构相似。要从 REST API 获取相同的数据,需要两次调用(一次调用“/book”资源,一次调用“/author”资源)。这两个调用必须被解析为正确的格式。GraphQL 答案 查询字段可以根据需要扩展。例如,如果您想知道这本书的出版年份以及作者还写过哪些其他书籍,则查询将如下所示带有出版年份的 GraphQL 查询以及作者的其他书籍 第三种流行的同步通信方法是远程过程调用。

通过gRPC, Google 开发了一个用于远程过程调用的框架,该框架现在是一个开源项目 瑞士 电话号码 并且是Cloud Native Foundation的一部分。请求看起来像传统的方法调用。 Protocol Buffer Format 使得定义 gRPC 接口的方法和类型成为可能。然后,协议编译器为各种编程语言生成服务和对象或类型实现,这些实现可以轻松集成到应用程序中。 gRPC 使用二进制格式而不是 JSON 进行交换。还有一个可在浏览器中使用的 gRPC Web 实现。强类型描述和二进制格式产生了安全且快速的接口。然而,数据查询和状态更改之间没有明确的分离,这可能使该方法比 REST 和 GraphQL 更令人困惑。 服务发现 由于服务在同步通信期间调用彼此的接口,因此它们还需要知道如何到达彼此。所以你们需要知道对方的地址。




对于仅存在一个实例的服务来说,这相对容易,但当存在大量实例时,这就不那么简单了。 为此,您需要服务发现 - 所有新服务实例在其中注册的软件。当要发送请求时,首先检索所有可用目的地的列表。该决议可以通过两种不同的方式进行: 客户端发现:每个服务都有自己的客户端,客户端首先查询列表,然后在不同的实例之间分配负载。 服务器端发现:有一个与注册表通信并处理负载平衡的中央服务。所有请求都通过此路由器路由。 两种方法都有其优点和缺点。在客户端发现中,每个服务都必须提供相应的客户端,这会导致服务膨胀,而在服务器端发现中,存在单点故障,即路由器,一旦发生故障,可能会导致整个系统瘫痪。 这可能会对整个应用程序产生致命的后果。当各个服务仍在等待失败服务的响应时,新的请求已经进入系统。



回復

使用道具 舉報

您需要登錄後才可以回帖 登錄 | 立即註冊

本版積分規則

Archiver|手機版|自動贊助|z

GMT+8, 22:33 , Processed in 0.030847 second(s), 19 queries .

抗攻擊 by GameHost X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回復 返回頂部 返回列表
一粒米 | 中興米 | 論壇美工 | 設計 抗ddos | 天堂私服 | ddos | ddos | 防ddos | 防禦ddos | 防ddos主機 | 天堂美工 | 設計 防ddos主機 | 抗ddos主機 | 抗ddos | 抗ddos主機 | 抗攻擊論壇 | 天堂自動贊助 | 免費論壇 | 天堂私服 | 天堂123 | 台南清潔 | 天堂 | 天堂私服 | 免費論壇申請 | 抗ddos | 虛擬主機 | 實體主機 | vps | 網域註冊 | 抗攻擊遊戲主機 | ddos |