which one is more effective for healing, magic or potions?
With my sneaky archer, I've found that the situations where you end up taking damage are rare enough that you should be able to get by fine with just the potions you loot from the environment, especially if you're travelling with some living bait a trusty companion to tank the damage while you dish out pain from a safe distance.
That said, I think alchemy works better than restoration with this build since you don't have to put your bow away to use potions. When an enemy is chasing you, you need to be pumping arrows into them non-stop for the chance to stagger which is essential for keeping them at a distance or interrupt mages from casting. Having to put your bow down, plus the time to cast healing spells may give enemies too much time.
I agree with the other post recommending alchemy. Putting potions in your favourites allows you to quickly restore your health when you get in a tricky spot. For spells, you have to equip them (unequiping your bow) and then wait for the spell to activate. If you're in melee, you'll be dead by this point.
The only downside to potions is the weight.
As to your question of where to get potions, the options are finding them in dungeons, mixing them yourself or buying them. I'd suggest doing all three. There are plenty of potions littering dungeons, and the ingredients for a Restore Health potion are reasonably common. If you have the money, then buying the stronger potions is more weight efficient.