Una recomendacion que yo le doy es
Cita: ALTER TABLE `enlaces` ADD UNIQUE (
`url`
)
Ya que mi objetivo es capturar las palabras de un sitio, pero no lo quiero volver a visitarlo si de casualidad llegar a dar con la misma URL. por eso la dejo unique.
El consumo de CPU, es debido a que tiene que parsear el codigo HTML, capturando las palabras y las direcciones URL's , habria que mejorar dicha funcion.
La verdad yo no he tenido problema, lo tengo corriendo en un servidor hace ya como 3 semanas, y he capturado 126,586 palabras distintas ( 19.7 Mb ) y ha recorrido aldededor de 2353 web distintas :P , y no he tenido problema de consumo de CPU , el script consume mientras se esta ejecutando ( en mi caso, lo tengo para analizar 5 url en una ejecucion, se demora alrededor de 10sec) y esto lo tengo con un cron cada 2 min.
Asi que si quieres optimizarlo, la funcion principal, la parseadora, esa tienes que mejorar.
Yo no lo hago, por que me ha funcionado bien con mi proyecto
md5search :P