当前位置: 首页 > 面试题库 >

OSGi-这种技术有多成熟?

高嘉熙
2023-03-14
问题内容

我有我需要共享某些网络资源(的要求jsphtmljsimagescss在不同等)的Spring基于Struts 2应用程序。似乎OSGi可以用来实现这一目标?

  • 有人可以提供一些有关如何实现此目标的指示OSGi吗?
  • 其次,我想知道是否OSGi足够成熟,可以用于生产应用程序

提前致谢!

编辑: 我看了这篇文章,似乎人们可以跨Web应用程序共享Web捆绑包。唯一的区别是他们使用Spring
MVC做到了。我想知道是否也可以使用Struts2应用程序来实现?

编辑2: 我基本上不清楚以下内容:

  • ‘shareable-bundle’(包含要共享的Web资源)是否将打包为.war。如果是,那么由于将再次与主“ Web”应用程序共享此捆绑包,因此将从何处形成最终的Web上下文?我期望最终的Web上下文将由“ shared-bundle”和“ main” Web应用程序合并而成。它会自动发生吗?有任何想法吗?

问题答案:

虽然OSGI可能是一个解决方案,但可能有点过大(而且,正如Bozho指出的那样,您将需要具有OSGI功能的容器)。也许看看如何在Maven的项目之间共享资源以获得其他选择:

  • 剪切并粘贴它们。
  • 使用汇编和依赖插件
  • 使用maven-remote-resources-plugin

在此博客中,我将展示如何进行第二种选择,因为我认为这是目前最稳定,最灵活的选择。将来,我将尝试使用maven-remote-resources-
plugin并编写一个教程。

编辑:要回答来自OP的评论。 是的 ,它的想法是创建一个可共享Web资源的程序集,并使用maven-dependency-
plugin在“资源消耗者”项目中提取和解压缩程序集。所有这些都在上面提到的博客文章中进行了解释和详细说明。让我知道其中是否有任何不清楚的地方。



 类似资料:
  • 问题内容: 我的客户要求我建立一个实时应用程序,可以实时聊天,发送图像和视频。他要求我提出自己的技术栈,因此我做了很多研究,发现最容易构建的将是使用低于技术栈的栈 1)Node.js和群集可最大化一个服务器实例的CPU核心-语言 2)Socket.io-实时框架 3)Redis-服务器的多个实例的发布/订阅 4)Nginx-反向代理并负载均衡多台服务器 5)Amazon EC2-运行服务器 6)A

  • 在Spring Security中,我看到由和(dot)。那么这个技术是什么?我以前读过。但现在我忘了,有人能告诉我一个名字,以便我了解它吗?

  • 成对测试技术也称为配对测试。它用于测试所有可能的离散值组合。这种组合方法用于测试使用复选框输入,单选按钮输入的应用程序(当必须选择一个选项时使用单选按钮,例如当选择性别男性或女性时,只能选择一个选项),列表框 ,文本框等 假设有一个用于测试的软件应用程序的功能,其中有个字段用于输入数据,因此离散组合的总数是(1000亿),但是所有组合的测试都很复杂,因为它会花很多时间。 下面通过一个例子来理解测试

  • 问题内容: 我们仍处于项目的设计阶段,但我们正在考虑在嵌入式Linux内核上具有三个独立的进程。进程之一是通信模块,该模块处理通过各种介质往返于设备的所有通信。 其他两个过程将需要能够通过通信过程发送/接收消息。我正在尝试评估Linux提供的IPC技术。其他进程将发送的消息的大小将有所不同,从调试日志到流媒体,速率约为5 Mbit。同样,媒体可能同时流进和流出。 您将为该应用建议哪种IPC技术?

  • 问题内容: 我的OSGi项目中的每个捆绑软件都有自己的BundleActivator,我认为这很正常。这将传递当前的BundleContext,这对于获取服务引用和其他内容很有用。 但是,如何从包中的类中获取BundleContext?将其分配给BundleActivator中的公共静态字段很烂,并将其作为参数传递也很烂。有没有更聪明的方法? 问题答案: 您可以使用。 请参见FrameworkUt