cache snake, upper values
Cache model struct for less GC
Use channel to make gorm faster