¿Cómo los encabezados --fast, --jitvm y --cache de geth hacen que la descarga de blockchain sea más rápida?

¿ Qué --fasthace la bandera? Leí en alguna parte que no descarga transacciones de los bloques, sino solo descargas estatales. Pero, ¿qué son las descargas estatales?

¿Para qué usa geth el caché? Simplemente puede poner los datos descargados en el sistema de archivos, ¿verdad?

¿Qué es jitvm y caché jitvm? ¿Y también por qué tenemos que forzarlo?

Respuestas (1)

De la Guía de Homestead :

--fast

Este indicador permite una sincronización rápida a través de descargas de estado en lugar de descargar los datos del bloque completo. Esto también reducirá drásticamente el tamaño de su cadena de bloques. NOTA: --fastsolo se puede ejecutar si está sincronizando su cadena de bloques desde cero y solo la primera vez que descarga la cadena de bloques por razones de seguridad. Consulte esta publicación de Reddit para obtener más información.

También hay muchos detalles sobre el algoritmo de sincronización rápida en github . Aquí hay una cita:

En lugar de procesar toda la cadena de bloques, un enlace a la vez, y reproducir todas las transacciones que alguna vez sucedieron en el historial, la sincronización rápida descarga los recibos de transacciones a lo largo de los bloques y extrae una base de datos de estado reciente completa.

¿Qué es la opción JITVM?
Yo sé eso. Para qué sirve y con qué relación--fast