Optimize can be a very expensive operation since it copies the entire index to new data files. Not sure if solr has an auto-optimize feature, though I doubt it would be used much. Our policy is to run commits every few thousand documents and run an optimize once every day or so. These commands are easy to make via the solrj client we use. Though, for one of our indexes, we perform all of the updates offline and run an optimize before putting the index into production. Hope this helps.
Cheers, Jason -- Jason Rennie Head of Machine Learning Technologies, StyleFeeder http://www.stylefeeder.com/ Samantha's blog & pictures: http://samanthalyrarennie.blogspot.com/