Skip to content

Introduction

The Open Services Gateway Initiative (OSGi) is a plugin architecture for composing Java applications. OSGi is an "in-process" approach to modularity such that components share the same application memory, etc.

Pros

The benefits of an in-process modular architecture like OSGi typically relate to performance and security concerns.

  • In-process communication is more efficient than out-of-process
  • Less need for authentication/encryption of inter-component communication

Cons

Whilst OSGi may be considered as a modular architecture it is still a more tightly-coupled approach than out-of-process architectures.

  • Restricted to Java-based components that can run in-process
  • Whilst theoretically can replace/upgrade components at run-time, still requires redeploy for major changes