@Sterk
Программист

Почему многие принижают asp.net mvc и IIS?

Я программист C++\C#. Решил изучать веб технологии. Поэтому в продолжение моих тестов веб технологий(тесты yii2/laravel php) - я решил протестировать asp.net mvc на iis сервере и сравнить с результатами yii на nginx. Все запускается в virtual box'e, выдается одинаковое количество ресурсов(1 ядро i7, 1 гигабайт озу). Настроил JMeter на 100 потоков. JMeter показывает, что Yii2 на nginx вытягивает 230 запросов в секунду. Для asp.net mvc на iis JMeter показывает 900 запросов в секунду.
Для пояснения, запросы идут на простые контроллеры/методы, где нет каких то запросов к бд или расчетов - страничка About у yii2 basic и аналогичная страница для asp.net mvc.
Я понимаю, что php идет к JIT, но asp.net уже работает. Так почему же он плох? Чем плох IIS сервер?

PS Я понимаю, что тема холиварная, но хотелось бы какого то конструктива.
  • Вопрос задан
  • 7004 просмотра
Решения вопроса 1
viktorvsk
@viktorvsk
- Железо стоит дешево. Намного дешевле, что грамотные программисты, которые будут под него писать (на том или ином языке, цена тоже разная)
- В вебе 230 в секунду и 900 в секунду не играет никакой роли для 99% вебсайтов (цифра с потолка, смысл, думаю, понятен, насчет сайтов-визиток, бложиков, интернет-магазинчиков...)
- В вебе часто нужно "запилить сейчас. нужно, что б работало вчера". На rails\django это сделать проще, чем на Java, мне кажется.
- Не хочется очень сильно зависеть от кадров (разработчиков пхп куда больше, чем c#, как я понимаю, опять же играет фактор, что не всем нужны гуру, а на c# врядли кто-то будет работать за 3 копейки в час)
- Комьюнити php, мне кажется, больше.
- Если проект специфический (гитхаб, твиттер, фб...), то там отталкиваются, опять же, не столько от языка, сколько от команды, на которую можно положиться
- Есть очень мало вещей, которые нельзя сделать на языке Х быстрее, чем на языке Y. А когда все-таки нельзя, то приходит не java или c#, а Erlang и Go. Хотя, гитхаб и так, вроде живет неплохо на рельсах.

Итог: даже несмотря на то, что вы тестировали мягкое и теплое, то RPS - это всего лишь один из многих показателей.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 5
@asvishnyakov
Программист
Ну, к слову, мегапопулярный StackOverflow работает на Windows Server + IIS + ASP.NET.
Ответ написан
Комментировать
@nico
кто многие?
На Западе многие работают на MS стеке и счастливы.
Работает быстрее, ибо стат типизация, Azure недорог и удобен. MS SQL отличная интерпрайзная БД. С# программисты дороже, но и качество все же выше, как мне кажется.
Разработка на PHP быстрее? VS + R# + EF + Azure дадут фору по скорости. Можный рефактироринг, IntelliSense, паблиш одной кнопкой
Так что я бы не сказал что кто-то там принижает. Ради прикола посмотрите кол-во вакансий для .net инженера где-нибудь в Сиднее и уровень зарплат.
Ответ написан
Комментировать
@gleb_kudr
Ничем не плох, просто так сложилось. Ну и денег стоят лицензии если все делать на MS стеке, на php нет этого фактора.
Ответ написан
leahch
@leahch Куратор тега Linux
3D специалист. Dолго, Dорого, Dерьмово.
Для начала. Вообще-то Вы сравниваете компилированный код c# и интерпретируемый php. Я бы последний заменил на яву или скалу или го. Думаю, что результаты будут сравнимыми.
Во вторых, как правильно заметили - стоимость решения, на майкрософте в три раза выше, плюс более сложная настройка, обслуживание и привязка к вендору.
Для развертывания сервера под nginx достаточно практически любого vps-провайдера, для виндовс это опять в 3 раза дороже.
Ну а так, ничем IIS не хуже или лучше других. Я вот, например, вообще под виндовс не программирую (лет 12 уже), везде линукс и макос, и дома и на работе, да и мейнстримом я микрософт не считаю.
Ответ написан
Комментировать
sofcom
@sofcom
DevOps & IT Produce & Digital marketing
Вся проблема в MS. Для веб-серверов есть Linux/BSD с интерпретаторами и прочим - так уже сложилось исторически. Зачем MS ISS? По скорости выполнения - как напишите, как настроите серверы так и работать будет.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы