best practices for calling a web service (like geocode)


I have a Customer class which creates an instance of an Address class,
and the user can then go into the show method of the Customer class
and associate other addresses with that Customer (sites). As soon as
an Address instance is created, I want to call geocoding to get the
latitude and longitude of that address so that I can later render a
map of all the sites. now, I suspect that a call to the geocoding url
synchronously would be a bad thing:

def create
  @address =[:address])
  ... assign other @address parameters
  create a geocoding instance
  call geocoding, passing in address string, getting back a lat and a
long <--- wait wait wait wait
  @address.latitude = lat; @address.long = long

What's the best practice for doing something like this in ruby/rails?