Проблема всех крупных интернет-порталов
 

Проблема всех крупных интернет-порталов

28 Июнь 2015 1:07 Категории: Вдохновение Кухня

Совсем недавно я взялся за разработку крупного интернет-портала, целевая аудитория которого находится в разных временных зонах.

Расскажу небольшую историю о том, как большой проект нашел на небольшой айсберг.

Все началось еще пару лет назад, когда данный проект разрабатывался для личного использования, и целевая аудитория предполагалась небольшая. По крайней мере она находилась в одной временной зоне.

Система очень быстро развивалась и росла. И жители/заказчики других регионов начинали расспрашивать о системе, им было интересно внедрить ее у себя в регионе. Разработчики системы с радостью делились возможностью пользоваться системой, они поднимали на одном веб-сервере еще одну копию проекта для региона и предоставляли к ней доступ. К слову сказать, веб-сервер использовался IIS, который жил в операционной среде Windows Server.

И все было хорошо, пока слухи о системе не начали распространятся дальше соседних регионов и пролетели половину страны, тогда люди из далека начали приходить и спрашивать о системе. Довольные разработчики также охотно делились информацией о системе, но когда пришла просьба внедрить в их регионе, разработчики взялись за голову.

Сервер, где должна разворачивается система находится в одном часовом поясе, а регион – в другом часовом поясе. И начали разработчики искать решения  проблемы:

  • предлагали перевести все время в системе на UTC, но что делать с существующими данными;
  • предлагали ввести системную настройку в виде разницы между часовыми поясами, но тогда везде писать дополнительные условия на вывод времени;
  • настроить время на сервере под нужный регион, но сервер используется один для всех.

И долго маялись с этой проблемой разработчики, пока не перешли на UTC формат. И смысл данной истории прост: храни все в UTC, раз хочешь иметь инфраструктуры рост.