通过 HTTP 发送数据,许多开发人员已经在用 REST 了,而 GraphQL 通常被认为是一种代替遗留 REST API 的技术。本文将对比两者各自的优势、劣势以及它们之间的差异,希望能为你今后项目的技术选型提供帮忙。
除非你一直生活在岩石下面,否则你可能已经知道微服务是当今流行的架构趋势。与这一趋势一同成长,Segment早期就采用了这种最佳实践,这在某些情况下对我们很有帮助,但正如你将很快了解到的,在其他情况下则并非如此。
原文 https://blog.cloudflare.com/even-faster-connection-establishment-with-quic-0-rtt-resumption/
在计算机网络的应用层你了解多少,是否知道socket套接字有哪些?知道你的网站为什么访问慢吗?知道为什么fidder、Charles能抓到你的包吗?今天我们就来一一揭秘!
我认为,GraphQL 将改变世界。将来,你可以使用 GraphQL 查询世界上的任何系统。我在创造这样的未来。那么我为什么要对使用 GraphQL 进行辩驳呢?我个人最讨厌的是,社区一直在宣传 GraphQL 的好处,而这些好处却非常普通,并且与 GraphQL 实际上没有任何关系。如果我们想推广采用,那么我们应该诚实,应该摘掉有色眼镜。这篇文章是对 Kyle Schrade 的文章“为什么使用 GraphQL”的回应。这并不是批评。这篇文章是一个很好的讨论基础,因为它代表了我在社区中经常听到的观点。如果你读了整篇文章,当然这会花一些时间,你就会完全理解,为什么我认为 Kyle 的文章应该改名为“为什么使用 Apollo”。
分布式调用是指在分布式系统中,不同的服务实体相互调用和通信,以完成特定的业务功能或交互行为。在分布式系统中,各个服务可以位于不同的物理节点上,彼此之间通过网络进行通信和交互。
Netflix 在这篇文章中描述了他们为什么与 Envoy 社区和 Kinvolk 合作为 Lyft 开源的代理 Envoy 实现了一项新功能。这个叫作按需集群发现的新功能帮助 Netflix 实现了零配置服务网格。
在一个设计良好的微服务生态系统里,微服务与基础设施之间是分离的。微服务与硬件、网络、构建和部署管道、服务发现和负载均衡都是分离的。它们都是微服务生态系统基础设施的组成部分。如何以一种稳定可靠的、可伸缩的、可容错的方式来构建、维护和标准化基础设施,是微服务运维的根本。
本文最初发布于 Max Desiatov 的个人博客,经原作者授权由 InfoQ 中文站翻译并分享。
Confluence 的开发者 Atlassian 已承认此漏洞,并将其归类为损坏的访问控制问题。他们强调需要立即采取行动,并建议用户升级到最新版本以保护他们的系统。Atlassian 将该漏洞的严重级别评定为 Critical CVSS 10。
Confluence 的开发者 Atlassian 已公告此漏洞,并将其归类为损坏的访问控制问题。他们强调需要立即采取行动,并建议用户升级到最新版本以保护他们的系统。Atlassian 将该漏洞的严重级别评定为 Critical CVSS 10。
本书主要介绍如何使用微服务架构构建应用程序,这是本书的第三章。第一章介绍了微服务架构模式,将其与单体架构模式进行对比,并讨论了使用微服务的优点与缺点。第二章描述了应用程序客户端通过扮演中间人角色的 API 网关与微服务进行通信。在本章中,我们来了解一下系统中的服务是如何相互通信的。第四章将详细探讨服务发现方面的内容。
最近,我一直在考虑有关Envoy代理控制平面的问题,因此我认为这些问题与我分享有关行业现状以及未来几年技术发展的一些结论是很有用的。
本篇文章属于一篇知识的捡漏和复盘类的文章,主要目的就是为了复盘一下gRPC的相关概念,并剖析其原理,相关知识点和使用大家可以参看之前的几篇文章:
Kubernetes 不会对长期连接进行负载均衡,并且一些 Pod 可能会比其他 Pod 接收更多请求。如果您正在使用 HTTP/2、gRPC、RSockets、AMQP 或任何其他长期连接(例如数据库连接),您可能需要考虑客户端负载均衡。
ASP.NET SignalR是ASP.NET开发人员的库,它简化了向应用程序添加实时Web功能的过程。实时网络功能可以让服务器代码在连接的客户端可用时立即将内容推送到连接的客户端,而不是让服务器等待客户端请求新数据。
作者 | Anupama Pathirage 译者 | 明知山 策划 | 丁晓昀 在当今的数字转型时代,应用程序和 Web 服务之间的相互对话是不可避免的,我们需要通过 API 来实现这些应用程序之间的通信。各种协议和规范定义了消息通过网络传递的语义和语法,最终形成了一种 API 架构。 在本文中,我们将探讨如何使用 GraphQL 和 Ballerina 将 MySQL 数据库中的数据作为 API 公开出来。GraphQL 是一种抽象了底层数据源的规范,借助 GraphQL,开发人员能够灵活地使
选择合适的进程间通信机制是一个重要的架构决策,它会影响应用的可用性,甚至与事务管理相互影响。
无论您使用哪种授权类型或是否使用客户端密码,您现在都拥有一个可与 API 一起使用的 OAuth 2.0 Bearer Token。
刷新令牌允许用户无需重新进行身份验证即可获取新的访问令牌,从而确保更加无缝的身份验证体验。这是通过使用长期刷新令牌来获取新的访问令牌来完成的,即使原始访问令牌已过期也是如此。
现代无状态应用程序的构建和设计可在Docker等软件容器中运行,并由Kubernetes等容器集群管理。它们使用Cloud Native和Twelve Factor原则和模式开发,以最大限度地减少人工干预并最大限度地提高可移植性和冗余性。将基于虚拟机或基于裸机的应用程序迁移到容器(称为“容器化”)并在集群内部署这些应用程序通常会导致这些应用程序的构建,打包和交付方式发生重大变化。
网络犯罪呈上升趋势,没有放缓的迹象。最近的调查结果显示恶意软件活动增加了 358%。此外, AV-TEST Institute每天都会注册超过 450,000 个新的恶意程序和可能不需要的应用程序,新的恶意软件以惊人的速度出现。一些专家甚至认为网络犯罪是人类的头号问题,网络攻击对人类的威胁比核武器更大。
应用场景: 网站上的即时通讯是很常见的,比如网页的QQ,聊天系统等。按照以往的技术能力通常是采用轮询、Comet技术解决。
值提取是一个非常流行的编程概念,它用于各种操作。但是,从 JSON 响应中提取值是一个完全不同的概念。它帮助我们构建逻辑并在复杂数据集中定位特定值。本文将介绍可用于从 JSON 响应中提取单个值的各种方法。在开始值提取之前,让我们重点了解 JSON 响应的含义。
作者 | Nic Cope 译者 | 平川 在过去的几个月里,Crossplane 支持的自定义资源数量突破了 Kubernetes 的限制。在这篇文章中,我们将探讨下由 Upbound 工程师发现的限制,以及我们如何帮助克服它们。 本文最初发布于 Upbound Newsletter。 在过去的几个月里,Crossplane 支持的自定义资源数量突破了 Kubernetes 的限制。在这篇文章中,我们将探讨下由 Upbound 工程师发现的限制,以及我们如何帮助克服它们。 背 景 Upbound 创
介绍 在单体应用程序中,组件通过语言级的方法或函数调用进行彼此的调用。相比之下,基于微服务的应用程序是在多台机器上运行的分布式系统。每个服务实例通常是一个进程。因此,如下图所示,服务必须使用进程间通
异步通信是一种广泛应用于不同进程和系统之间的通信方法,在异步通信中,客户机向服务器发送一个请求(这需要长时间的处理),并立即收到一个传递确认。与同步通信不同,此响应还没有所需的信息。
本篇回顾了我们在自托管外部使用 Relay 时的操作指南,即在您的硬件上运行的 Relay 并将事件转发到 sentry.io。
客户端(前端)和服务器(后端)之间的通信通常不是超级直接的。因此,我们使用一个叫作“应用编程接口”(或 API)的接口,作为客户端和服务器之间的中介。
数据包抓包过程可以通过工具使用完成。数据包data paragram通过计算机的传输控制协议TCP 进行远程传输。数据的传输控制协议对数据包分割,严格约束之后存放传输。点对点的传输称为TCP( Transform control protocal) 传输控制协议。传输控制协议在数据包的开发传输端点到数据包的目标传输端点。数据包是通过线路光纤或者是光缆进行有效传输。现在的移动基站蜂巢,通过移动的数据波传输数据。
本文讨论了四种主要的 API 架构风格,比较它们的优缺点,并重点介绍每种情况下最适合的 API 架构风格。
两个单独的应用程序需要中介程序才能相互通信。因此,开发人员经常需要搭建桥梁——也就是应用程序编程接口(API),来允许一个系统访问另一个系统的信息或功能。
web隧道可以让 HTTP 应用程序访问使用非 HTTP 协议的应用程序。Web 隧道允许用户通过 HTTP 连接发送非 HTTP 流量,这样就可以在 HTTP 上捎带其他协议数据了。使用 Web 隧道最常见的原因就是要在 HTTP 连接中嵌入非 HTTP流量,这样,这类流量就可以穿过只允许 Web 流量通过的防火墙了。
世界上几乎所有的 HTTP 通信都是由 TCP/IP 承载的,TCP/IP 是全球计算机及网络设备都 在使用的一种常用的分组交换网络分层协议集。客户端应用程序可以打开一条 TCP/IP 连 接,连接到可能运行在世界任何地方的服务器应用程序。一旦连接建立起来了,在客户端 和服务器的计算机之间交换的报文就永远不会丢失、受损或失序。
即使与 REST API 打交道这么多年,当我第一次了解到 GraphQL 和它试图解决的问题时,我还是禁不住把本文的标题发在了 Twitter 上。
Infinispan(一个用 Java 编写的开源键 / 值数据存储和数据网格平台)发布 最新版本 15.0.0。该版本是一个重要的里程碑。特别值得注意的是,它在 RESP 端点中实现了大多数核心 Redis 命令,优化了集群内通信,增强了跟踪子系统和服务器管理控制台,并将所需的最小 JDK 版本升级到了 JDK 17。
SANS研究院于2020年9月发布了白皮书《How to Create a Comprehensive Zero Trust Strategy》,该白皮书的赞助者为CISCO(思科)。本文是该白皮书主体内容的全文翻译。
HealthCheck 不仅是对应用程序内运行情况、数据流通情况进行检查,还包括应用程序对外部服务或依赖资源的健康检查。 健康检查通常是以暴露应用程序的HTTP端点的形式实施,可用于配置健康探测的的场景有 :
古人有云“gRPC是目前最常用也是性能最好的RPC框架之一”,本周阿巩将从一次RPC调用流程看在各场景下gRPC框架的解决方案,直击gRPC优秀的本质。上一篇中我们提到了HTTP/2和ProtoBuf 协议,gRPC便是结合了 HTTP/2 与 Protobuf 的优点,在应用层提供方便而高效的 RPC 远程调用协议。那空口无凭,先来简单总结回顾下HTTP/2和ProtoBuf 协议分别是如何提升性能的,再来展开讨论。日拱一卒,让我们开始吧!
👆点击“博文视点Broadview”,获取更多书讯 我们在分布式开发中经常听到的一个词就是“服务治理”。在理解“服务治理”的概念之前让我们先理解什么是分布式系统,分布式系统之间如何通过RPC(Remote Procedure Call,远程过程调用)方式通信,以及如何解决RPC框架存在的问题,这样才能真正地理解服务治理的核心思想。 分布式系统 分布式系统指的是通过网络连接让多台计算机协同解决单台计算机所不能解决的计算、存储等问题,多台计算机之间通过 RPC 方式通信。在使用分布式系统前,首要解决的问题是如
WebSocket是一种协议,用于在Web应用程序和服务器之间建立实时、双向的通信连接。
最近在项目中在做一个消息推送的功能,比如客户下单之后通知给给对应的客户发送系统通知,这种消息推送需要使用到全双工的websocket推送消息。
该博客描述了 Cilium 如何在不使用 Sidecar 的情况下提供服务网格。在这篇博客中,我们将扩展 mTLS 的主题,并研究 Cilium 如何提供具有出色安全性和性能特征的基于 mTLS 的无边车身份验证。
为了使服务做好部署到生产环境中的准备,需要确保满足三个关键的质量属性:安全性、可配置性和可观测性。
在讨论可用性和弹性时,我们通常是从基础设施和服务的角度来探讨的。我们很少考虑是否可以在客户端采用某种方法来提高后端服务的“实际感知可用性”(即在客户端测量到的服务的可用性)。这主要是因为我们在大部分情况下都无法控制客户端与服务的交互方式。但实际上我们有办法对客户端和服务之间的交互进行控制,从而提高客户端对服务的“实际感知可用性”。
Apache Skywalking 是一款优秀的分布式链路追踪系统以及 APM 系统,但在社区的实现中,并没有着重考虑客户端负载的问题。因为社区已经有很多对 gRPC 的代理的成熟方案(Skywalking 中 Agent 探针与后端主要通过 gRPC 方式通信)。
预备知识 可能需要看一点点预备知识 OAuth 2.0 不完全简介: https://www.cnblogs.com/cgzl/p/9221488.html OpenID Connect 不完全简介:
据 Akamai 称,83% 的网络流量通过 API。微服务、服务器和客户端不断通信以交换信息 [1]。即使您进行 Google 搜索以访问本文,也涉及到您的浏览器客户端调用 Google API。鉴于 API 控制着互联网,因此企业严重依赖它们。API 健康状况与业务繁荣直接成正比。
转载来源: https://www.cnblogs.com/yangxu-pro/p/9253667.html
领取专属 10元无门槛券
手把手带您无忧上云