On the Use of Double Auctions in Resource Allocation Problems in Large-scale Distributed Systems