The following table compares the modeling of AMQP Clients as stated in the requirements, and as implemented by iMatix and Apache Qpid.
| Property | Reqts | iMatix Data Model | QPid Data Model |
|---|---|---|---|
| "Vhost" ref for a client connection [MHB: is client connection at vhost or physical broker level?] |
Yes | vhostRef [MHB: Need - "VHost" ref for a client connection] |
|
| MHB: Address of what? | ??? | address:port | address [MHB: Address Of What? If Client side connection address (host/ip:port), need as an "Attribute" Reqt)] |
| total msgs produced by producer | Yes | messages_in / megabytes_in | incoming [MHB: I had jotted down "move to federation (TBD)", but this now doesn't make sense!] |
| total msgs consumed by consumer | messages_out / megabytes_out | outgoing | |
| State: closing, established, initializing, terminated | Yes | closing [MHB: Need "State" as an attributed" Reqt: enum >>> closing, established, initializing, terminated] |
|
| User credentials | user_name | authIdentity [MHB: Need as an "Attribute" Reqt, i.e. user credentials] |
|
| MHB: Frames sent from Client | ??? | framesFromClient (may go into a sub-class) [MHB: May go into a sub-class] |
|
| MHB: Frames recvd by Client | ??? | framesToClient (may go into a sub-class) [MHB: May go into a sub-class] |
|
| MHB: Bytes sent from Client (payload only or headers?) | ??? | bytesFromClient (may go into a sub-class) [MHB: May go into a sub-class] |
|
| MHB: Bytes recvd by Client (ditto) | ??? | bytesToClient (may go into a sub-class) [MHB: May go into a sub-class] |
|
| [MHB: Display # unacknowledged msgs -- This is the number of msgs sent to the consumer with no ack/naks returned yet from consumer to broker] | ??? | ||
| Messages pending [MHB: same as # msgs in consumer queue ?] |
Yes | pending | |
| Client instance name [MHB: what is this?] |
??? | instance | |
| Date, time connection started | Yes | started | |
| Reported client product (AMQP vendor) name | Yes | product | |
| Reported client (AMQP version) | Yes | version | |
| Reported client platform | Yes | platform | |
| Other client information [MHB: ???] | ??? | information | |
| Trace level [MHB: Client side or Server side?] |
??? | trace | |
| Method | Reqts | iMatix Data Model | QPid Data Model |
| Allow/Disallow new client connections (NOTE: Requirement - admins can always log in) >>> [MHB: Doesn't belong here - Broker or Vhost <<< NOTE: the Methods should be reviewed in terms of what really is a Method and what is an Attributed] |
shutdown | ||
| Disconnect client | kill | close | |
| Pause a client (inbound, outbound or both) [MHB: -- could also be at subscription and session level -- and also from producer as well] |
|||
| Disconnect all non-administrator clients [MHB: Doesn't belong here - Broker or Vhost] |
|||
| Enumerate clients | |||
| Display client activity | |||
| Display host information about the client | |||
| Display client connection type (e.g. TCP, UDP (unicast or multicast), SCP, Infiniband (udapl, verbs)) | |||
| Display pending messages for the client (by Channel, by Queue) [MHB: -- enumerate subscriptions, to get queue -- derivable through above linkage] |
|||
| Display time last msg was read by client from Queue [MHB: -- per subscription is better?] |
|||
| Highlight slow consumers (NOTE: use Queue msg statistiscs (e.g. #pending) with the preceding two attributes to ascertain slow or non-consuming consumers -- Derivable |
|||
| Events | Reqts | iMatix Data Model | QPid Data Model |
| A client has connected to the Server | |||
| A client has been disconnectde from the Server due to an Exception [MHB: Supply also disconnect reason] | |||
| A client has been blocked from sending a msg due to the Server limited resources [MHB: Should do at a pub/sub level i.e. per producer] | |||
| A client has been disallowed from connecting to the Server due to max connections being reached [MHB: Should be at the Broker or Vhost level] | |||
| [MHB >>> ADD: Creation/deletion of Channel/Sessions on a connection] |
|
Browse Space |
Explore Confluence |
Your Account |
Add Content |
|
Powered by Atlassian Confluence, the Enterprise Wiki. (Version: 2.5.5 Build:#811 Jul 25, 2007) |