Good luck! (You'll need it.)
The following strategy worked for me for a while, though not anymore: I resolved that, before interrupting a productive activity, I would write down what I was about to do and note the start and end times, thus keeping an accurate log of interruptions.
This works for me (ish) when I bother to stick to it.
Works less well when my goal is less clearly defined and will take more than an hour.
Perhaps this is already well known, but it occurred to me yesterday and I thought I'd share it. The Internet seems particularly virulent as a form of procrastination; indeed, if, say, chatting at watercoolers took up as much time in the average office worker's day, we wouldn't make jokes about it. What is the feature that makes it so deadly? I suggest that it is the random reinforcement schedule: Every five minutes you "press the lever", that is, check forum X or site Y. And every six or seven checks you get the reward: Someone posted something interesting! This random reinforcement is ideal for creating addiction; thus, for example, slot machines.
As a way to avoid this effect, I'm going to strive not to do anything on the interwebs except at precisely defined times, or unless I have a specific goal in mind, say "Look up this method signature". Wish me luck, or better still, wish me willpower. :)