当前位置: 首页 > 知识库问答 >
问题:

Spring Kafka lib和原生KafkaJavaAPI之间的区别

姬高澹
2023-03-14

对于Java/Kotlin Spring启动应用程序,如果我想向Kafka发送消息或使用来自Kafka的消息。您建议使用Spring Kafka库还是仅使用Kafka Java API。

不太确定Spring是否提供了更多的好处,或者只是一个包装器?对于Spring,他们提供了很多注释,当遇到一些运行时错误时,这些注释看起来更神奇。

想听一些意见。

共有1个答案

阚正真
2023-03-14

完整披露:我是Spring for Apache Kafka的项目负责人。

这完全取决于你和你的同事。

这有点类似于使用高级语言和编译器编写汇编代码 Vs.

对于熟悉Spring消息传递(JMS、RabbitMQ等)的现有Spring商店来说,这是一个自然的契合,API将非常熟悉(POJO侦听器、MessageCon的s、Kafka模板等)。

当使用最简单的API时,Spring会处理低级的东西,如提交偏移量,事务同步,错误处理等。

如果您有非常基本的要求和/或想自己编写所有代码,请使用本机 API。

 类似资料:
  • 1.在中可以使用哪些选项来创建查询?我看到和,但不确定是否还有其他选项? 2.原生查询和JPQL之间有什么区别?我刚刚意识到使用类名,例如ProductCategory,而本机使用表名,例如product_category。还有其他区别吗?

  • 问题内容: 在一个教程中,我读到和之间有区别。我发现它们改变了Python 3.0中这些函数的行为。什么是新行为? 以及为什么在python控制台解释器中 发送错误,但是如果我将其放在file.py中并运行它,不是吗? 问题答案: 在python 2.x中,返回一个字符串并在调用它的执行上下文中评估输入 在python 3.x中,已被废弃,该函数以前称为now 。因此,您必须手动调用,而不是想要旧

  • 我对面向对象编程有这种困惑。对于我编写的一些代码,我必须回答一些问题: 此代码中使用的OOP原则是什么 它们是如何应用的 解释此代码中使用的OOP概念 在这里,我不理解这两个词“原则”和“概念”之间的区别。它们是一样的吗?还是不同? 我知道有4个面向对象的原则。 继承权 在我的代码中,我有setter方法、getter方法、抽象类、类之间的继承。所以我的回答是: > 继承,抽象,封装,多态性。 我

  • 问题内容: 我错放了太多次了,我想我一直忘记,因为我不知道两者之间的区别,只是一个给了我我期望的价值,而另一个却没有。 为什么是这样? 问题答案: 是的简写形式(尽管请注意,该表达式只会被计算一次。) 是的,即指定一元的到。 例子:

  • 问题内容: 因此,我有一段简单的代码可以打印出整数1-10: 然后,如果仅在第3行上更改一个运算符,它将打印出无限数量的1整数(我知道为什么会这样做)。为什么在运行第二个程序时没有出现语法错误?如果赋值运算符后面跟着一个加法运算符,它不会调用语法错误吗? 问题答案: 与相同, 只是意味着。