В Java, когда оператор «==» используется для сравнения двух объектов, он проверяет, ссылаются ли объекты на одно и то же место в памяти. Другими словами, он проверяет, являются ли имена двух объектов в основном ссылками на одно и то же место в памяти.
Класс Java String фактически переопределяет реализацию equals () по умолчанию в классе Object и переопределяет этот метод, чтобы он проверял только значения строк, а не их местоположения в памяти. Это означает, что если вы вызываете метод equals () для сравнения двух объектов String, то, пока действительная последовательность символов равна, оба объекта считаются равными.
Оператор
==
проверяет, являются ли две строки точно одним и тем же объектом.Метод
blockquote>.equals()
проверяет, имеют ли две строки одно и то же значение.
Я думаю, что положить это в файл settings.py
- это не очень хорошая идея. settings.py
должен содержать настройки .
Однако вы можете, например, добавить имя модели, чтобы ее можно было легко изменить. Итак, например:
# settings.py
MODEL_NAME = 'model'
Затем вы можете построить функцию, которая в основном действует как кеш, и периодически обновляет выборку модели:
# utils.py
from datetime import datetime, timedelta
from django.conf import settings
from pickle import loads as ploads
def get_model():
if get_model.model is None or datetime.now() > get_model.exires:
get_model.model = ploads(redis_connection.get(settings.MODEL_NAME))
get_model.expires = datetime.now() + timedelta(hours=2)
return get_model.model
get_model.model = None
get_model.expires= datetime.now()
Таким образом, функция проверяет, модель уже хранится в кеше и все еще действительна. В противном случае он извлекает (новую версию) модели и сохраняет ее. Преимущество такого подхода заключается в том, что если ваш сервер не получает запросы, связанные с моделью. Мы не загружаем и не загружаем новую систему в систему.
Альтернатива заключается в том, что где-то есть такой кеш и, например, планировать некоторую задачу в потоке для периодической выборки новой версии (так что не в se по необходимости , но превентивно ).