Text this: CSP-based resource allocation model and algorithms for energy-efficient cloud computing