Выбор языка для web разработки(real time). Какой вы посоветуете?
==================================================================

 Доброго времени и оставшихся дней.  

Меня волнует вопрос выбора языка для web разработки(real time application).  

Имхо больше и нечего предложить.  

Думаю вам понравится)  

С знанием Python можно будет и под линукс делать что то,пилить дополнения под свой дистрибутив итд,многое написано на питоне,и он очень прогрессирует! 

 Забудьте слова "real time" при написании кода для не real time операционной системы. 

 Под «real time web» вы понимаете comet, асинхронность и многопоточность?  

Node.js, Erlang. Еще Go выходит на сцену многопоточности, и весьма успешно.  
  

Go — по вкусу. Попробовать советую в любом случае, приятный язык, хорошее будущее. Есть определенные баги, язык все-таки молодой.  
  

Erlang — для больших нагрузок. На тот случай, когда нужно выжать из железа максимум, но при этом не писать проект на C/C++. Память не течет (за исключением пары опасных мест), выстрелить в ногу сложно. Писать тоже сложно, если с непривычки.  
  

В большинстве задач будет достаточно Go/Node.js. 

 для real time сейчас очень актуален node.js  

 Real-time - это, наверное, long-polling, когда сервер и клиент подолгу держат соединение открытым, в противовес обычному вебу, где 1 запрос открывает соединение, ждёт ответа и сразу закрывает его. Для этого обычно используют многопоточные и/или асинхронные штуки.  

Со стороны клиента это реализуется через WebSocket (современный вариант), либо другими хитрыми методами. Протокол websocket поддерживают многие браузеры, однако есть [SockJS](https://github.com/sockjs), который в случае чего прозрачно меняет протокол на другой доступный. Там же есть ссылки на реализацию этого протокола для других языков.  

Со стороны сервера:  

Для питона - это tornado и asyncio (только для 3-й ветке, включён в стандарт). Можно писать в коллбечном стиле, можно в обычном с использованием корутин (сопрограмм). Tornado умеет sockjs, вебсокет есть для обеих вариантов.  

Java сама по-себе многопоточна, поддержка websocket включена в стандарт JavaEE. Помимо этого есть решения для спринга. Это удобно, потому что нужен всего 1 фреймворк и для обычной части сайта (если такая есть), и для его асинхронной части. Есть очень производительный сервер netty с неблокирующим вводом-выводом и апи к нему.  

И т.д.  

В принципе, почти для каждого языка есть свой неблокирующий сервер и фреймворк к нему. Просто смотри на тот язык, который удобнее и для которого есть большая инфраструктура. 

> Многое меня в нем устраивало, но многое и отпугивает.

Что именно Вас отпугивает: незнание или нежелание изучать глубже? (шучу так :)  
  

Многопоточный сокет-сервер на PHP - вообще нет проблем (например, для клиентского js/websocket). 

 Под требования подходит [vibed.org](http://vibed.org/) 

 Java, Python или Go, выбирайте на свой кус. В контексте realtime часто возникает node.js, но он строго говоря однопоточный, и realtime не зависит от языка.