Jump to: navigation, search

Net4j

Revision as of 02:33, 30 August 2011 by Stepper.esc-net.de (Talk | contribs)

The Net4j Signalling platform is an extensible client/server communications framework.
Net4j eases the development of fast and maintainable application protocols that are independent
of the physical transport medium. Transport protocols are pluggable and Net4j ships with support
for TCP, HTTP and in-memory transport. The core of Net4j is a fast, asynchronous and non-blocking
buffer multiplexing kernel, based on OSGi but also executable stand-alone.

The Net4j project is now integrated into the CDO project. Downloads and other resources are provided there.

Multiplexing.png

Documentation

FAQ
Net4j Architecture
Net4j User Interface
Net4j Utilities
Net4j SignalProtocol
Net4j Container
Net4j@EclipseCon2008

Tutorials

Setting up a Net4j Server
Writing Net4j Clients
Using the Net4j User Interface
Writing Standalone Net4j Applications

Features

Core Features
Transports
Examples
Utilities


Core Features

  • Extensible signalling framework for application protocols (IProtocol, SignalProtocol)
  • Extensible transport framework for physical transports (IConnector, IAcceptor)
  • Multiplexing of different application protocols (IChannel)
  • Fast, asynchronous and non-blocking buffering kernel (IBuffer)


Transports

  • NIO-based TCP transport implementation (ITCPConnector, ITCPAcceptor)
  • In-process JVM transport implementation (IJVMConnector, IJVMAcceptor)
  • Polling HTTP transport implementation (IHTTPConnector, IHTTPAcceptor)


Examples

  • Extensible collaborations platform with buddy list, chat, fileshare, ...
  • JMS(TM) provider implementation (experimental but functional)


Utilities

  • Caching and monitoring framework
  • Special collections
  • Concurrency support
  • Wiring framework (managed containers)
  • Event framework
  • Factory framework
  • Generic finite state machine (FSM)
  • I/O tools
  • Lifecycle framework
  • Operations and maintenance framework (OM)
    • Platform abstraction (OSGi, Eclipse runtime, stand alone)
    • Bundle abstraction
    • Logging abstraction
    • Tracing abstraction
    • Preferences abstraction
    • Progress monitoring framework
  • Memory sensitivity framework
  • Transactional and notifying registries
  • Extensible security framework
  • Generic transactional operations framework
  • Debugging Tools
    • Remote tracing (OM extension + Eclipse UI)
    • Container view (Eclipse UI)
    • Introspector view (Eclipse UI)
  • Extensible DB abstraction framework
    • Derby DB adapter implementation
    • HSQLDB adapter implementation
    • MySQL adapter implementation
    • PostgreSQL adapter implementation



Wikis: CDO | Eclipse | OSGi | NIO | New I/O