• SeaTunnel 是一个分布式、高性能的数据集成平台,用于海量数据(离线和实时)的同步和转换。SeaTunnel 原名 Waterdrop,2021 年 10 月 12 日起更名为 SeaTunnel。SeaTunnel是一个非常好用的超高性能分布式数据集成平台,支持海量数
  • 徐振中于201 年加入 Netflix,担任实时数据基础架构团队的创始工程师,后来领导了流处理引擎团队。他分享了他的团队的主要成就: 在 Netflix 的所有组织中将流数据用例从 0 增加到 2000 多个。 构建和发展了成功的产品,例如
  • 让我们首先将事件定义为机器可读数据,当发生某些事情时,设备或服务会发出该数据,例如,客户在应用程序中单击。事件流是单个事件或小批量事件从生产者到消费者的代理和传输过程。事件流平台正在接收、即时转换事件(尽管这是可选的),然后将事件暴露给消费者。事件流平台区别于消息队列系统的一个重要特性是,当 icon
  • 让我们先来看看Optional(在Java8中引入)是做什么的?Optional是对一个对象的封装,提供了安全处理底层对象的方法,同时避免了可怕的空指针异常。这提供了与Kotlin的nullable数据类型基本相同的行为,并允许Java有办法模仿Kotlin的nullable icon
  • MicroStream是行业中真正的游戏规则改变者。如果你想创建真正高性能的微服务,在真正高压的环境中工作,那么Helidon + MicroStream是一个非常好的选择!它不仅易于设置和使用,而且现在已完全集成。MicroStream 取代了重量级的 JPA,并允许您存储和部分加 icon
  • 到目前为止,在 Go 中创建函数 filter() 是很困难的,它可以根据谓词的布尔值来过滤任何元素的列表。如果你知道列表的类型,这是有可能的。 icon
  • 如何使用 Redis 的特性来生成反应式数据流?Redis 是我遇到的最强大、最通用的技术之一。可悲的是,大多数人只知道它是因为它是一个很好的缓存解决方案。我们需要解决这个问题。特别是,我想向您展示您可以创建一个以 Redis 作为主要组件的反应式架构。这是一个巨大的 icon
  • 在Go 1.18之前,当你想从Go中的map中提取一个键列表时,你必须编写代码来迭代map并将键添加到一个slice中。从1.18起,有了新的泛型功能,你可以写一个单一的通用函数,从任何map中获取键,并在需要时使用它。不用再为特定类型的map编写代码了。伴随着Go 1.18 icon
  • 排序是新泛型功能的一个非常自然的用例。在Go中对slice进行排序是以前每次有新的slice类型时都要重新编写的事情之一。有时你会为两种不同的类型使用相同的代码。从Go 1.18开始,由于新的泛型功能,这不再是一个问题了。你可以编写一个单一的通用排序函数,它适用于任何 icon
  • Easy Rules 是一个简单而强大的 Java 规则引擎,提供以下功能: 轻量级框架和易于学习的 API 基于 POJO 的开发 有用的抽象来定义业务规则并轻松应用它们 从原始规则创建复合规则的能力 使用表达式语言(如 MVEL、SpEL icon
  • 检查一个数组是否包含一个给定的值是一个流行的编程函数,在许多编程语言中都是原生实现的。在Go中,我们必须自己实现它,但由于新的泛型功能,我们可以编写一个单一的contains()函数,它将适用于任何类型的slice,其值可以被比较。 icon
  • 从slice中获取最小值和最大值是开发人员在日常编码中编写的一些最简单的函数。问题是,当你想从int和float64s这个slice中获取最小值或最大值时,1.18版本以前,你不得不为每个slice类型写两个函数。然而,从1.18版本开始,Go引入了备受期待的泛型函数,现在你 icon
  • map()函数是另一种函数式编程范式,由于新的泛型功能,它可以在Go中轻松实现。它的工作原理是应用一个函数,将单个slice元素作为参数,对其进行转换,并返回输出值,其中采取和返回的类型不一定相同。例如,你可以使用map()函数将字符串转换成int的slice;或者格式化字符 icon
  • 规则引擎模式:这种模式的本质是if - else ,拆分if - else每个分支到规则类中,然后,主规则引擎类将保存所有规则并找到与客户端请求匹配的规则。定义规则类为了确保所有规则类都实现相同的方法,让我们定义一个每个类都将实现的接口: icon
  • 避免在使用 Project Reactor 时因混合反应性和非反应性逻辑而导致的意外行为。在使用 Project Reactor 或任何其他反应式流实现时要记住的最重要区别之一是代码执行中组装assembly时间与订阅时间之间的区别:换句话说,反应式发布者(F icon
  • Queue 和 Deque的区别在于 ,您只能从 Queue 的后端添加元素,但可以在 Deque 的前端和后端添加元素。考虑你想实现一个售票柜台。人们可以从最后进入队列,并将从前面移除。而且,为了实现这个场景,我们将使用的数据结构将是  icon
  • reduce()函数是由 JavaScript 和 Python 等其他编程语言推广的函数式编程概念。它的工作原理是通过对数组中的每个元素应用一个产生部分结果的函数,将一个数组还原成一个单一的值。最后一项之后的结果是整个列表的累积值。到目前为止,在 Go 中,创建这种适用于不 icon
  • 假设您正在使用 Java 进行某种数据分析,也许您正在分析交易(如销售)。Transaction在对对象执行计算之前,您需要评估复杂的过滤器。< icon