I have a table of over 150,000 rows of which most would be updated daily. I have mysql caching turned on so the pages load faster however everytime the database is updated
150,000 rows is really small in terms of table size.
Is your table properly indexed?
How are you doing the update, are you scheduling and/or throttling the updates or just letting it go all at once?
The slowdown is most likely happening because you are trying to update too many rows at once w/o letting the server catch a breath. Try throttling the updates.