V8, Node.js. По тестам V8 вполне жизнеспособен: скорость сопоставима с CPython и более чем вдвое быстрее PHP. Но основной плюс не в скорости, а в асинхронности всех операций, что позволяет достичь быстрого времени отклика и поддерживать большое количество соединений: bit.ly/9i1LgP.
К key-value базам есть много коннекторов, есть коннектор к MySQL на C++ и на чистов яваскрипте. В целом интересная система.
Потому что сравнивают различные языки/компиляторы «из коробки».
Вы думаете, скорость выполнения от этого сильно повысится? Насколько мне известно, APC может ускорить выполнение за счёт ускорение загрузки и хранение готового бат-кода. Вычислительные операции не должны при этом стать быстрее.
Это из серии танцев с бубнами. У меня есть VirtualBox для разных целей на ноуте, но код я часто пишу на нетбуке, и там с виртуальными машинами не разбежишься.
Кроме того у разных линухов плохо с поддержкой разных нетбуковых фич ( я пробовал штуки 3) Время работы от аккумулятора заметно меньше, известная проблема с Intel GMA500.
В наше время есть очень быстрый шаблонизатор СTPP2 — ctpp.havoc.ru/
И ситуация складывается таким образом, что сгенерировать JSON ничуть не быстрее, чем сгенерировать HTML код.
Так зачем заставлять сервер генерировать JSON, если можно сразу сгенерировать HTML?
Оставьте JSON для межсервисного взаимодействия, хотя там уже ниша занята XML'ем…
Чисто теоретически может быть ситуация, когда лучше разделить шаблон и данные. Например шаблон отдается CDN а данные имеют свой родной сервер. Может быть еще ситуация, когда шаблон один а данных много — постраничная или подкачка данных при прокрутке.
И все таки данные перевести в json и в html не всегда одинаково по времени и загрузке. Хотя я лично предпочитаю отдать уже готовый элемент в html, особенно когда таких много и сайт обильно ajax-овый — так существенно облегчается обработка на клиенте, видимое время реакции лучше. Хотя это в другую сторону.
Ну, вы кажется немного погорячились. JSON таки сгенерировать быстрее, нежели html (генерируя html, мы ведь отталкиваемся не только от данных, но и от логики в шаблоне).
Вы должны понимать, что при решении определенного круга задач, генерируя html ВСЁ время на сервере, мы можем получить неоптимально решенную задачу. То есть решения, когда html нужно генерировать на стороне клиента – нужны. И да, по большому счету это больше админки и редкоперезагружаемые страницы. Вы нажали кнопку, и хотите чтобы тут же древовидная структура комментариев стала линейной (пример надуман, понятно что можно найти решение используя CSS). Суть в том, что нужно на странице пользователя перерисовать страницу/элементы, на основе уже имеющихся данных (тот же JSON), НЕ обращаясь к серверу.
Сгенерировать потом на стороне клиента HTML на основе данного json'a — в разы дороже по процессорному времени. Ваш пример решается примитивным js-скриптом, который всего лишь добавляет один css-класс контейнеру, в котором эти комментарии находятся.
Для любой задачи есть множество решений. Есть простые, есть сложные, и нужно смотреть на определенную технологию только в разрезе всего продукта, а не отдельно от него. Иначе аргументация оппонентов не несет нужной смысловой нагрузки и важности аргументов.
Я очень надеюсь, что вы, прочитав комментарий, заметили частицу не. Зачем мне имея данные на странице, стучаться на сервер за html?
И давайте уже смиримся с фактом, что есть задачи, где оптимальнее генерировать html на стороне клиента, а не хранить «уже готовый на все случаи жизни» / «обращаться к серверу за новым» html.
Я бы не стал делать два компилятора, а взял уже готовый, которых для серверных языков вагон и адаптировал бы его ( компилятор в серверный язык) для js. Если правильный компайлер, то там только шаблоны поправить. С данными может быть засада, но как правило шаблонизатору отдают обьекты, а обьект хорошо сериализируется в json.
И почему же мы все не кидаемся вовсю использовать шаблонизацию на стороне клиента?
Если приложение все равно делает HTTP запрос (а это неизбежно задержки!) для получения JSON данных, почему бы не загрузить уже готовое HTML представление, сгенерированное на сервере (или взятое из кэша)? Из моей практики размер чисто шаблона редко когда превышает размер данных, а значит выигрыш в трафике тоже отсутствует?
Не всегда. У меня был вариант, когда с 300 килобайт табличек путем примитивной шаблонизации объем передаваемых данных стал в 30 килобайт.
Но это скорее исключение из правил, чем правило.
он громоздок, недостаточно изящен и вообще. есть более привлекательные решения. я не знаю, зачем может быть нужен xslt, двойная работа. сначала закодируй все в хмл, потом переведи в хтмл, если можно сразу через шаблонизатор пропустить
И javascript шаблонизатор