A slightly longer example demonstrating multiple Net::Async::HTTP clients running in parallel. Given a base URL, this will recursively (breadth-first) scan any paths given on the command line and PUT whatever files are found.

The resulting file structure will be flattened, there's no attempt to MKCOL the equivalent path structure on the target server.