Achieving expressiveness and scalability in an internet-scale event notification service