Нередко в бизнесе наступает момент, когда проект подходит к концу, заканчиваются инвестиции — и заказчик вынужден отпустить команду, которую он…
Иногда лучше купить новый сервер, чем оптимизировать приложение. Время разработчиков сейчас стоит намного дороже серверов. Как выбирать сервера для роста…
В этой статье рассмотрим принципы решения типичных задач в key-value базах данных.
Так или иначе возникает ситуация, когда на сервере базы данных со временем приходится работать с огромными таблицами.
[https://redis.io/ Redis] – простое, быстрое и удобное key-value хранилище данных. При масштабирование любого приложения возникает необходимость переноса данных между серверами.…
Хостинг и отдача большого количества медиа данных в Web – одна из самых сложных задач. Видео и аудио файлы могут…
При использовании кеширования место на диске рано или поздно закончится. В таком случае обычно используют очистки кеша. Например, удалять все…
Обычно CDN используют в случае, когда у сайта или приложения аудитория распределена по большой территории. Однако, в какой-то момент времени…
Нормальная форма хранения данных предполагает избегания дублирования данных. Ключевых правила два:
Разрабатывая веб-приложение важно помнить об отказоустойчивости. Fault tolerance – метод проектировки, при котором неработоспособность отдельного элемента или функции приложения не…
Система очередей Gearman по умолчанию использует только оперативную память для хранения задач. Это означает, что при перезагрузке или внезапном выключении…
Сегодня существует множество платных и бесплатных систем мониторинга серверов. Мы привыкли к тому, что мониторинг централизован. Есть сервер с графиками.…
Доступность любого приложения зависит от работоспособности его компонент. Обеспечение доступности приложения – это обеспечение доступности компонент. На физическом уровне –…
Во многих Web приложениях существует необходимость иметь систему хранения, ресайза и отдачи фотографий. Например, для функции загрузки фоток в профиль…
При шардинге неизбежно возникает необходимость перебалансировать данные. Точно предсказать рост объема и формы данных практически невозможно. Поэтому ребалансировка данных –…
Вопрос “чего не делать, чтобы расти” иногда важнее вопроса “как расти”. Большинство из этих вещей покажутся знакомыми и простыми. Но…
Выкатка (или deployment) новых версий Web приложений имеет ряд трудностей, т.к. необходимо быстро и одновременно выполнять группы действий на разных…
Для ускорения работы программы широко применяется практика асинхронного выполнения задач. Это значит, что операции выполняются непоследовательно, отложенно.
Обычно Web приложения работают с одним сервером базы данных. Почти всегда приложение использует более одной таблицы.