Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

OSGi Remote Services and ECF

Introduction

The OSGi Alliance provides a new standard for distributed service-oriented architecture called Remote Services. Remote Services extends functionality of the OSGi service registry to export arbitrary services for out-of-process access.

ECF's support is implemented as a layered set of open, stable, documented, community-created and reviewed APIs. This layered modular structure allows service implementers and service consumers to easily but flexibly declare, implement, test, deploy, and manage their distributed services. Such an model is helpful for implementing distributed applications for two at least reasons:

  1. It reduces overall system complexity by promoting loose coupling and high cohesion via OSGi Services. Distributed applications can easily become complicated and difficult to manage, version, and maintain. The use of OSGi Remote Services to create a formal separation between contract/service type and implementation makes system complexity much easier to understand and manage.
  2. It provides flexibility. Networked applications frequently require a good deal of flexibility...i.e. the flexibility to replace one transport with another, one security model for another, one deployment and management approach with another, synchronous RPC with asynchronous messaging. The flexibility of using OSGi modularity and ECF allows service developers and consumers to mix-and-match transport protocols and serialization formats, supports interoperability and integration with existing systems, and supports use of synchronous and/or asynchronous invocation patterns as needed.
  3. Eliminate vendor lockin. ECF's implementation of Remote Services is the only implementation that allows distribution providers and discovery providers to be replaced

Here are several tutorials showing how standardized Remote Services can be used with ECF's implementation.

Distributedosgi1.png


Related Documentation

Getting Started with ECF's OSGi Remote Services Implementation

ECF Remote Services Tutorials

ECF API Docs

API Javadocs

Getting Started with Using the ECF Remote Services API

Distributed EventAdmin Service

Back to the top