Our offices accommodate six to seven people per room. When there's silence in the room and people are "in the zone", the amount of things accomplished is so big that it's almost palpable. But when somebody comes interrupting us or a smalltalk starts, the productivity level immediately deteriorates and it takes concentration capability of Major Tom to keep focused on your work and not stray away. To increase personal productivity people use pomodoro clocks, they set email to receive email only once per hour, they turn off instant chats, resort to ear plugs and do many other ingenious things to reduce outside disturbances. While these tools and techniques might be effective for a few days or weeks, none of them seem to work in the long time. I'm increasingly certain that lowering amount of interruptions cannot be done by an individual alone, but it must be a struggle of the whole team.
It is only interrupter who knows if his or her request is important and urgent enough to justify the interruption. If it is up to the interruptee to decide, it's already too late; he or she is already interrupted and out of the zone. So, if you want to reduce amount of interruptions you should introduce the culture of "do not disturb" in your team. The one technique I successfully use towards this goal is to group my requests to others and then interrupting them only when they are already interrupted. The other technique I really like to start doing is to start sending emails to people in batches and at time that would be most suitable to them, but unfortunately gmail doesn't support such functionality yet.