Высокая нагрузка: собственный легкий веб-сервер против модуля для nginx - PullRequest
1 голос
/ 10 ноября 2010

Как вы думаете, это хорошая идея написать собственный веб-сервер для высоконагруженного проекта со встроенным собственным кодом по сравнению с модулем nginx + C ++?Возможно, прирост производительности будет незначительным?

А как обстоят дела с безопасностью этого подхода (модуль С ++ для nginx) по сравнению с использованием интерпретируемых языков программирования?

Ответы [ 3 ]

2 голосов
/ 10 ноября 2010

Не делай этого.

Ваше время будет лучше потрачено на изучение того, как вы можете улучшить кеширование своих ресурсов. Исследуйте HTTP Cache-Control, условное GET, Transfer-Encoding (т.е. gzip) и Range заголовки (в этом порядке).

Если вы используете ORM-исследование, вы можете включить постоянное кэширование, чтобы исключить перескоков сети в вашей БД.

Кроме того, изучите использование CDN и кэширование обратного прокси-сервера, такого как Varnish.

1 голос
/ 18 декабря 2010

Не выбирайте и не принимайте оба (скомпилированные скрипты C ). G-WAN позволяет смешивать сценарии C и скомпилированные библиотеки с помощью простой директивы #pragma link, чтобы вы могли выбрать, какая часть вашего кода будет предварительно скомпилирована, а какая останется в сценарии.

0 голосов
/ 10 ноября 2010

Будет довольно сложно написать собственный безопасный веб-сервер.nginx очень тщательно протестирован и лучше отвечает требованиям безопасности.Скорость, вероятно, не является проблемой (nginx молниеносен).Вы все еще можете использовать несколько процессов nginx, если нагрузка становится слишком большой.

Относительно языка программирования: если вы действительно имеете дело с высокопроизводительным приложением, вам, вероятно, понадобится модуль C ++, но в большинстве случаевпереведенные языки будут соответствовать потребностям.Я предпочитаю интерпретированные языки, так как разработка может быть сделана намного быстрее.Если он становится слишком медленным, вы все равно можете переключиться на C ++.

...