sevices provided by Middleware products
Identifiers is a string of characters connecting the real world items to the data. These identifiers can apply to people, groups of people, objects, printers, etc. The important features of identifiers are the policies assigned to these identifiers and relationship between identified objects.
Authentication ensures the action requested is associated with a particular subject or object. One way to perform authentication is to use the User IDs/Passwords. This certification process is not very secure and can cause inflexibility in applications, but an encryption schema or encryption key can handle some of the security needs.
Naming Services/Directories The naming services like DNS (Domain Naming Service) list the readable names associated with the numbers (IP address and port number). A directory service like NDS (Netware Directory Services or Microsoft Active Directory￢ﾄﾢ) also provide a way of looking up names, but goes further by providing a general facility for looking things up, just like a telephone directory. Essentially the directories are databases that contain information about real world subjects. Important issues include the schema, addressing of data, access permissions, and ownership of data.
Authorization and Access Control provide permissions to read, write, or update part or all of the data and/or the schema
Certificates and PKI include security access for multicast sessions, ubiquitous computing (access from any site), sharing and collaboration information, consistent access across variety of architectures, message handling between components, and monitoring of transactions
Transaction Monitors supervise a transaction to ensure that the transaction is an all or nothing process. This is especially important when more than one database is modified (insert, delete, or change a record or make modification to the schema of the database)
Process and Thread Controls manage the multiple threads or processes that are started in the client and must be carried out in the server or servers. This is very important when using synchronous communication such as in RPC.
User and Real-World Interfaces allow humans to receive information, images, sensors, and other items in a readable format.
Dynamic Load Balancing and Scalabilities are ways of managing the access to multiple servers using a priority policy so that each server has a similar load. This allows for timely service of many more requests. The newest middleware can even learn new priority policies so that the servers are better utilized. Advance load-balancing features that satisfy demanding optimization are server transparency, stateful replicas, diverse load monitoring granularity, decentralized load balancing, fault tolerant load balancing, extensible load balancing algorithms, and on-demand replica activation.
Connectivity allows elements of application to interoperate across network links. Its main purpose is to bridge differences in underlying network protocols, system architectures, operating systems, programming languages, databases and other application services.
Data Transformation, Exchange, and Integration provide a way to reorder fields, translate code pages, validate data, filter data, modify sophisticated messages, reformat messages, and perform division and combination of messages.
Integration Broker Services include message queuing, message dictionary, message warehouse, message transformation, message routing, and systems management capability. Many also provide publish-and-subscribe service.