I have seen this rapid battery drainage now on every type of iOS device from an iPhone 3G up thru an iPad 2. No matter what software version is running. I have found some interesting things along the way and hope someone smarter than I can provide a more permanent solution.
In our case (I have seen hundreds of people online with the same issue), the batteries will drain in just a few hours due to constant polling of the Exchange server. We use Exchange server 2003, but I have seen others online state that 2007 does the same thing. It appears to be related to bad Calendar invitations from the Exchange server. Some others suggest that Microsoft Exchange and iOS handle All Day events differently and that causes the iOS device to go into a loop of sorts trying to resolve the issue with the Exchange server. The device will get very warm during this as well. The last time this happened to my iPhone 4, I contacted our IT and they confirmed in the logs that my phone was constantly pinging the Exchange server. The only way I can get it to stop is to do the following:
1) Delete the Exchange account from the iOS device
2) Reboot the device
3) Access the Email application so it registers the Exchange account as being gone
4) Add the Exchange account back to the device
5) Battery life returns back to normal
This works every time. I have done this on my devices as well as coworkers for the past year while waiting for a permanent fix. I have tried many other things such as powering down the device, quitting all running apps, turning off push, etc. None of these will resolve it. The steps above work fine to treat the immediate issue of battery drainage, but I am really hoping someone with more knowledge of Exchange server can figure out a setting on the server or raise this up to Apple to be addressed in a future update. It gets really old resetting Exchange accounts on our devices several times a month.