За последние 24 часа нас посетили 5347 программистов и 443 робота. Сейчас ищут 122 программиста ...

Что может заменить PHP при выполнении следующей задачи..?

Тема в разделе "PHP для новичков", создана пользователем EndoCrinolog, 11 июл 2018.

  1. EndoCrinolog

    EndoCrinolog Активный пользователь

    С нами с:
    4 фев 2012
    Сообщения:
    165
    Симпатии:
    1
    Адрес:
    Тольятти
    Требуется переименовать 100 000 файлов на сервере. Доступ только по FTP. На каком языке лучше всего написать код? PHP, мне кажется, недостаточно быстр для выполнения подобной задачи. Python? Java?
     
  2. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.762
    Симпатии:
    930
    Всё упрётся в очередь файловой системы, так что в плане выбора япа - брать тот, который лучше знает программист
     
  3. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.068
    Симпатии:
    1.698
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    1.072
    Симпатии:
    230
    Адрес:
    Татарстан
    Если доступ к файлам только по фтп, то все упрется именно в протокол. Так что абсолютно без разницы, можно и на php
     
  5. EndoCrinolog

    EndoCrinolog Активный пользователь

    С нами с:
    4 фев 2012
    Сообщения:
    165
    Симпатии:
    1
    Адрес:
    Тольятти
    куда ж я денусь)
    --- Добавлено ---
    проблема не в знании языка, а в том, какой язык по скорости исполнения будет быстрее справляться с поставленной задачей
     
  6. Почтальон

    Почтальон Новичок

    С нами с:
    1 июл 2018
    Сообщения:
    10
    Симпатии:
    1
    Адрес:
    Сызрань
    естественно ассемблер, но писать на нем будет далеко не дешево. Берите любой язык высокого уровня и вперед.
     
  7. mkramer

    mkramer Суперстар

    С нами с:
    20 июн 2012
    Сообщения:
    5.713
    Симпатии:
    1.024
    Издержки на ftp-соединение и работу с ним покроют разницу в скорости исполнения на разных языках, поэтому выигрыша от языка видно не будет. Если конечно нет возможности закачать по ftp скрипт, и запустить, чтоб переименовывал себе прямо на сервере
     
  8. voral

    voral Новичок

    С нами с:
    30 ноя 2017
    Сообщения:
    594
    Симпатии:
    95
    Справедливости для. Не совсем так это уже. Современные компиляторы стали очень умными, и написание узких мест на асме не всегда дает заметный профит. Тем более в таких тривиальных задачах. Если настройки сервера позволяют залить бинарник, сделать его исполняемым я бы написал на С++ в несколько потоков и дернул, например, при помощи php.
    Но. Это целесообразно если задача не разовая....

    Для разовой задачи PHP или баш - как минимум ни какой мороки с компиляцией под ОС сервера, возможными ограничениями по правам ftp и т.п. Если нужна прям скорость скорость: положите все под git. Клонируйте на другой комп, там все сделайте не спеша (кстати раньше far такое умел, даже с использованием регекспов и разных подстановок), и запуште изменения обратно
     
  9. Abyss

    Abyss Активный пользователь

    С нами с:
    12 дек 2015
    Сообщения:
    1.243
    Симпатии:
    208
    Адрес:
    Default city
  10. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.556
    Симпатии:
    565
    Не стоит недооценивать php ) К примеру, у нас api отдается через swoole, среднее время отдачи страницы, при условии, что все нужные данные закэшированы не превышает 20-30мс, а обычно и того 10мс. И это с учетом того, что отдает довольно тяжелый laravel. Но на практике, закешировать всё невозможно и потому среднее время ответа стремится к 100мс, потому что приходится стучаться в другие api и делать выборки из БД.

    В вашем случае, время ожидания сети будет много больше работы самого php, а значит даже если вы замените его на любой другой более быстрый язык, профит всё равно будет сомнительным. Единственное что может реально повлиять на скорость выполнения кейса - несколько потоков переименования. В php тоже можно это сделать, но в том же js или go это будет чуть проще.
     
  11. mkramer

    mkramer Суперстар

    С нами с:
    20 июн 2012
    Сообщения:
    5.713
    Симпатии:
    1.024
    А если не секрет, какие параметры сервера? У меня Laravel только бутстрапится, до выполнения моего кода, от 100 на VPS-ках. Даже если сам код а-ля взять модель/вывести модель... Debug Panel показывает, что запросы занимают от силы 10-20 мс.
     
  12. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.556
    Симпатии:
    565
  13. mkramer

    mkramer Суперстар

    С нами с:
    20 июн 2012
    Сообщения:
    5.713
    Симпатии:
    1.024
  14. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.556
    Симпатии:
    565
    Ага. Laravel при этом чувствует себя вполне нормально, собственно всё тоже самое, только в HttpKernel подсовывают не один запрос, а несколько. Тут главное, что бы твой код не протекал и swoole будет висеть хоть месяцами )
     
  15. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.068
    Симпатии:
    1.698
    такая мелочь
     
  16. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.556
    Симпатии:
    565
    ну, пых уже давно сам по себе не течет, не захламляй память всякой ерундой и будет нормально.
     
  17. nospiou

    nospiou Активный пользователь

    С нами с:
    4 фев 2018
    Сообщения:
    2.050
    Симпатии:
    257
    @romach На lumen переходить не пробовали? Что удерживает?
     
  18. [vs]

    [vs] Суперстар

    С нами с:
    27 сен 2007
    Сообщения:
    10.145
    Симпатии:
    515
    Надо составить список файлов и распределить на 100 потоков и будет норм. 100к в один поток по ФТП - борода отрастет пока закончится.
     
  19. nospiou

    nospiou Активный пользователь

    С нами с:
    4 фев 2018
    Сообщения:
    2.050
    Симпатии:
    257
    Насколько я понимаю это хостинг. Частые запросы в большом количестве должны блокироваться.
     
  20. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.068
    Симпатии:
    1.698
    скачать, переименовать, залить :D
     
  21. nospiou

    nospiou Активный пользователь

    С нами с:
    4 фев 2018
    Сообщения:
    2.050
    Симпатии:
    257
    Снять впс и не страдать ерундой:)
     
    igordata нравится это.
  22. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.068
    Симпатии:
    1.698
    Снять впс и не страдать ерундой:)
     
    nospiou нравится это.
  23. nospiou

    nospiou Активный пользователь

    С нами с:
    4 фев 2018
    Сообщения:
    2.050
    Симпатии:
    257
    Мне нравится твой ответ
     
    igordata нравится это.
  24. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.068
    Симпатии:
    1.698
    обнимашки
     
  25. nospiou

    nospiou Активный пользователь

    С нами с:
    4 фев 2018
    Сообщения:
    2.050
    Симпатии:
    257
    А @Tankisa не приревнует?