With a database of that size, this is probably your best bet. Xtrabackup is much faster than performing a standard mysqldump. The other reason why your site is blocking is that the tables in your database are being blocked during the backup, which prevents the site from responding.
In general, the best option would be to configure a cluster and make one of the servers in the cluster a read-only option and then perform the dump through xtrabackup on that server. This would prevent the server from crashing during the dump and would allow the server to dump, and then re-synchronize once the dump was completed.