As of MySQL 5.1.37 it is possible to use the isolation level READ-COMMITTED together with replication. Replication MUST be row-based in order for this isolation level to work.
Using the READ-COMMITTED isolation level is recommended if you're using a cache backend other than the built-in DB.
In my.cnf under the [mysqld] section
transaction-isolation = READ-COMMITTED
Or in the database config (just an example, remember to set for all real db connections):
$databases['default']['master']['init_commands'] = array('autoslave' => "SET SESSION tx_isolation='READ-COMMITTED'");