【问题标题】:Java-world equivalent of Apple's Service Management FrameworkJava 世界相当于 Apple 的服务管理框架
【发布时间】:2017-09-19 06:01:01
【问题描述】:

Apple 的SMF 包括:

  • XPC(一种进程间通信形式,面向服务)
  • 与launchd 集成(系统范围、操作系统耦合的恶魔和服务生命周期管理)
  • 队列调度 - 支持多核的异步并发
  • 每个进程的安全/特权级别

AFAIK,它是多任务、面向服务、操作系统级恶魔和服务的非常一致的封装。

我正在寻找 Java 轻量级 等价物,但我还没有找到现成的解决方案。到目前为止,我最好的选择是:

  • Apache KarafAIOLOS(提供 SOA 骨骼)
  • 任何对 Java 友好的 IPC 协议(XPC 的替代品)
  • Java fork/join Executors(用于异步并发和负载平衡)
  • Java 安全性(针对特权级别)

但我很确定在一个不错的基于 Java 的框架中必须有一些东西至少集成了上述三个。具有开箱即用并发性的 OSGI 已经成为了一些东西。

有什么建议吗?

【问题讨论】:

  • 这里推荐 Apache Karaf 和一些附加组件。但我不确定是否满足并发和负载平衡要求。 stackoverflow.com/questions/24625030/…
  • “具有开箱即用并发的 OSGi”是什么意思? OSGi 是一个线程安全的平台,Java 支持开箱即用的并发。
  • 嗨,尼尔!我觉得很荣幸能与 Neil Bartlett 谈论 OSGi! :) 好吧,我的意思是一些现成的解决方案,可以将 OSGi 服务作为并发工作单元进行管理——为我处理这些问题。将 OSGi 服务实现为 Java Executors 的框架将在运行时范围内执行它,并允许并发策略、服务特定执行优先级等的声明性规范。但所有这些都预先打包在 OSGi 运行时之上。
  • 您可以查看 OSGi 异步服务——请参阅 OSGi 第 6 版规范的第 138 章。 Apache Aries 中提供了此规范的实现。对于您正在寻找的其他内容,这些都是可以构建在 OSGi 之上的东西,但我不知道有一个产品可以将它们全部打包。
  • 嗯,Apache Aries 是我研究过的东西,但并不深入。我的第一印象是它太多了我正在寻找的东西,而且没有我需要的轻量级。但我会回来做更认真的检查。坦率地说,我不需要太多 - 基本上将 OSGi 服务桥接到 Java fork/join 执行器和一些并发策略的声明性配置,我就完成了。如果 Apache Aries 对于这个目标变得过于臃肿,我会听从你的建议并自己实现它。我只是讨厌重新发明轮子。

标签: java asynchronous osgi soa xpc


【解决方案1】:

只需在我的问题的 cmets 中写 @NeilBartlett 的答案:

Apache Aries。然后我可以毫不费力地实现我自己的要求。

【讨论】:

    猜你喜欢
    • 2011-05-06
    • 1970-01-01
    • 2015-04-08
    • 1970-01-01
    • 2013-05-15
    • 1970-01-01
    • 1970-01-01
    • 2018-05-13
    • 2011-04-20
    相关资源
    最近更新 更多