Differences between revisions 8 and 26 (spanning 18 versions)
Revision 8 as of 2013-07-06 04:37:29
Size: 1151
Editor: AndrewStone
Comment:
Revision 26 as of 2015-03-30 18:20:13
Size: 2241
Editor: vk
Comment:
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
 * [[Product Brief]]
 * [[General Design Requirements]]
   This chapter describes general design requirements and rules-of-thumb to ensure a consistent semantic and API style across all services.
 * [[Programming Style Requirements]]
   This chapter describes programming style so that SAFplus provides a consistent look.
Line 3: Line 8:
 * [[Feature Discussion]]
 * [[Roadmap]]

=== Development Tools ===

 * [[Cluster Design GUI/Integrated Development Environment]]
 * [[Source Code Structure and Makefile System]]
 * [[Install and Build]]
Line 6: Line 19:
 * ClusterUniqueId  * [[Handle]]
Line 8: Line 21:
 * GloballyUniqueId
  Derives from ClusterUniqueId, adds a cluster identifier to become globally unique
  * [[GlobalHandleT]]
   Derives from [[HandleT]], adds a cluster identifier to become globally unique
Line 12: Line 25:
 * [[Dictionary]]  * [[Checkpoint]] (AKA Dictionary, map, or hash table)
Line 14: Line 27:
 * [[ResourceAssociatedKeyDictionary]]
  This [[Dictionary]] associates a ClusterUniqueId to each key and calls a cleanup whenever the resource represented by the ClusterUniqueId disappears (due to a fault).
  * [[ResourceAssociatedCheckpoint]]
    This [[Dictionary]] associates a Handle to each key and calls a cleanup whenever the resource represented by the Handle disappears (due to a fault).
 * [[ThreadPool]]
  A group of threads that are applied to a list of tasks.

 * [[MessageFlowManager]]
  This class intermediates between the messaging layer (send/receive) and the application code. It manages messaging buffers and optimizes frequency of message sending verses message size.
Line 20: Line 38:
 Interface with SAFplus 6.x logging implementation underneath  Applications and other services can log to shared memory. A log server will "scrape" the shared memory and post the message to log channels and/or files.
Line 22: Line 40:
 Interface with SAFplus 6.x IOC messaging implementation underneath, but takes a ClusterUniqueId as a destination  Interface with SAFplus 6.x IOC messaging implementation underneath, but takes a Handle as a destination
Line 24: Line 42:
 Group membership and master election  Group membership and cluster master election
Line 26: Line 44:
 String name to arbitrary data (generally a ClusterUniqueId)  String name to arbitrary data (generally a Handle)
Line 28: Line 46:
 All entities report errors to this centralized fault manager. Only it chooses to fault an resource identified by ClusterUniqueId  All entities report errors to this centralized fault manager. Only it chooses to fault a resource (node or process).
 * [[Availability Management]]
 Core process that starts and monitors applications
 * [[Remote Procedure Call]]
 Fast and efficient RPC subsystem
Line 30: Line 52:


FrontPage/TestNesting

SAFplus 7 Design Specification

Development Tools

Fundamental Objects

  • Handle

    • This is a cluster-wide identifier
    • GlobalHandleT

      • Derives from HandleT, adds a cluster identifier to become globally unique

  • Transaction

    • Cross object, node, cluster, transaction
  • Checkpoint (AKA Dictionary, map, or hash table)

    • Replicated, nested, persistent, notifiable, shared memory, transactional Hash Table
    • ResourceAssociatedCheckpoint

      • This Dictionary associates a Handle to each key and calls a cleanup whenever the resource represented by the Handle disappears (due to a fault).

  • ThreadPool

    • A group of threads that are applied to a list of tasks.
  • MessageFlowManager

    • This class intermediates between the messaging layer (send/receive) and the application code. It manages messaging buffers and optimizes frequency of message sending verses message size.

Services

  • Logging Applications and other services can log to shared memory. A log server will "scrape" the shared memory and post the message to log channels and/or files.

  • Messaging Interface with SAFplus 6.x IOC messaging implementation underneath, but takes a Handle as a destination

  • Group Group membership and cluster master election

  • Name String name to arbitrary data (generally a Handle)

  • Fault All entities report errors to this centralized fault manager. Only it chooses to fault a resource (node or process).

  • Availability Management Core process that starts and monitors applications

  • Remote Procedure Call Fast and efficient RPC subsystem

FrontPage/TestNesting

OldFrontPage

SAFplus: FrontPage (last edited 2016-04-12 00:45:34 by AndrewStone)