gRPC:Java中的同步和异步unary RPC

gRPC:Java中的同步和异步unary RPC

相关技术 3年前 (2021-09-26) 浏览: 3784 评论: 0

gRPC是用于微服务间通信的远程过程调用(RPC)框架。gRPC支持四种类型的RPC: 1. Unary RPC:客户端发送单个请求并接收单个响应。 2. Server streaming RPC(服务器流式):客户端发送单个请求,作为回报,服务器发送消息流。 3. Client streaming RPC(客户端流式):客户端发送消息流,服务器以单个消息响应。 4. Bidirectional

自动化回归测试平台——AREX上手实践

自动化回归测试平台——AREX上手实践

相关技术 1年前 (2023-04-03) 浏览: 352 评论: 0

原文地址:https://mp.weixin.qq.com/s/ssOqc1dQPLkpZ61uqF8hdw AREX 是一款开源的自动化测试平台,基于 Java Agent 技术与比对技术,通过流量录制回放能力实现快速有效的回归测试。同时提供了接口测试、接口比对测试等丰富的自动化测试功能,无需编程能力也可快速上手。 AREX 可以通过 Docker-Compose 一键安装所有的基础服务组件。除

Serverless无服务器架构系列二

Serverless无服务器架构系列二

相关技术 3年前 (2021-04-09) 浏览: 338 评论: 0

继续上一篇:Serverless无服务器架构系列一 Serverless缺点 无服务器架构当然有很多值得喜欢的地方,但它们有着重要的权衡。其中一些权衡是这些概念所固有的;它们不能完全由进展来解决,而且它们总是需要考虑的。其他的则与当前的实现有关;随着时间的推移,我们可以期望看到这些问题得到解决。 固有缺点: 供应商控制 对于任何外包策略,您都是在将部分系统的控制权交给第三方供应商。这种缺乏控制可能

Netflix如何使用Druid以确保高质量的体验

Netflix如何使用Druid以确保高质量的体验

相关技术 3年前 (2021-06-12) 浏览: 276 评论: 0

在不断推动创新技术更新的同时,确保Netflix始终如一的出色体验绝非易事。我们如何才能确信更新不会伤害我们的用户?当我们打算做的时候,我们真的在做可衡量的改进? 使用回放设备的实时日志作为事件源,我们得出测量结果,以便理解和量化用户的设备如何无缝地处理浏览和回放。 一旦我们有了这些措施,我们就把它们输入数据库。每一项测量都会标记出使用哪种设备的匿名细节,例如,该设备是智能电视、iPad还是And

基于微软的Dapr构建微服务系统

基于微软的Dapr构建微服务系统

相关技术 3年前 (2021-08-10) 浏览: 787 评论: 0

当你第一次读到微软本周发布的最新开源项目Dapr时,你可能会觉得它是另一个服务网格。相反,Dapr在一篇博客文章中被描述为“一个开源、可移植、事件驱动的运行时,使开发人员能够轻松构建在云和边缘上运行的弹性、微服务无状态和有状态的应用程序。” 虽然该项目在其Istio服务网格实现中使用了特使代理使用的熟悉的侧车架构,但Azure项目管理总监Gabe Monroy在一次电子邮件采访中解释说,Dapr作

频率限制Rate limit在Akka Streams中的应用

频率限制Rate limit在Akka Streams中的应用

相关技术 3年前 (2021-10-29) 浏览: 425 评论: 0

最近,我有机会通过在FlowWithContext中添加未提供的节流操作符为Akka做出贡献,它可以在流中承载上下文而不必关心它,就像Kafka offset一样。这是学习Akka Streams的一些实现细节的一个很好的机会,下面是我学到的。 在我们开始之前,为什么我们需要throttle? 有很多情况下,我们可以使用throttle,我们使用throttle的主要原因是对访问外部资源(如API

异或双向链表是什么?

异或双向链表是什么?

相关技术 3年前 (2021-03-08) 浏览: 598 评论: 0

异或双向链表的特点是在内存使用上更有效率 为了使小型设备具有成本效益,制造商通常需要考虑减小内存大小。一种选择是找到我们日常实现中使用的抽象数据类型(ADTs)的替代实现。一个这样的ADT是双链表结构。 在这篇文章中,一个传统的实现和替代实现的双链表ADT,插入,遍历和删除操作。我还提供了每种方法的时间和内存度量,以比较它们的优缺点。另一种实现是基于指针距离的,因此在本文中我称之为指针距离实现。每

Dapr与Service Mesh服务网格的区别

Dapr与Service Mesh服务网格的区别

相关技术 3年前 (2021-04-25) 浏览: 763 评论: 0

随着最近Dapr发布的第一个产品版本的发布,我们终于看到了对Istio的一个可行的回应,也许还有来自微软的其他服务网格行业。如果您不熟悉,Dapr是一个旨在解决现代分布式应用程序挑战的编码框架。您可能会问,“但这不就是service mesh服务网格的用途吗?“是的,只是服务网格的焦点不对。他们关注的是网络基础设施问题;Dapr关注的是开发人员构建微服务所需的内容。这种转变可能是业界解决分布式体系

为什么我们在RocksDB上创建CockroachDB项目?

为什么我们在RocksDB上创建CockroachDB项目?

相关技术 3年前 (2021-07-08) 浏览: 708 评论: 0

如果在数据库课程的期末考试中,你问学生是在日志结构的合并树(LSM)上还是在基于BTree的存储引擎上构建数据库,90%的学生可能会回答说,这个决定取决于你的工作量。”lsm用于写重负载,btree用于读重负载”,有责任心的人会写。如果您调查了目前大多数NewSQL(或分布式SQL)数据库,那么大多数数据库都是构建在LSM(即RocksDB)之上的。因此,您可能会得出这样的结论:这是因为现代应用程

SpringBoot:使用Caffeine实现缓存

SpringBoot:使用Caffeine实现缓存

相关技术 3年前 (2021-08-31) 浏览: 1001 评论: 0

在本博客中,我们将探讨如何使用Spring的缓存框架向任何Spring Boot应用程序添加基本缓存支持,如果没有正确实现,还将探讨缓存的一些问题。最后但并非最不重要的一点是,我们将看几个在真实场景中有用的缓存示例。 为什么要在应用程序中添加缓存 在深入探讨如何向应用程序添加缓存之前,首先想到的问题是为什么我们需要在应用程序中使用缓存。 假设有一个包含客户数据的应用程序,用户发出两个请求来获取客户

使用Spring Boot和JPA创建GraphQL API

使用Spring Boot和JPA创建GraphQL API

相关技术 2年前 (2022-04-25) 浏览: 322 评论: 0

GraphQL既是API查询语言,也是使用当前数据执行这些查询的运行时。GraphQL让客户能够准确地要求他们所需要的东西,仅此而已,使API随着时间的推移更容易发展,并通过提供API中数据的清晰易懂的描述,支持强大的开发工具。 在本文中,我们将创建一个简单的机场位置应用程序。 生成项目 去https://start.spring.io/并生成一个项目,不要忘记添加Spring Web、H2数据库

Dolt-一个具有Git特性的关系数据库

Dolt-一个具有Git特性的关系数据库

相关技术 3年前 (2021-03-26) 浏览: 1122 评论: 0

Dolt是一个SQL数据库,您可以像git存储库一样进行分叉、克隆、分支、合并、推送和拉取。连接到Dolt就像任何MySQL数据库一样,使用SQL命令运行查询或更新数据。使用命令行界面导入CSV文件、提交更改、将更改推送到远程服务器或合并队友的更改。 你所知道的Git的所有命令对Dolt的作用完全相同。Git版本文件,Dolt版本表。就像Git和MySQL生了个孩子一样! 我们还建立了DoltHu

Cloud-Native云原生架构系列一

Cloud-Native云原生架构系列一

相关技术 3年前 (2021-05-12) 浏览: 508 评论: 0

Cloud native是一代人中最大的推动者。它让开发人员只需开发。只关注真正重要的东西:创建客户想要(喜欢)的软件使用。 本文从三个方面介绍Cloud-native: 云原生/云本地架构:它是什么?为什么重要? 云原生/云本地开发:云如何改变您的开发方式? 云原生原则和实践:23个关于如何实现云原生的杀手锏 云原生架构:它是什么以及它为什么重要 云原生架构充分利用公共云的分布式、可伸缩性和灵活

Apache Kafka Vs RabbitMQ

Apache Kafka Vs RabbitMQ

相关技术 3年前 (2021-07-30) 浏览: 235 评论: 0

什么是RabbitMQ? RabbitMQ是应用最广泛的通用开源消息代理。它于2007年发布,是消息传递系统的主要组件。目前,它用于流式处理用例。RabbitMQ能够处理后台任务或充当微服务之间的消息代理。它帮助web应用程序减少了负载。此外,它还减少了服务器对那些耗时的任务或资源的交付时间。 什么是Apache Kafka? Apache Kafka也是一个开源的分布式发布/订阅消息系统。它于2

ApachePulsar中的地理复制2:模式和实践

ApachePulsar中的地理复制2:模式和实践

相关技术 3年前 (2021-10-04) 浏览: 846 评论: 0

在上一篇博文中,我概述了ApachePulsar中的地理复制功能。Apache Pulsar利用Apache BookKeeper提供的可扩展流存储,是一个消息传递系统,支持跨多个数据中心的同步地理复制(通过Apache BookKeeper)和异步地理复制(在Pulsar代理级别配置)。在这篇博文中,我将描述一些人们可以用来跨多个数据中心设置地理复制的模式。 异步地理复制只需30秒 首先,让我花

如何利用 AREX 在本地快速复现线上问题

如何利用 AREX 在本地快速复现线上问题

相关技术 1年前 (2023-05-08) 浏览: 185 评论: 0

在软件开发过程中,线上问题的复现和定位是开发日常的一个活动。然而令开发人员头疼的是,由于线上环境与本地环境的配置和数据存在差异(如数据库中的数据、缓存中的数据等),线上的问题往往无法快速在本地测试环境中进行复现,排查困难度大大增加。 面对这种问题,可以利用 AREX 这款自动化回归测试工具来进行快速复现。AREX 的基本原理是在生产环境中录制流量和数据,在测试环境回放并自动比对接口服务内的外部请求

云原生应用讲解系列一

云原生应用讲解系列一

相关技术 3年前 (2021-04-10) 浏览: 367 评论: 0

某一天,在办公室,你在做“下一件大事” 你的手机响了。是你友好的招聘者——一天给你打两次电话谈新工作的人。 但这次不同了:创业、股权和充足的资金。 一提到云和尖端技术,你就会被推到边缘。 快进几周,你现在是一个新员工在设计一个主要的电子商务应用程序的设计会议。你将与领先的电子商务网站竞争。 你将如何建造它? 如果您遵循过去15年的指导,您很可能会构建如图1.1所示的系统。 传统单体设计 构建一个包

Spring Webflux的响应式Java简介

Spring Webflux的响应式Java简介

相关技术 3年前 (2021-06-17) 浏览: 558 评论: 0

在本文中,您将使用Spring Boot和Spring Webflux创建一个反应式web服务。web服务将演示如何使用Split的javasdk在反应式环境中使用特性标志。您将使用Spring initializer项目快速地用必要的配置参数引导应用程序。您将构建的简单应用程序将公开一个资源,该资源每秒从James Baldwin的《致我侄子的一封信》中的一段话流式传输一次单词。 Java中的反

Apache Pulsar——下一代消息发布订阅平台

Apache Pulsar——下一代消息发布订阅平台

相关技术 3年前 (2021-08-11) 浏览: 899 评论: 0

Apache Pulsar是一个开源发布-订阅消息平台,由持久存储(Apache Bookkeeper)支持,具有以下特性: Geo-Replication 多租户 零数据丢失 Zero Rebalancing Time 统一排队和流模型 高度可扩展 高通量 Pulsar代理 功能 Pulsar文档详细解释了每个特征;这个博客是从Pulsar用户的角度写的,涵盖了在开始使用Pulsar之前需要了解

Kubernetes上的gRPC负载均衡服务

Kubernetes上的gRPC负载均衡服务

相关技术 3年前 (2021-11-01) 浏览: 913 评论: 0

gRPC是用于进程间通信的最流行的现代RPC框架之一。对于微服务体系结构来说,这是一个很好的选择。毫无疑问,部署微服务应用程序最流行的方法之一是Kubernetes。 Kubernetes部署可以有相同的后端实例来服务许多客户端请求。Kubernetes的ClusterIP服务提供负载平衡的IP地址。但是,这种默认的负载平衡在gRPC中无法立即实现。如果您将gRPC与许多部署在Kubernetes

登录

忘记密码 ?

切换登录

注册