Кратко
- В 1996 году Duane Wessels отделил последнюю докоммерческую версию Harvest Cache Daemon, назвал самостоятельную ветвь Squid и выпустил версию 1.0.0 в июле.
- Первые изменения Squid показывают, как преемственность обеспечивалась сопровождением: условными HTTP-запросами, поддержкой HTTPS-объектов и перестроением дискового кэша без остановки обслуживания.
Исследовательский проект может завершиться, а его инструмент — продолжить отвечать на запросы. В 1996 году именно такой практический вопрос возник вокруг веб-кэша Harvest. Проект создал несколько компонентов, включая кэш объектов, однако часть участников перешла в индустрию, когда началось отдельное исследование кэширования при поддержке NSF. Duane Wessels, работавший в Harvest, требовалась общедоступная программа для развертывания и исследований.
В позднейшем техническом описании он говорит, что взял за основу последнюю версию Harvest до коммерциализации, доработал её и назвал отдельную ветвь Squid, чтобы отличать её от другой коммерческой производной.
У ответвления была конкретная эксплуатационная задача. Кэш размещался между пользователем и удалённым веб-сервером, сохраняя копии популярных объектов, чтобы повторные запросы можно было обслужить ближе. Harvest также поддерживал иерархию кэшей. Потребность существовала не только в лаборатории: в статье о новозеландских внедрениях 1996 года говорится, что Harvest Cache использовался в рабочей среде с октября 1995-го. К февралю один сервер обрабатывал объём, эквивалентный примерно пяти процентам интернет-трафика Новой Зеландии с остальным миром. Это оценка одного оператора для конкретного региона, а не показатель глобального распространения.
Первая версия Squid была не просто новым названием неизменённого архива. Журнал изменений бета-версии 1.0 от 19 апреля 1996 года указывает базовую версию Harvest cached-1.4.pl3 и отмечает поддержку запросов If-Modified-Since, объектов SSL и фонового перестроения дискового хранилища, пока кэш продолжает обслуживать запросы. Эти доработки отвечали требованиям эксплуатации прокси: проверять, изменился ли сохранённый объект, работать с дополнительными типами соединений и обслуживать хранилище без остановки сервиса. Официальную версию 1.0.0 выпустили в июле.
В позднейшем рассказе Wessels описывает год, в течение которого проект принимал вклад в код, исправления, запросы функций и сообщения об ошибках. Журнал изменений позволяет увидеть этот процесс предметно: исправления появлялись в следующих выпусках, а Squid продолжал решать вопросы совместимости с соседними кэшами Harvest. В 1997 году RFC 2186 описал ICP — быстрый обмен запросами и ответами между соседними кэшами — и связал его происхождение с иерархическим кэшированием Harvest. Ответвление позволяло менять программу, сохраняя способы взаимодействия, понятные другим кэшам.
История Squid показывает конкретный способ обеспечить преемственность. Операторам не требовалось сохранять без изменений название проекта Harvest, чтобы продолжать работу кэша. Сопровождающий мог взять известную кодовую базу, выпустить самостоятельную ветвь и приспосабливать её к обнаруженным на практике требованиям. Это не гарантировало поддержку навсегда: новому проекту по-прежнему требовались люди, финансирование и совместимые установки. Но результат исследования стал программой, которую можно было регулярно обновлять и выпускать.
Источники
- Duane Wessels, “The Squid Internet Object Cache” (технический обзор)
- Заявление Duane Wessels о происхождении Squid и первом выпуске
- Проект Squid: откуда появился Squid
- Журнал изменений Squid 1.1.21: записи о бета-версиях и выпусках 1996 года
- RFC 2186: Internet Cache Protocol (ICP), версия 2
- RFC 2187: применение Internet Cache Protocol (ICP), версия 2
- “The harvest object cache in New Zealand” (май 1996 года)
- The Harvest Information Discovery and Access System (статья 1994 года)
Обзор для участников
Подробный контекст профиля
Войдите с подходящим уровнем подписки, чтобы открыть полный обзор и примечания к источникам.
Только для Стратегического сообщества
Стратегическое сообщество
Открыто всем читателям. Вступите и войдите, чтобы открыть обзоры профилей.
Вступить в Стратегическое сообществоТолько для Альянса лидеров
Альянс лидеров
Для проверенных владельцев IP-активов и руководителей. Войдите, чтобы открыть обзоры Альянса.
Вступить в Альянс лидеров
