Resilience4j库使用指南

Resilience4j库使用指南

相关技术 2年前 (2022-11-14) 浏览: 752 评论: 0

在本文中,我们将讨论Resilience4j库【https://github.com/resilience4j/resilience4j】。 该库通过管理远程通信的容错能力来帮助实现弹性系统。 该库受到Hystrix的启发,但提供了更方便的API和许多其他功能,如Rate Limiter(阻止太频繁的请求)、Bulkhead(避免太多并发请求)等。 Maven设置 首先,我们需要将目标模块添加到p

GraalVM系列之二-Polyglot技术

GraalVM系列之二-Polyglot技术

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

在上一篇中介绍了GraalVM的基本功能,GraalVM是Oracle的一个新的开源项目,它试图使Java虚拟机成为运行所有主要语言的通用虚拟机。在GraalVM之前,已经很少有像Scala、Closure这样的语言将JVM作为其运行时。这对于这些语言来说是非常成功的。GraalVM进一步扩展了这一思想,使得以JVM为目标变得很容易,从而使更多的语言可以在JVM上共存。 GraalVM是从2014

WheelTimer哈希轮计时器介绍

WheelTimer哈希轮计时器介绍

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

Hashed wheel timers介绍 哈希轮计时器是一种非常有趣的数据结构,在网络服务器中得到了广泛的应用。它们的低内存开销和合理的效率保证非常适合处理数百万个连接的服务器,每个连接都有一个计时器。我们不会花太多时间描述它们是如何工作的,相反,我们将研究一些实现,并尝试评估它们的相对权衡。 让我们快速回顾一下哈希轮计时器的基本数据结构: 基本的数据结构看起来像一个hashmap,带有单独的链

Java日志框架:log4j VS logback VS log4j2

Java日志框架:log4j VS logback VS log4j2

相关技术 2年前 (2022-01-14) 浏览: 725 评论: 0

如果您曾经不得不分析生产中的问题,我相信您知道良好的日志记录是多么重要。良好的日志记录需要三件事: 日志消息需要提供所需的信息,以了解应用程序在内部执行的操作。 编写日志消息必须尽可能高效,这样才能不影响应用程序的性能。 您需要能够根据不同的部署环境和情况调整日志详细信息。 虽然您仍然需要自己决定应该为每个用例编写哪些日志消息,但您不需要担心需求2和需求3。各种日志框架已经解决了这些技术需求。您只

SpringBoot集成Caffeine缓存

SpringBoot集成Caffeine缓存

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

Caffeine cache是一个针对Java的高性能缓存库。在本文中,我们将介绍它与Spring Boot如何一起使用。 Maven依赖 要开始使用咖啡因Caffeine和Spring Boot,我们首先添加spring-boot-starter-cache和咖啡因Caffeine依赖项: <dependencies> <dependency> <groupId&g

Apache Pulsar系列之-概念、体系结构

Apache Pulsar系列之-概念、体系结构

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

Apache Pulsar是一个开源的分布式流媒体平台,最初由Yahoo创建。这是Apache基金会自2018年9月以来的顶级项目之一,该项目主要由该公司开发。https://streaml.io/ (最近被Splunk收购)。 Apache Pulsar概念和架构 Pulsar是一个基于发布-订阅模式的分布式、多租户、高性能和容错平台。 在这种体系结构中,我们区分两种类型的应用程序:生产者和消费

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

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

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

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

RocksDB正在吞噬数据库世界

RocksDB正在吞噬数据库世界

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

分布式数据库简史 web2.0时代给数据库设计带来了新的兴趣。虽然传统的RDBMS数据库从1970年代末商业化开始到网络时代都能很好地满足企业界的数据存储和数据处理需求,但新应用程序处理的大量数据以及处理这些数据的速度需要一种新的方法。为了更好地了解这些新数据库设计的需求,我强烈建议观看数据库大师michaelstonebraker在斯坦福大学计算机系统学术讨论会上的演讲。在此期间出现的新数据库采

每个程序员都需要知道的IntelliJ IDEA插件

每个程序员都需要知道的IntelliJ IDEA插件

相关技术 2年前 (2022-03-09) 浏览: 709 评论: 0

Grep控制台IntelliJ插件 在成千上万行的日志中找到了什么,又累又沮丧?是的,我也是。但我找到了一种结束这种痛苦的方法。介绍Grep Console,帮助您在您搜索的日志. 使用IntelliJ Idea中的Grep控制台插件,您可以轻松地搜索和过滤类似于命令的内容。此外,它还基于下图所示的正则表达式对。 更多关于IntelliJ IDEA插件:Grep控制台(https://plugin

什么是Apache Druid?

什么是Apache Druid?

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

在本文中,我们将对Apache Druid框架有一个完整的概述,从什么是timeseries(时间序列)开始,我们如何处理此类数据,以及对其体系结构的描述。最后,我们将看到如何在平台内接收和查询数据。 时间序列 时间序列是按时间顺序排列的数据点序列。 这些离散点通常被存储和分析,以便做出预测或发现行为模式。在常见的大数据体系结构中,标准方法是收集来自各种来源的数据(用户数据、应用程序数据、web分

Apache Druid-大数据分析的应用场景

Apache Druid-大数据分析的应用场景

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

什么是Apache Druid? Apache Druid是一个实时分析数据库,专门用于对大型数据集进行快速分析。在需要实时接收、高正常运行时间和快速查询性能的情况下,此数据库更常用于为用例供电。德鲁伊不仅可以批量分析数十亿行,还可以实时分析。它提供了许多与不同技术的集成,如Apache Kafka Security、云存储、S3、Hive、HDFS、DataSketches、Redis等。它还遵

Application Performance Monitoring (APM)工具的实用概述

Application Performance Monitoring (APM)工具的实用概述

相关技术 2年前 (2022-07-27) 浏览: 651 评论: 0

在当今的互联网世界,应用程序不仅为你的品牌增值,而且还需要提供全天候的快速响应和实时问题解决。如果您的业务依赖软件应用程序进行日常运营,则应用程序性能监控(APM)至关重要。APM工具允许您快速定位性能问题,确保应用程序的最高性能。 什么是应用程序性能监控? APM是利用遥测数据和监控软件跟踪应用程序关键性能指标的实践。这些软件工具可以帮助您了解应用程序性能、解决可用性问题和优化资源使用,还可以帮

软件工程领域建模

软件工程领域建模

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

领域建模被理解为抽象建模。站点模型可以是在缺陷域中显示的想法或对象的说明。它还捕获了这些对象之间的明显关系。这类抽象对象的样本区域单位为图书、图书登记簿、会员登记簿、图书馆会员等。 建议的策略是快速生成一个粗略的抽象模型,只要压力是发现需求中表达的明显想法,而推迟深入的调查。后来在整个事件方法中,抽象模型被逐步地细化和扩展。领域分析中已知的3种对象。 整个领域分析中已知的对象分为3种类型: 边界对

响应式协议RSocket介绍

响应式协议RSocket介绍

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

什么是RSocket? RSocket是一种用于分布式应用程序的二进制点对点通信协议。从这个意义上说,它提供了一种替代HTTP等其他协议的方法。 RSocket和其他协议之间的全面比较超出了本文的范围。相反,我们将关注RSocket的一个关键特性:它的交互模型。 RSocket提供了四种交互模型。考虑到这一点,我们将用一个例子来探讨每一个问题。 Maven依赖项 对于我们的示例,RSocket只需

用于微服务通信的gRPC

用于微服务通信的gRPC

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

在过去,软件应用程序是作为一个巨大的整体构建的,并且仍在进行中。然而,最近,微服务体系结构已经成为开发软件应用程序的流行选择。在微服务体系结构中,微服务通常需要相互通信。与传统的RESTfulWebAPI相比,基于gRPC的RPC框架可以更好地替代微服务通信。 什么是微服务体系结构? 微服务体系结构由许多(通常是数百个)小型、自治、自包含的服务组成。微服务是围绕业务能力构建的。微服务体系结构的一些

异或双向链表是什么?

异或双向链表是什么?

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

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

使用SpringBoot创建RSocket服务器

使用SpringBoot创建RSocket服务器

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

在微服务的多样化世界中,HTTP是代理到代理通信中无可争议的领导者。它成熟,无处不在。但在某些情况下,HTTP请求-响应可能很麻烦。如果您需要传统请求-响应之外的通信模式,如fire-and-forget或streaming,该怎么办?如果你想向任何一个方向发送信息呢? 有了HTTP,有很多方法可以实现这一点,但这不是构建协议的目的。许多解决方案都带有额外的权衡或缺点。另外,这里没有规则手册说“你

领域驱动设计示例

领域驱动设计示例

相关技术 3年前 (2021-04-23) 浏览: 591 评论: 1

我以前看过很多IT项目。有的设计得很好,有的设计得很差。基于这些经验,我想写一点关于一个示例项目的内容,我还想展示如何用UML对一个示例项目进行建模,以及如果我们将领域驱动的设计原则应用到模型中会发生什么。 在继续之前,您应该阅读Eric Evans的“域驱动设计”和Vaughn Vernon的“实现域驱动设计”两本书。这个例子大部分都是基于他们的工作,如果你想深入研究领域驱动的设计,他们的书是必

基于Spring Boot的GraphQL项目

基于Spring Boot的GraphQL项目

相关技术 2年前 (2022-01-13) 浏览: 573 评论: 0

这是一篇面向那些想用Java创建GraphQL服务的人。它需要一些Spring Boot和Java知识,虽然我们简要介绍了GraphQL,但本教程的重点是用Java开发GraphQL服务器。 3分钟内搭建GraphQL GraphQL是一种从服务器检索数据的查询语言。在某种程度上,它是REST、SOAP或gRPC的替代品。 假设我们要从在线商店后端查询特定书籍的详细信息。 使用GraphQL,您向

下一代虚拟机-GraalVM

下一代虚拟机-GraalVM

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

GraalVM是一个高性能运行时,它在应用程序性能和效率方面提供了显著的改进,这是微服务的理想选择。它是为java、JavaScript、LLVM等语言编写的,如C++和C++语言,以及其他动态语言。它消除了编程语言之间的隔离,并在共享运行时启用互操作性。它可以独立运行,也可以在OpenJDK的上下文中运行,Node.js或者Oracle数据库。 对于Java程序 对于现有的Java应用程序,Gr

登录

忘记密码 ?

切换登录

注册