def subscribe(topic, expression, handler = nil)
      @consumer.subscribe(topic, expression, handler || Proc.new)
      self
    end
def subscribe(topic, expression, handler = nil)
      @consumer.subscribe(topic, expression, handler || Proc.new)
      self
    end
Create a new aliyun ONS Consumer instance.

 @param access_key [String] the access key to aliyun ONS
 @param secret_key [String] the secret key to aliyun ONS
 @param consumer_id [String] the consumer ID
 @param options [Hash{String, Symbol => String}]
 @option options [String] :namesrv_addr the nameserver used to fetching ons_addr
 @option options [String] :ons_addr the ONS server address
 @option options [String, Fixnum, Bignum] :thread_num the consumer thread numbers
 Subsribe a topic.

 @example subscribe tag :tagA under topic :TopicTestMQ
   consumer.subscribe('TopicTestMQ', 'tagA') {}

 @example subscribe tag :tagA and :tagB under topic :TopicTestMQ
   consumer.subscribe('TopicTestMQ', 'tagA || tagB') {}

 @example subscribe all tags under topic :TopicTestMQ
   consumer.subscribe('TopicTestMQ', '*') {}

 @param topic [String] the message topic
 @param expression [String] the subsribe expression used to filter messages
 @param handler [#call] the handler which will handle the message
 @return [self] returns itself