Actually, that's a relevant question for me too. I got as far as mounting /tmp and /var as ramdisks and configuring logrotate to aggressively compress and prune logs (so they don't swamp the RAM). That's not a very difficult task, e.g. /etc/fstab has these entries:
tmpfs /var tmpfs defaults,noatime,nosuid,size=128M 0 0
tmpfs /tmp tmpfs defaults,noatime,nosuid,size=128M 0 0
And /etc/logrotate.conf needs this:
compress
compresscmd /bin/bzip2
uncompresscmd /bin/bunzip2
compressoptions --best
compressext .bz2
Plus anything needs to be rotated at least weekly, with no more than a month's worth of compressed logs kept. It seems to keep the entire /var/log pretty compact (a few MB).
I also installed an SD card and stored all the logs which need to survive reboots on it. If the SD card dies, I can simply swap it out and the entire device should still remain functional the whole time.
But then I got stumped. There remain a bunch of files sprinkled around elsewhere which still need to remain writable. I could only come up with /etc/resolv.conf at first, but there are probably others. I guess you could make them readable by symlinking from a read-only root file system to a file on ramdisk.
I didn't have time to experiment and play around, so I just left root as RW in the hope that removing logs and temporary files will reduce eMMC load sufficiently for it to last longer than the remainder of the device :)
--
Kind regards,
Tarmo Kuuse