The biggest thing to consider if you run in either high-performance or high-safety mode.
http://msdn.microsoft.com/en-us/library/ms189852.aspx
Basically, in high-performance the transaction is committed locally and hopefully on the remote side. The mirrored server asynchronously applies the transactions and data loss may be a factor. The upside is not having latency in the local server and you only need two machines.
In high-safety, the transaction is witnessed by a third server and has to be committed on both sides. This creates latency which would not be desirable.