@kmote. IH operates as follows:
1. When you start Firefox, IH downloads the list of retailers it supports: amazon, currys, bestbuy etc. The reason for this is that you don't have to update the extension when we add a new retailer to our database and it happens fairly often.
2. When you open a new tab in firefox, it checks whether it's a retailer. So if the address begins with, say, 'http://www.amazon.co.uk/...', it proceeds to the next step, otherwise (for example f you open 'http://www.google.com/) it just stays inactive.
3. When it determines that you're at one of the supported retailer, it sends a request to the server, asking for alternative urls. Say, IH sends an amazon url to the server and the server replies that this product is available at currys and johnlewis as well.
4. Then IH opens these urls (currys and johnlewis) in the background (you don't see it) and scrapes the price for every page.
5. Finally, IH compares all prices it's got and shown a notification (for example, 'This product is 10% cheaper at curry's than at amazon) and shows you a link to currys.
6. You save money!
So, the answer to your question is: no, IH doesn't check all retailers, it asks the server to do it for it but it scrapes the price locally, when you need it to ensure it's accurate. The reason we decided to scrape prices on the fly is that they really change often, sometimes several times per hours. So the list of alternative urls is provided by the central database but the prices are fetched in real-time a fraction of a second before you see them.