Buy a one gallon box of Tide laundry detergent (with bleach) and put the detergent all over the roof with an extra layer on the eaves. We bought the Tide at Wall-Mart for $21 and the box includes a plastic measure which you can use to throw the detergent. Once it starts raining the Tide will flow over the roof and kill the moss on contact.
We used this on my daughter’s composite shingle roof two years ago and it’s still working but it’s best to remove any clumps of moss first. This way you’ll keep the moss from getting underneath a shingle and exposing it to the weather.