I have two Drupal7 sites. I am using a service that allows a registered user to login using session authentication. On the site that performs the call to my remote service I measured the time when I enter the login function and after I got my session id response. It is 6 seconds apart. When I use the browser to login it works as normal, no delays. Both Drupal7 instances are running on localhost. I need some pointers as to where to look in order to reduce this latency. watchdog("LOG", "Login function hit at " . date(DATE_RFC2822)); $resource = 'access/'; $this->options = array( 'headers' => array( 'Accept' => 'application/json', 'Content-Type' => 'application/json', ), 'method' => 'POST', 'data' => json_encode(array( 'username' => $this->username, 'password' => $this->password, )), ); $response = drupal_http_request($this->base_url . $resource . 'user/login', $this->options); $data = json_decode($response->data); // Check response code if ($response->code == 200 && $data != null) { $this->options['headers']['Cookie'] = $data->session_name . '=' . $data->sessid; watchdog("LOG", "Connected to remote at " . date(DATE_RFC2822)); } I wrote a basic php login function to run it from outside a Drupal install and the time to login is 5 seconds. Measured the web login and it's instant. I also switched from Services Resource API 1.0 to 1.1 with no improvements.