It's called [chaining](http://docs.puppetlabs.com/learning/ordering.html#chaining-arrows) and the difference is that -> is ordering and ~> notifies. So anything that changes the config, notifies the service class. That also means any exec defined in service.