Рубрика «AtContent»

Всем привет. Перед вами заключительная статья из цикла «Внутреннее устройство и архитектура сервиса AtContent.com». Здесь собраны лучшие практики из нашего опыта работы с Azure Table Storage и платформой в целом. Эта статья может стать отправной точкой при построении типовых структур данных и позволит более эффективно использовать ресурсы Windows Azure.

Практические советы по разделению данных на части. Генерация PartitionKey и RowKey для Azure Table Storage

Горизонтальное масштабирование во многом опирается на разделение данных и платформа Windows Azure не исключение. Одной из составляющих частей платформы является Azure Storage Table — NoSQL база данных с неограниченным ростом. Но многие разработчики игнорируют её в пользу привычного и знакомого SQL. При этом довольно часто задачи решаются с помощью Azure Storage Table намного эффективнее, чем с применением Azure SQL.

Здесь вы найдете практику и сценарии применения Azure Storage Tables.
Читать полностью »

Всем привет! Рад представить вам уже пятую статью из цикла «Внутреннее устройство и архитектура сервиса AtContent.com». В ней я расскажу о том как сделать работу с Azure Table Storage более функциональной и удобной.

LINQ

Платформа Windows Azure дает очень мощный набор инструментов для реализации своих идей. И среди них – Azure Table Storage – нереляционная база данных с неограниченным объемом. Большим плюсом этого хранилища является то, что можно делать к нему достаточно сложные запросы. Но помимо этого есть и некоторые неудобства. Так, например, с помощью LINQ нельзя выполнить запросы, в которых есть логика Or или Contains без дополнительных модификаций.
Читать полностью »

В этой, уже четвертой, статье из цикла «Внутреннее устройство и архитектура сервиса AtContent.com» я предлагаю познакомиться с фоновой обработкой заданий с использованием экземпляров сервиса Azure (Worker Role).

В качестве основного канала коммуникации между экземплярами рекомендуется использовать очереди Azure (Azure Queue). Но использование только этого канала не позволяет максимально эффективно использовать экземпляры сервиса. Итак, в этой статье вы узнаете как

  • минимизировать задержку между отправкой задания на экземпляр и началом его обработки
  • минимизировать количество транзакций к Azure Queue
  • повысить эффективность обработки заданий

Эффективное управление облачными очередями (Azure Queue)
Читать полностью »

Перед вами третья статья из цикла «Внутреннее устройство и архитектура сервиса AtContent.com». Из нее вы узнаете как и для чего при использовании платформы Windows Azure можно сократить количество обращений к хранилищам данных Azure Table Storage и Azure Blob Storage. В нашем сервисе авторы размещают свои публикации, которые затем встраиваются в различные сайты. Таким образом однажны опубликованный контент отображается на большом количестве ресурсов, при этом доставляется на эти сайты через наш сервис. Поэтому чтобы сократить количество обращений к хранилищу Azure мы применяем кеширование публикаций в хранилище экземпляра, так как дополнительной платы за это не взимается.

Также в статье будут затронуты вопросы о том как управлять кешированием при наличии более одного экземпляра приложения и как синхронизировать между экземплярами состояние кеша.
image
Читать полностью »

Сегодня вашему вниманию представляется вторая статья из цикла статей об архитектурных решениях сервиса AtContent.com.

В процессе работы над сервисом AtContent.com у нас возникла задача о синхронизации между экземплярами внутри роли, а также между ролями. Стандартные средства из SDK не позволяют решить эту проблему двумя строчками кода. Поэтому мы разработали собственное решение для коммуникации между экземплярами. Оно позволяет выполнять задания на всех экземплярах роли сразу, либо на одном экземпляре, который выбирается определенным образом либо случайно.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js