Для каждого приложения application_start я вызываю ActiveRecordStarter.Initialize (фактически это часть ActiveRecordIntegration facitliy). Это кажется очень тяжелым, занимает около 3,5 секунд, чтобы инициализировать мои 16 объектов.Оптимизация времени инициализации ActiveRecord (при запуске приложения)
некоторый фон: 1. получил 16 объектов AR на данный момент, почти никогда не менялся (может быть, раз в неделю). 2. Большинство изменений не связаны с AR, но я «страдаю» от огромного времени запуска приложения при разработке локально (нужно подождать 3.4 с AR для загрузки, хотя в действительности ничего не изменилось).
Мои мысли: кажется, что если я сохраню конфигурацию AR в двоичном файле и загружу его, если заметили изменения (например, просмотрев объекты AR и сделав некоторые MD5 в своих исходных файлах, чтобы увидеть изменения). Если что-то изменилось, мне нужно заново создать двоичный файл. От тестирования, которое я сделал, похоже, что большую часть времени оттуда.
So: a. я иду в правильном направлении? может быть, я что-то делаю неправильно? b. вы уже исправились и поделитесь им со мной? :)
У нас есть несколько приложений, основанных на Castle ActiveRecod, но никогда не было подобных проблем. –
Вы использовали ActiveRecordFacility? как вы зарегистрировали объекты ActiveRecord? –