我正在评估谷歌应用引擎的开源应用的几种技术。我正在谷歌搜索引擎上搜索有关OSGI的信息。
我找到Lemmon但似乎是一个死的项目。最后一次检查是在2009年中期...: - / 从2009年4月开始还有一个eclipse博客文章,但这不是一个真正的成功故事。
有没有人在GAE应用程序中成功使用过OSGI?
答案 0 :(得分:7)
最大的问题是OSGi框架与之间的不兼容性。关于线程管理的GAE。
GAE为您管理线程(和机器实例),并使您很难/控制您在自己的应用程序中处理线程的方式。 OSGi确实恰恰相反。
答案 1 :(得分:5)
我也对some experiments做了this question。
除了各种技术问题之外,GAE和OSGi在概念上根本不适合。 OSGi维护了很多内部状态,例如哪些bundle已经启动,并且具有非常精细的生命周期。在GAE上,您的应用程序分布在多个JVM上,JVM可以随时终止。实际上,您必须为每个请求重新创建/同步整个捆绑启动过程。
答案 2 :(得分:1)
我没有在GAE上使用OSGI,但我有一个建议,你可能会尝试 - 用Lemmon(或其他实现)执行概念的仓促证明。基本上,试试吧。
据我了解,您可以免费设置Google App Engine网站。我会利用这一点,尽可能快速地进行概念验证。
请记住,一些开源项目不会有持续的签到。有时,一旦开源项目完成了作者打算做的事情,开发就会停止,直到需要新的东西。当原始实施者的要求发生变化或者代码库采用者发现问题时,下一次登记可能不会持续几个月。