我正在调查使用Jigsaw来减少微服务的占用空间.我必须找到的最后一个依赖项是java.beans.Introspector.
想象一下,当我发现我需要引入整个模块java.desktop时,我会感到惊讶,它包含各种不相关的东西,比如awt,applets,swing等.
这对我来说似乎很疯狂,当然bean内省应该是基本语言的一部分,与UI功能无关.我认为依赖来自Spring Boot的嵌入式Tomcat,所以我不能自己修改它.
问题:模块是您可以访问的最精细的粒度还是有另一种方法来修剪脂肪.
我希望能够在Couchbase中更新或创建文档时进行一些数据操作。
文档可以通过Sync Gateway或我们自己的从http服务流式传输数据的代码到达我们的数据库。拥有一个可以拦截所有更新的位置,将是很棒的。
我们正在对此数据运行一个Spring Boot REST API,因此这是拥有拦截器/侦听器的好地方。无论哪种方式,我都倾向于Java解决方案。
数据被编写为JSON而不是使用Spring实体,所以我不能使用仅侦听Entity类事件的ApplicationListener。如果我错了纠正我。我可以找到一些珍贵的设置ApplicationListeners的示例,因此我在这里可能错了,但似乎无法正常工作。
我看到有一个Eventing服务,您可以在其中编写Java脚本,但是由于多种原因,我不希望这样做。我不希望在平台和语言之间分散我们的API代码,也不确定是否可以在我们的系统上运行事件服务,等等。同样,我也可以公开辩论。
就我所知,这仅使DCP显得很低。 https://blog.couchbase.com/couchbases-history-everything-dcp/,但看起来像是完成这项工作的工具。
问题:是否有另一种较低级别的方法来捕获Couchbase中的JSON对象(不是DCP实体)的更新事件。