• Почему падает скорость загрузки файлов (objective-c)?

    Flanker_4
    @Flanker_4
    Я бы тому человеку, который в примерах для демонстрации загрузки файлов использовал изначально метод dataWithContentsOfURL: руки то обломал. И тянется все это уже не первый год. Что не пример, как грузить файлы из сети, так dataWithContentsOfURL. Не для этого этот метод создан. В комментариях прям написано.

    Do not use this synchronous method to request network-based URLs. For network-based URLs, this method can block the current thread for tens of seconds on a slow network, resulting in a poor user experience, and in iOS, may cause your app to be terminated.

    Instead, for non-file URLs, consider using the dataTaskWithURL:completionHandler: method of the NSSession class. See URL Loading System Programming Guide for details.


    P.S. Это не ответ на вопрос почему тормозит, тут нужно запускать профайлер. Это ответ как нужно делать правильно.
    Ответ написан
    1 комментарий
  • Как оптимизировать SQL запрос рандомной выборки?

    DmitriyEntelis
    @DmitriyEntelis
    Думаю за деньги
    У Вас есть 2 задачи: задача найти вхождения строки, и задача выбрать из результатов случайные 10.
    Это 2 разные задачи :)

    Первую задачу логично решать используя инструменты предназначенные для поиска, например Sphinx. sphinxsearch.com
    Он быстро вернет Вам id подходящих записей.
    Из них средставами PHP выбираем сколько надо случайных, далее запрос в SQL select ... where id in (1,2,3,4...)

    В Вашем случае это будет наиболее производительное и масштабируемое решение.

    PS Мне не очень понятна сама идея вывода 10 случайных записей соответствующих паттерну. Не лучше ли выводить 10 самых релевантных? :) Или у вас слишком общий паттерн и о релевантности речи не идет? Уточните этот момент пожалуйста.
    Ответ написан