摘要 |
Provided herein is a name service that includes published data that is associated with one or more duration entities and one or more modification entities, enabling the name service to more efficiently manage access to published data. To publish data, a publishing client transmits a publication request to a name service. The publication request may specify a modification entity and a duration entity. The name service creates at least one name entry that associates the published data with the modification entity and the duration entity. There are several requests to modify or depublish published data that a name service will honor only when they originate from a modification entity. These are (1) requests to modify published data, and (2) requests to depublish published data. A name service depublishes published data based on the termination of the duration entity that is associated with the published data, when, for example, a garbage collector detects that the duration of an entity has ended. Name service recovery is performed on a system failure. The remaining name service daemons delete each name entry that is non-local and non-persistant, and transmit requests to replicate local name entries to the other surviving name service daemons. A name service persistently stores name entries as specified. When restarted, the name service may continue to provide the persistently stored name entries. Persistent name entries are not depublished during name service recovery. They are explicitly modified or depublished by a modification entity.
|