Ответ 1
Я не могу говорить за Метеор, но я могу помочь создать небольшой фон на парусах, потому что я его создал.
TL;DR; Паруса не панацея для всех проблем в Интернете, но я считаю, что Node.js есть. Целью Sails является создание практической основы для разработки полных, масштабируемых, запускаемых и удобных для бизнеса приложений, построенных на Node.js. Я начал Balderdash с вопросом "Можем ли мы использовать Node.js для всего?". Паруса - это ответ.
Из новых документов:
Паруса - это, конечно же, веб-фреймворк. Но сделайте шаг назад. Что это значит? Иногда, когда мы ссылаемся на "сеть", мы имеем в виду "интерфейсную сеть". Мы думаем о концепциях, таких как веб-стандарты, или HTML 5, или CSS 3; и фреймворки, такие как Backbone, или Angular, или jQuery. Паруса не являются "такими" веб-фреймворками. Sails отлично работает с Angular и Backbone, но вы никогда не будете использовать Sails вместо этих библиотек.
С другой стороны, иногда, когда мы говорим о "веб-фреймворках", мы имеем в виду "back-end web". Это вызывает такие понятия, как REST, HTTP или WebSockets; и построен на таких технологиях, как Java, или Ruby, или Node.js. Рамка "back-end web" помогает вам делать такие вещи, как сборка API, взаимодействие с базами данных, подача HTML файлов и управление сотнями тысяч одновременных пользователей. Паруса "такого рода" веб-фреймворка.
Несколько лет назад я взял на себя обязательство использовать Node.js для всего - это была любовь с первого взгляда. Я построил паруса поверх Express и Socket.io, поскольку они были (и остаются) наиболее устоявшимися модулями Node для их соответствующих случаев использования. Код обработки запроса в Sails совместим с Express, с дополнительным преимуществом неявной поддержки Socket.io.
Sails предназначен для совместимости с любой стратегией, которую вы имеете для создания своих интерфейсных модулей в Angular, Backbone, iOS/ObjC, Android/Java или даже просто предлагая необработанный API, который будет использоваться другой веб-службы или вашего сообщества разработчиков. Если вы в конечном итоге измените свой подход (например, переключитесь с Backbone на Angular) или полностью построите новый интерфейс (например, создав собственное приложение для Windows Phone), приложение Sails по-прежнему будет работать. Как вы уже знаете, некоторые люди называют этот подход сервис-ориентированной архитектурой или SOA (Joe McCann имеет отличную колоду по этому вопросу.)
В то же время Sails поддерживает другие привычные соглашения для создания веб-серверов - стандартную структуру MVC, возможность создания чистых API-интерфейсов и основных модулей, которые являются открытыми, настраиваемыми, расширяемыми и даже заменяемыми. Это означает, что Sails может быть настроен так, чтобы соответствовать потребностям пользователей, как низкий уровень, как это необходимо.
В 2013 году структура испытала некоторый огромный рост популярности, и наш консалтинговый бизнес вырос. Остальные основные разработчики и я расширили нашу акцент на том, чтобы сделать бэкэнд-развитие максимально быстрым и простым. Связанные с этим аспекты Sails, таких как перехватчики (плагины), тестирование и документы, прошли долгий путь за последний год благодаря усилиям как нашей основной команды, так и сообщества (постоянно расширяющегося) Sails в целом. Есть много дорожных элементов, над которыми мы все еще работаем, но я считаю, что Sails - лучший вариант для стабильной, поддерживающей MVC-разработки на Node сегодня. Остальная часть команды и я привержены продолжению обслуживания и развития функций, и поскольку мы используем ее для всех наших клиентских проектов, она никуда не идет.
Я верю в то, что сделал паруса лучшей веб-картой, но никогда не за счет Node.js. Основная группа и я безжалостно преданы усовершенствованию экосистемы Node, а это означает использование НПМ, использование существующих технологий и лучших технологий Node и т.д. Не только потому, что это имеет больше смысла, а потому, что мы Node.js разработчиков. Мотивация для всех наших усилий состоит в том, чтобы сделать Node более доступным, а не отменять его. Итак, если в какой-то странной параллельной вселенной мне был предоставлен выбор Фауста между конвертированием парусов на какой-то другой язык или полностью падающим парусом, но все же можно использовать Node, я бы выбрал последнее.
Дополнительные ресурсы:
FAQ | Sails 101 | Оригинальный скринкаст | Руководство по вкладам | fooobar.com/questions/tagged/...
Группа Google | Roadmap | IRC: #sailsjs на Freenode | Состояние сборки