Paremus e-news - February 2008

Revolutionizing Java Development and SOA Runtime

 
By Dr. Richard Nicholson, CEO, Paremus.
 

The Spring development framework has fundamentally re-shaped the Java enterprise market place. SpringSource succeeded in challenging the dominance of the major Java application server vendors and changing the mindset from monolithic application server infrastructure to a development framework that is abstracted from the runtime environment.

The ability to dynamically assemble applications from a library of re-useable software components has been a long-term objective of software engineers and architects, and Spring's adoption of OSGi™ brings the realization of this one step closer. Spring 2.5 supports OSGi and Spring Dynamic Modules 1.0 (formerly Spring-OSGi) was released last month.

Benefits that the adoption of OSGi brings to Spring include:

  • Increased separation of application logic into modules,
  • The ability to concurrently deploy multiple versions of a module,
  • The ability to dynamically discover and use services provided by other modules within the local JVM,
  • The ability to dynamically deploy, update, and remove modules from a running system,
  • Use of the Spring Framework to instantiate, configure, assemble and decorate components within and across modules,
  • A simple and familiar programming model for enterprise developers to exploit the features of the OSGi Service Platform.

Spring's OSGi support also makes the development of OSGi applications simpler, and developers more productive, through component re-use and by building on the ease-of-use and power of the Spring Framework. However, to realize the full potential of Spring Dynamic Modules (DM) requires an OSGi-based dynamic and flexible distributed runtime.

The hardware and operating system agnostic Infiniflow Service Fabric v1.2, is just such a runtime. Any application built using Spring DM can be deployed, distributed, made resilient, scaled and managed by Infiniflow without any code changes.

Infiniflow also makes it easy to Develop Local and Deploy Global.

Developers can test a set of their services within a local OSGi runtime and when ready, thanks to Infiniflow's use of Service Component Architecture (SCA), the services can be distributed across a network of servers. A wide range of remote communications protocols, for example RMI, WS*, JMS, etc., can be introduced without any code change, by simply replacing local bindings in the SCA document with the appropriate remote bindings. With Infiniflow, SCA provides an industry standard approach to describing distributed Dependency Injection style applications, a little like a distributed version of Spring.

The snowballing adoption of OSGi and the standardization of SCA, allows the largest of organizations to benefit from Infiniflow, confident that they are leveraging a standards-based state-of-the-art solution that avoids both architectural compromises and proprietary lock-in.

The Cloud Computing and utility SOA vision that started with commodity hardware, grid computing, ESBs and server virtualization, progressing via Amazon S3 and EC2 together with Google-type utility service models, is finally fully realized by the Infiniflow Service Fabric.

The Value for Developers & Architects

By leveraging OSGi and SCA standards, Infiniflow simplifies the development and implementation of composite applications. OSGi provides the re-usable component building blocks, called bundles, and SCA provides an abstraction of the technology used to handle communication between components.

OSGi ensures complete code isolation, removing the 'DLL hell' of conflicting jar files, isolating applications from each other and the runtime itself. The OSGi model also allows each service to clearly define its dependencies on other libraries, guaranteeing that the correct dependencies will always be used while also allowing multiple versions of the same service to run at the same time.

As mentioned above, SCA enables the “late binding” of communications protocols to the OSGi components, providing a very efficient and flexible approach for distributing the composite application.

By making it easy to re-use OSGi components and compose applications from them using SCA, Infiniflow allows developers to significantly enhance their productivity. The need to duplicate mundane functionality is removed, and developers can focus on the more interesting challenges of each requirement.

Infiniflow views middleware in exactly the same manner as business logic, allowing runtime systems to be rapidly assembled from a selection of middleware infrastructure services and breaking the one size fits all approach imposed by traditional middleware vendors. The architect simply selects the most appropriate SCA bindings and corresponding middleware services to achieve the desired operational behavior for each composite application. These can then be deployed and run without any need for the developer to change any of the software components.

Infiniflow currently support ESB (Mule), CEP (Esper), Java Spaces (Blitz Project) and Caching (Oracle Coherence). In addition to these third party middleware offerings, Paremus supplies Compute Grid and high throughput Real Time Grid SCA service bindings and transactional services (JTA/Jini).

In addition to the structure of the composite application, the architect also dictates how each component of the composite application, including middleware, should scale in the runtime to maximize throughput, minimize latency, minimize cost, etc.

Architects can also specify which servers or virtual machines should be used to run which components of the composite application. Considerations may include platform type, owner, locality, cost and availability characteristics.

The Benefits for Operations & CIO

Infiniflow directly addresses the operational complexity and business system agility issues facing the CIO's of Fortune1000 companies. These are measurable via their impact on OPEX, governance and the agility and availability of business systems. Zapthink succinctly explains these issues with respect to traditional SOA solutions (see The SOA Forecast for 2007 and Forget Maturity Models – It's Time for an Agility Model).

Acknowledging in 2003 that business applications should not be viewed as static structures, rather highly dynamic entities that must each easily and rapidly adapt to accommodate both changes in resource availability and changes in their internal composition, Paremus embarked upon building a distributed runtime (you could think of it as a virtual application platform or Cloud OS) capable of meeting these challenges and reducing operational complexity. Infiniflow is unique in the industry today for acknowledging and addressing these challenges head-on, and by leveraging industry standards such as OSGi and SCA to ensure no proprietary vendor lock-in.

Infiniflow is a Model-Driven Architecture and this dramatically simplifies the processes and procedures for deploying, running, changing and un-deploying applications. Any runtime composite application (referred to as a System in Infiniflow) can only be started, changed or stopped by interacting with its SCA description which is defined in a document (referred to as a System document in Infiniflow). All interactions with the SCA System document are fully secured and audited.

To deploy and start a System, an operator with the appropriate privileges simply sets the SCA System document to ‘active'. Once activated, Infiniflow dynamically checks the software dependencies and the availability of the specified server or virtual machine types (reporting any issues), and proceeds to dynamically deploy the System to appropriate servers or virtual machines, scaling in the manner described by the architect in the SCA System document.

The Infiniflow Service Fabric continues to monitor the running System against its SCA description (i.e. its Target State ) . If resources fail, Infiniflow will automatically re-provision the failed components onto other servers or virtual machines and if the SCA System description is changed, Infiniflow will automatically re-align the runtime System to its new SCA description.

It is no longer necessary to build the under-utilized application silos (including compute grids) that are crippling today's data centers.

As Infiniflow is able to automatically, and within seconds, deploy and un-deploy applications across distributed servers, we can ensure that specific owners of servers and/or applications receive the appropriate computing capability when they require it, and that the servers are available for other tasks or powered down when they aren't required.

 

Summary

An Infiniflow Service Fabric can be assembled in seconds from dynamically discovered data centre resources. Composite applications are easily and rapidly deployed, scaled and monitored, ensuring resource utilization is optimized and the business demands for services are met.

A business with applications deployed on an Infiniflow Service Fabric enjoys far greater adaptability, and is able to quickly modify services in response to business and market changes.

Infiniflow's model-driven approach ensures that dynamic service provisioning, change management and ongoing administration are simple, intuitive and auditable. Combined with sophisticated roles-based management Infiniflow also ensures that the tightest governance requirements are naturally met.

With support for OSGi-based Spring Dynamic Modules, the Infiniflow Service Fabric delivers this innovative distributed runtime today, and provides a flexible, scalable and resilient OSGi -based runtime that your Spring applications deserve.

 

Back to newsletter


 

Richard Nicholson's blog Adapt and Evolve provides an insight in to his opinions, inner thoughts and general commentary on the IT market place, and how it's set to change in the coming years.

For more information about Infiniflow, visit the Paremus website Products pages.

 
 
  Headlines  
 

Revolutionizing Java Development and SOA Runtimes

 
 

Webinar training on OSGi, Spring and SCA

 
 

Meet Paremus at EclipeCon/ OSGi DevCon

 
  Paremus in the news:  
 

Universal Middleware: What's Happening With OSGi and Why You Should Care,
SOA World, 5th Feb

 
 

OSGi and The Rise of The Stackless Stack: Just in Time, RedMonk, 4th Feb

 
  New partnership agreements:
EsperTech and Paremus partner to deliver OSGi-based Event-Driven Architectures.
Kapow and Paremus partner to deliver enterprise scale semantically enriched mashup.
 
  Contact us  
  P: (USA) +1 646-202-2920
P: (UK) +44 20 7993 8321
E: info@paremus.com
 
 
The Newton Project
Newton is a GPL open source
developer release of the
commercial Infiniflow product.
 

Copyright © Paremus, 107-111 Fleet Street, London, EC4A 2AB, UK.