Я создаю платформу, которая позволяет создавать списки (аналогично AirBnb) и загружать на них фотографии. Я использую скрепку для бумаг azure, как указано в заголовке, для хранения фотографий в Azure хранилище BLOB-объектов. Все работает отлично, кроме одного - иногда удаление фотографий занимает много времени (около 10 - 15 секунд). Мне нужно сделать больше тестов, но пока похоже, что только 1-я попытка удаления занимает много времени, а затем любое другое удаление происходит мгновенно. Если я потом ничего не удаляю в течение нескольких минут, то 1-е удаление снова занимает много времени, и если я удаляю что-то вскоре после этого, это быстро. Так выглядит какой-то механизм разогрева. Это нормальное поведение Azure хранилища BLOB-объектов (уровень производительности / доступа установлен на: Standard / Hot) или есть какая-то проблема с моим кодом или скрепкой?
Метод удаления в контроллере Photos выглядит следующим образом: * Код 1003 *
def destroy
@photo = Photo.find(params[:id])
@view = @photo.view
@photo.destroy
@photos = Photo.where(view_id: @view.id)
respond_to :js
end
и js, на который он также отвечает:
$('#photos').html("<%= j render 'photos_list' %>")
просто повторно отображает шаблон:
<% if @photos.count > 0 %>
<br/><br/>
<div class="row">
<% @photos.each do |photo| %>
<div class="col-md-4">
<div class="panel panel-default">
<div class="panel-heading preview">
<%= image_tag photo.image.url() %>
</div>
<div class="panel-body">
<span class="pull-right">
<%= link_to view_photo_path(photo.view_id, photo), remote: true, method: :delete, data: {confirm: "Are you sure?"} do %>
<i class="fa fa-trash-o" aria-hidden="true"></i>
<% end %>
</span>
</div>
</div>
</div>
<% end %>
</div>
<% end %>
PS Да Я знаю, что скрепка устарела, и я должен перейти на ActiveStorage - это в моем списке задач, но пока этого не произойдет, я бы хотел понять, что происходит
Спасибо всем