Lightweight (Internet-based) Communication for Autonomic Services
 

Licas Version 3.35
Gui Version 3.19
Problem Solver Version 1.3


Introduction


The licas (lightweight (Internet-based) communication for autonomic services) system is an open source framework for building service-based networks, similar to what you would do on a Cloud or SOA platform. The framework comes with a server for running the services on, mechanisms for adding services to the server, mechanisms for linking services with each other, and mechanisms for allowing the services to communicate with each other. The default communication protocol inside of licas itself is an XML-RPC mechanism, but dynamic invocation of external Web Services is also possible. The architecture and adaptive capabilities through dynamic linking add something new that is not available in other similar systems.

The download packages also come with an all-in-one GUI that can be used either to test systems or as a practical platform on which to run your own real system. The system is also peer-to-peer, with the client GUI also acting as a server that can be invoked. Licas can therefore be used in one of two different ways. Because of resource constraints, these have been packaged together in the one GUI application. The key features are as follows:

 

  1. The capability to build distributed networks of autonomic service-based components.
  2. Permanent and dynamic linking mechanisms to construct the network architecture.
  3. Autonomic self-organisation through a dynamic linking mechanism.
  4. Password protection of the services, providing some level of security.
  5. Remote communication capabilities through an XML-RPC message passing mechanism.
  6. Java-based or Web-based clients.
  7. Possibilities for creating services through remote jar file communications.
  8. Service wrapper classes allowing legacy code to be loaded.
  9. Framework for adding an Autonomic Manager and policy scripts to a service.
  10. Framework for adding metadata, with a default query engine.
  11. Dynamic Web Service invocation through WSDL document parsing.
  12. Compatibility with the Java mobile (J2ME) environment.
  13. Examples of instant messenger and file sharing applications.
  14. Problem-solving framework, allowing for service organisation through a more complex heuristic search process.
  15. All-in-One GUI for viewing or testing your networks.

 

Autonomous behaviour can be realised through self-organisation where related services, or network nodes, can build dynamic links between each other, reflecting how they have been used together. The system also allows for permanent links that represent the static network structure. The services are password protected and there is a framework in place to implement service level agreements. The overview page gives more details on the general architecture.

 

Latest Version

The current version is relatively stable and comes with an admin/test gui that can be used to test networks built with the server platform. The user guide included with the download package provides descriptions of the key packages and classes, and also some coding tips on how to get started. There are also some coding examples on the Knowledge Base page, which also describes how certain operations work. If you find the software package useful, wish to contribute, or are interested in any of the related work, then please contact the project administrator through the sourceforge system. Contact details are also given at the end of this page. Resources for the project are limited, in particular with regard to testing. So please report any bugs or other information that you think might be important.




Mobile Environment

The licas software package is compatible with the Java 2 Micro Edition (J2ME) platform. The server code can be compiled to run under the latest CDC platform from SUN. The server is also compiled under J2SE and can run on any PC or laptop. However, any version that is now released will be compatible with the mobile environment. This means that the current version and any future versions will be restricted by the functionality of that platform.

The All-in-One GUI is only J2SE compatible, but the server also accepts HTTP POST requests with RESTful-style messages. You can therefore write an HTML web page and invoke the server from it. The download package includes an example web page and javascript code for testing a server with. See the version history or bug fixes pages for details about the current or future changes.

 



Web Services Invocation

The system uses a default XML-RPC message passing mechanism. To make a call on a service, a Java object is parsed in the order 'Object-XML-String', which is then sent to the server and parsed back from 'String-XML-Object', when the appropriate method on the appropriate service can be called. There is also the possibility for making Web Service calls. The licas server is a Web server but not a web service. It can be invoked like one however, because it accepts String-based messages and can automatically parse them into the correct format for further processing. There are also classes to allow a service acting as a client, to call any third-party Web Service. This calling mechanism is not based on static stub classes, but is built dynamically from parsed WSDL documents. It is slightly different depending on which platform you are running (J2SE or J2ME), but the documentation describes how this is done.




Problem Solving

The system now has a problem solving version as a new separate package, written on-top of the main licas system. It is innovative in the sense that you can integrate it with a network and organise the services on the network based on the results of the heuristic problem solving search. Default solution type is genetic algorithms, with the idea of matching services with similar information content. This has been integrated into the GUI as well.




Download

The download package contains the jar files, the source code and the documentation required to use the package. Download the package and unzip into your working directory. The user guide will tell you how to use the package and start programming with it. Please check the version history page for version updates and other changes. You should always unzip into a clean directory, although the code structure should not change from now on.

The software is released under the GPL licence. If you wish to obtain unrestricted rights, please read the licence details here.




Contact Details

Author: Kieran Greer, Distributed Computing Systems.

For any queries about the software package, please contact the project administrator.
Email: admin.



Licas - 100% FREE Softpedia Award.com Licas - Editors Pick from WareSeeker.com
Soft82 100% Clean Award For Licas Licas - Free Download from FamousWhy.com