Это - трудный вопрос. На первом взгляде кажется, что наличие больше памяти означает "неудачливый", но, необходимо также видеть, что можно избавиться от многих связанный с памятью материал, если Вы действительно настаиваете. Позвольте нам просто взять другими способами поврежденную функцию strtok, который с одной стороны не имеет никаких проблем с материалом памяти. Тогда возьмите в качестве дубликата g_string_split из библиотеки Glib, которая в большой степени зависит от выделения памяти как, почти все в бойком или GObject основывало программы. Можно определенно сказать в более динамическом выделении памяти языков, намного более используется в качестве на большем количестве негибких языков, особенно C. Но давайте посмотрим альтернативы. Если Вы только заканчиваете программу, если у Вас заканчивается память, даже осторожный разработанный код может прекратить работать. Но если у Вас есть исправимая ошибка, можно делать с этим что-то. Так аргумент, делая это восстанавливаемый означает, что можно принять решение "обработать" ту ситуацию по-другому (например, откладывание блока памяти для чрезвычайных ситуаций или неисправности к меньшей памяти обширная программа).
, Таким образом, наиболее неопровержимый довод. Если Вы даете возможность восстановления того, может попробовать recoverying, если у Вас нет выбора, все зависит от всегда получения достаточной памяти...
Отношения
С django-compress
вы обрабатываете CSS и JS как динамические файлы - и это нормально. Однако другие файлы статичны, и Django на самом деле не хочет их обслуживать. Они должны обслуживаться непосредственно Apache или другим веб-сервером.
Для Apache вы должны поместить что-то вроде
<FilesMatch "\.(ico|pdf|flv|jpg|jpeg|png|gif|js|css|swf)$">
Header set Expires "Thu, 15 Apr 2010 20:00:00 GMT"
</FilesMatch>
в .htaccess
или в глобальную конфигурацию Apache.
Обновление: Ответ: на ваш комментарий - Извините, я не понял нюанса вашего вопроса. Вы мало что можете сделать, чтобы избежать использования другого URL-адреса для указания клиенту, что файл (например, изображение) был изменен. Это рекомендуется, например, Apache и YAHOO!
Реализовать это IMO не так уж сложно. Он состоит из двух частей:
/media/3/header.png
, где фактический файл остается на сервере как /media/header.png
. mod_rewrite
, чтобы преобразовать входящие URL-адреса в каноническое значение, т.е. запрос /media/3/header.png
преобразуется в / media / header.png
. Эта статья описывает эту функцию более подробно. Лучшим способом было бы ссылаться на ваши статические файлы с версией URL-адреса и дать вашему веб-серверу правило перезаписи, чтобы игнорировать версию.
См. Полный пример Django здесь , который включает помощник expire_tag
(созданный Арне Бродовски ):
<link rel="stylesheet" type="text/css"
href="{{ MEDIA_URL }}{% expire_tag "css/reset.css" %}" />
И соответствующие правила перезаписи Apache.