1. An apparatus for controlling subscriptions, the apparatus comprising: a processor; a non-transitory computer-readable storage having stored thereon a computer program configured for controlling the processor to perform the steps of: assigning one of a PASSTHROUGH value and a BLOCK value to a first attribute of each topic node of a topic tree based on at least one assignment rule; responsive to a wildcard topic string, determining a highest level topic node of the topic tree matching the wildcard topic string to define a root node; traversing each topic node of the topic tree starting the root node, the traversing comprising: analyzing the first attribute of the topic node to determine whether the first attribute specifies the PASSTHROUGH value or the BLOCK value, if the first attribute specifies the PASSTHROUGH value, determining a subscriber associated with the subscription should receive a message associated with the topic string of the topic node, and if the first attribute specifies the BLOCK value, determining that the subscriber should not receive a message associated with the topic string of the topic node or a message associated with other topic strings more specific than the topic string of the topic node when the wildcard topic string is less specific than the topic string of the topic node; detecting a generation of a new topic node; and performing the traversing for the new topic node.