За последние 24 часа нас посетили 99864 программиста и 5569 роботов. Сейчас ищут 1514 программистов ...

HHVM

Тема в разделе "Настройка веб-сервера", создана пользователем romach, 15 апр 2018.

  1. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Мне кстати тоже на hhvm плевать. Меня больше интересует статистика по nuxt
     
  2. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    php-pm огорчил на небольшом тесте. С одной стороны вроде как быстрее, но с другой всё упирается в количество воркеров - поднимешь много, жрут оперативку, поднимешь мало - запросы встают в очередь и время ожидания выравнивает его по скорости с php-fpm, а местами и делает медленнее. печалька
     
  3. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    привет Go и умение писать неблокирующий код
     
  4. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    когда в go завезут нормальные фреймворки заточенные под веб, которые не очередной клон синатры из руби - таки да.
     
  5. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    не, это разные задачи. под "веб" норм и на пхп с нодой.

    Но если ты начал выдрачивать считанные миллисекунды, то - велкам.
     
  6. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Это как предложение пересесть на автомобиль на ручке без кондиционера без электроники только потому что он мощнее. Перейти со 150 рублевого впс на 300 рублевый не пробовал?:)
     
  7. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    ммм. Проигнорирую этот бред.
     
  8. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Давай обсудим твою идею. Всем интересно зачем тебе это. Тем более ты не первый раз это поднимаешь. Там настолько незначительная разница что просто не имеет никакого смысла.
     
  9. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    если разница незначительная, то с единицами мс не здрачиваешься
     
  10. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    не, просто появилось время на тех. долг: апнуть фреймворк с пакетами до актуальной версии, бд, пых, покурить конфиги и всё такое. Ну и за одно понять на сколько это было полезным. А так, текущее среднее время ответа меня вполне устраивает.
    --- Добавлено ---
    Код (Text):
    1. Transactions:                3300 hits
    2. Availability:              100.00 %
    3. Elapsed time:               59.08 secs
    4. Data transferred:            0.20 MB
    5. Response time:                0.03 secs
    6. Transaction rate:           55.86 trans/sec
    7. Throughput:                0.00 MB/sec
    8. Concurrency:                1.56
    9. Successful transactions:        3300
    10. Failed transactions:               0
    11. Longest transaction:            0.23
    12. Shortest transaction:            0.01
    Laravel очень медленный, не то что yii, ага ))
     
  11. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    3300 hits 0.20 MB Ну это что то совсем простенькое)
     
  12. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    это заголовок с ключом не передается. Мы ж о самой ларке говорим сейчас, а не о дальнейшей бизнес-логике.
     
  13. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Просто ради интереса запустил express с простенькой функцией.
    Код (Text):
    1. app.get('/', (req, res) => res.send((new Date).toString()))
    Код (Text):
    1. Lifting the server siege...
    2. Transactions:                    403 hits
    3. Availability:                 100.00 %
    4. Elapsed time:                  59.08 secs
    5. Data transferred:               0.02 MB
    6. Response time:                  0.00 secs
    7. Transaction rate:               6.82 trans/sec
    8. Throughput:                     0.00 MB/sec
    9. Concurrency:                    0.01
    10. Successful transactions:         403
    11. Failed transactions:               0
    12. Longest transaction:            0.01
    13. Shortest transaction:           0.00
    --- Добавлено ---
    200 запросов в секунду
    Код (Text):
    1. Lifting the server siege...
    2. Transactions:                  11692 hits
    3. Availability:                 100.00 %
    4. Elapsed time:                  59.71 secs
    5. Data transferred:               0.45 MB
    6. Response time:                  0.01 secs
    7. Transaction rate:             195.81 trans/sec
    8. Throughput:                     0.01 MB/sec
    9. Concurrency:                    1.64
    10. Successful transactions:       11692
    11. Failed transactions:               0
    12. Longest transaction:            0.28
    13. Shortest transaction:           0.00
     
  14. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    А теперь навешай на экспесс хотя бы механизм сессий, кук, бд, кэш и прочие обвесы, что превращают req-res в фреймворк. Всегда можно взять lumen, повырезать из него всё лишнее и выдавать тысячи в секунду. Но при чем тут реальность?
     
  15. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    такие вы загрузкодрочеры, что ты, что ты
     
  16. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Присоединяйся. Ждем стату с go:)
     
  17. igordata

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

    С нами с:
    18 мар 2010
    Сообщения:
    32.333
    Симпатии:
    1.753
    пфф нет
    я тебе про фому, ты мне про ерёму
    начнёшь понимать, что я говорю - сможешь гордиться :D

    по мне так php7 достаточно для любых php-подобных задач
     
  18. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Ну ты же не указываешь исходных данных. Вот пример sailsjs 200 запросов 'get /test': function (req, res) {res.send('1')}
    Код (Text):
    1. Lifting the server siege...
    2. Transactions:                  11687 hits
    3. Availability:                 100.00 %
    4. Elapsed time:                  59.40 secs
    5. Data transferred:               0.01 MB
    6. Response time:                  0.01 secs
    7. Transaction rate:             196.75 trans/sec
    8. Throughput:                     0.00 MB/sec
    9. Concurrency:                    2.57
    10. Successful transactions:       11687
    11. Failed transactions:               0
    12. Longest transaction:            0.18
    13. Shortest transaction:           0.00
     
  19. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    go 1.8 / revel / dev-mode
    Код (Text):
    1. Transactions:               69590 hits
    2. Availability:              100.00 %
    3. Elapsed time:               59.90 secs
    4. Data transferred:         4072.17 MB
    5. Response time:                0.11 secs
    6. Transaction rate:         1161.77 trans/sec
    7. Throughput:               67.98 MB/sec
    8. Concurrency:              126.95
    9. Successful transactions:       69590
    10. Failed transactions:               0
    11. Longest transaction:            1.31
    12. Shortest transaction:            0.00
    prod-mode
    Код (Text):
    1. Lifting the server siege...
    2. Transactions:               92549 hits
    3. Availability:              100.00 %
    4. Elapsed time:               29.32 secs
    5. Data transferred:         5394.59 MB
    6. Response time:                0.00 secs
    7. Transaction rate:         3156.51 trans/sec
    8. Throughput:              183.99 MB/sec
    9. Concurrency:                5.58
    10. Successful transactions:       92549
    11. Failed transactions:               0
    12. Longest transaction:            1.04
    13. Shortest transaction:            0.00
    Вопросы? )
    --- Добавлено ---
    я вроде ещё в начале темы указал всё, описал что там и где запущено.
     
    igordata нравится это.
  20. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Тут скорее вопросы к крутости компа)
     
  21. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    обычный старый i5 забитый всякими хромами и идешками оперативкой
     
  22. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Сценарий return request()->message.microtime(); ?message=Hello
    express без cluster. php 4/8
    запуск одновременно
    Код (Text):
    1. laravel
    2. Lifting the server siege...
    3. Transactions:                 663 hits
    4. Availability:              100.00 %
    5. Elapsed time:               59.46 secs
    6. Data transferred:            0.02 MB
    7. Response time:                2.20 secs
    8. Transaction rate:           11.15 trans/sec
    9. Throughput:                0.00 MB/sec
    10. Concurrency:               24.57
    11. Successful transactions:         663
    12. Failed transactions:               0
    13. Longest transaction:           21.56
    14. Shortest transaction:            0.51
    15.  
    16. yii
    17. Lifting the server siege...
    18. Transactions:                1248 hits
    19. Availability:              100.00 %
    20. Elapsed time:               59.82 secs
    21. Data transferred:            0.03 MB
    22. Response time:                1.19 secs
    23. Transaction rate:           20.86 trans/sec
    24. Throughput:                0.00 MB/sec
    25. Concurrency:               24.77
    26. Successful transactions:        1248
    27. Failed transactions:               0
    28. Longest transaction:           13.86
    29. Shortest transaction:            0.10
    30.  
    31. express
    32. Lifting the server siege...
    33. Transactions:               20246 hits
    34. Availability:              100.00 %
    35. Elapsed time:               59.20 secs
    36. Data transferred:            0.87 MB
    37. Response time:                0.07 secs
    38. Transaction rate:          341.99 trans/sec
    39. Throughput:                0.01 MB/sec
    40. Concurrency:               24.11
    41. Successful transactions:       20246
    42. Failed transactions:               0
    43. Longest transaction:           14.67
    44. Shortest transaction:            0.00
     
    #47 nospiou, 20 апр 2018
    Последнее редактирование: 20 апр 2018
  23. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    что это чувак? я ещё раз говорю, синтетики в интернете полно и результат её зависит исключительно от предпочтений авторов этих тестов. У адептов yii - лидирует yii, у фанатов laravel - laravel, а на гитхабах этих тестов куча срачей на тему того, как правильно их делать.

    Что на фронте у PHP? Какие там настройки? Выполнены ли рекомендации по продакшн-оптимизации yii/laravel? Открыть сокет и плевать в него с большой скоростью ответом все умеют, но выполняет ли при этом express тот же набор действий, что и yii? siege выполнялся локально или с другого адреса?

    Я же специально показал тест revel, а если бы потратил пару минут на оптимизацию узких мест и позакрывал ютубчики, то количество rps выросло бы до десятки. Другой вопрос, что такие тесты - не показательны по определению, т.к. в продакшене возникает ещё много нюансов делающих реальную картину совершенно иной.
     
    igordata нравится это.
  24. romach

    romach Старожил

    С нами с:
    26 окт 2013
    Сообщения:
    2.897
    Симпатии:
    718
    PHP 7.2
    Код (Text):
    1. Всего запросов к API: 101824
    2.  
    3. Минимальное время ответа: 0.005
    4. Максимальное время ответа: 7.09
    5. Среднее время ответа: 0.06242788537085
    6. Количество запросов с временем > 0.1 и < 0.2: 15415
    7. Количество запросов с временем > 0.3: 1150
    8. Количество запросов с временем ответа более 1с: 220
    Среднее время ответа смущает, вчера было ~0.08 и это ближе к истине, но в целом результат очевиден )
     
  25. nospiou

    nospiou Старожил

    С нами с:
    4 фев 2018
    Сообщения:
    3.400
    Симпатии:
    510
    Тебя послушать так совсем ничего делать не нужно. Там еще третий игрок был