Pull to refresh

Comments 42

Так и не понял, в чем же приемущества по сравнению с уже привычными легковесными серверами, или даже с полноценными апп серверами?
Новые решения это хорошо, но показали бы Вы подробнее плюсы, ради которых имеет смысл пробовать ваш продукт.

Так же отсуствие конфигов не всегда хорошее решение, часто бывает что подключиться к машине и поправить файл проще, чем тыкаться в веб морду.
Преимущество во встроенном шаблонном движке.
Есть еще система, которая может похвастаться возможностью оперативно создать веб-сайт по шаблонам, не написав при этом ни строчки кода на Java?
А тут — запросто. И это будет полноценный Java-сайт, который при необходимости можно расширить программными компонентами.
Посмотрите (скачайте) демо-сайт, вам все станет понятно.
Если мне необходимо было бы написать простой сайт, для которого и бизнесс логики не надо, то я предпочел бы иной инструмент, нежели java, думаю для сайта-визитки хватило бы и html+js либо чего-то аналогичного.
Или у вас есть возможность создания сложных шаблонов с бизнесс-логикой, на вашем сайте подобного не увидел, если есть, то инетресно посмотреть.
Шаблоны можно создавать сколь угодно сложные, под любую задачу.
Бизнес-логика реализуется на Java (JavaSE, JavaEE, любые нужные библиотеки на выбор).
UFO just landed and posted this here
Именно.
Я вообще думал, что раскрыл в статье эту мысль.
К сожалению, статья полна каких-то очень странных противоречий, например:
  • «шаблонно-ориентированный программный продукт. Это значит, что нужные программные компоненты вызваются из шаблонов»
  • «разделение кода и представления»
  • «LilacServer полностью соответствует данной парадигме MVC»

Первое (то, что движок — template-driven), означает, что, как минимум, часть логики все-таки _не_ в программном коде, а в шаблонах. То есть разделения кода и представления (шаблонов) на самом-то деле нет. MVC это соответствовать не может точно так же просто по определению — раз он template-driven, но никакого Controller, с которого все начинается, нет. Есть View, он же шаблон, который нечто вызывает. Выделенного Model, насколько я вижу, тоже как бы нет — вы же не занимались созданием data abstraction layer?
Здесь речь идет лишь о парадигме «разделение кода и представления». LilacServer ей полностью соответствует: выполняется код на Java, отдает готовые данные, которые затем форматируются в шаблоне.
Разумеется, я не создавал очередной MVC-движок (зачем заново изобретать Velocity).
Преимущество во встроенном шаблонном движке.

Почему вы считаете это преимуществом?

Есть еще система, которая может похвастаться возможностью оперативно создать веб-сайт по шаблонам, не написав при этом ни строчки кода на Java?
Любая приличная CMS. А если не ставить задачу чтобы решение было именно на Java (тем более мы же не собираемся всё равно писать код), то есть масса готовых решений на том же PHP. Тысячи их!

И это будет полноценный Java-сайт, который при необходимости можно расширить программными компонентами.
Такое ощущение, что само по себе то, что внутри Java — является преимуществом :)
Это просто игрушки для программистов.
Зря вы так, какая-то из таких игрушек может стать чем-то очень мощным и революционным.
С такой лицензией — очень вряд ли. Да и в целом начинание весьма сомнительное.
Сейчас железка на +500 л.с. для php стоит дешевле такого мощного и революционного.
Я вот тоже мечтаю о сайтах на С++, но понимаю, что совершенно незачем.
Если мне необходимо было бы написать простой сайт, для которого и бизнесс логики не надо, то я предпочел бы иной инструмент, нежели java, думаю для сайта-визитки хватило бы и html+js либо чего-то аналогичного.
Или у вас есть возможность создания сложных шаблонов с бизнесс-логикой, на вашем сайте подобного не увидел, если есть, то инетресно посмотреть.
прошу прощения, не туда написал)
Мне не совсем понятно как разворачивать ваше решение на linux сервере, на котором нет иксов в 85% случаев.

Есть ли уже намеки в виде плагинов на интеграцию с популярными IDE? Eclipse, Idea, Netbeans…
Не проблема. LilacServer.com и работает под Debian без иксов.
Сервер инсталлируется из шелла, в текстовом режиме. Настраиваем на нужный IP-адрес, имя хоста указываем опционально.
Запускаем веб-сервер. Заходим из браузера по нужному IP/хосту.
Логинимся.
Настраиваем.
По поводу интеграции…
Рук пока что хватило на создание подсветки синтаксиса для наиболее популярных редакторов. На сайте можно скачать в разделе «Разное».
Какие-нибудь плагины для Eclipse, Netbeans и т.д. вполне можно написать. Наверное, возьмусь. В зависимости от интереса публики.
Там БД автоматом делает переодический респаун. Не волнуйтесь.
Из админки можно тоже делать все что угодно.

Мне хотелось сделать код как можно проще и доступнее для понимания.
Но, вообще, конечно, фильтрацию тегов надо воткнуть.
Спасибо!
Мне не до конца понятно, каким образом можно локально девелопить у себя все. Можно ли прикрутить сервер в embedded режиме (по типу embedded jetty/tomcat)?

Сколько длится старт/стоп сервера?
Старт-стоп очень быстрый. Причем возможно делать рестарт непосредственно из веб-интерфейса (например, это происходит при смене прослушиваемого порта).
Что вы имеете в виду под локальным девелопментом? Чтобы можно было у себя на рабочем компе скомпилировать приложение, и готовые классы автоматом отправились на удаленный веб-сервер? Ну, тут, скорее, нужен какой-нибудь плагин для Eclipse или NetBeans. Его пока нет.
В сегодняшным апп сервере есть такая вещь, как релоад контекста. Вам бы почитать про класслоадеры.
Извините. В любом сегодняшнем, конечно.
Как эксперимент очень даже неплохо )
Вот еще один веб-сервер на Java: Rootage
А что там с лицензией? Она вполне стандартная.
Да, это не опен-сорс. В остальном все бесплатно.
Купить нехилый вдс, заморочить с закрытой системой, чтобы получить «корпоративный сайт» с 5 страничками — это для тех кто не ищет простых путей…
LilacServer.com крутится на VDS-е за 12 баксов в месяц. Насколько я что-нибудь понимаю в веб-строительстве, это не сайт с 5-ю страничками.
Вечером гляну логи, какая нагрузка была из-за этой статьи.
Поясняю: решения такого уровня (ресурс из коробки за 5 минут) нужны как раз для проектов типа «корпоративный сайт» в 5 страничек и покупать для этого вдс, настраивать его, ковырять новую систему, довольно накладно и чтобы развернуть такую систему требуется человек с довольно высокой квалификацией тем более со знанием java. Обычно эту нишу занимает php c его более низкими издержками, следовательно разворачивать на вашей системе будет дороже. Построение более серьезной системы на вашей платформе смысла не имеет, мало того, что ввиду закрытости сильного сообщества не будет, так нужно будет еще изучать новый апи, проще взять готовый костяк например appfuse который поддерживает много популярных java фреймворков.
Что-то новое всегда интересно, но вот наличие в классах страниц (VGS_GuestBook.java) низкоуровневых методов, считывающих побайтно какие-то файлы и раскладывающие их в переменные переносит меня мысленно во времена exe-файлов, работающих под CGI и написанных на Delphi.
Все дело в том, что это демонстрационный сайт. Его нужно скачать, инсталлировать, запустить в работу и убедиться, что все функционирует именно так, как и обещано. Разумеется, хранить данные проще в БД, но тогда инсталляция была бы сложнее.
В «Учебнике разработчика» есть статья, как переделать гостевую книгу под хранение в базе данных.
Понятно, что демонстрационный. Но разве не должен демонстрационный сайт показывать всю мощь фреймворка? Потому что имхо такой «демонстрационный сайт» можно написать без всякого фреймворка и даже оптимальнее…
Всю мощь фреймворка показывает lilacserver.com
Подскажите, а кто является целевой аудиторией продукта?
Для всяких сайтов-визиток — не подойдет, так как есть варианты дешевле.
Для серьёзных клиентов — не подойдет, так как это типичный «Vendor Lock-in» без серьезных преимуществ.
Целевая аудитория — это разработчики, которым нужны нестандартные решения, работающие быстро. Насколько их много наберется — не знаю. Посмотрим.
Не очень понял фразу «Типичный Vendor Lock-in». Что-то очень много вопросов задают по поводу open-source.
Зачем вам копаться в исходном коде сервера? Да, исходники Tomcat или Apache открыты. Ну и что с того? Многим разработчикам жизненно важно в них лезть?
Многим разработчикам жизненно важно в них лезть?
Многим разработчикам жизненно важно иметь возможность заменить один компонент ПО на другой если по каким-то причинам старый перестал устраивать. Фраза «Типичный Vendor Lock-in» означает именно это — ваш продукт является настолько монолитным, настолько «вещью в себе» и стоит так далеко от каких-либо стандартов, что переключиться на какое-либо другое решение в будущем (другой сервер, другой фреймворк, другой шаблонизатор) будет слишком дорого.
Целевая аудитория — это разработчики, которым нужны нестандартные решения, работающие быстро.
Быстро в плане разработки или в плане времени работы приложения?

Сами по себе нестандартные решения никому не нужны. Разве что поиграться :)
Я разработчик web-приложений на Java. Сидим сейчас на Jetty. Исходный код Jetty у меня всегда подгружен в Eclipse, рассылку jetty-dev читаю перед сном. Патчей, пока, отсылать не доводилось (не дорос ещё), но тестировать чужие патчи уже приходилось. И баг один с тем как Jetty работает с JSP отправлял.

А как иначе оптимизировать всё? Вот недавно наш сервис 13K TPS на двух серверах выдержал (в нагрузочном тесте). Вряд ли бы я смог этого добиться без доступа к исходникам Jetty.

Так что исходники сервера приложений нужны. По крайней мере некоторым разработчикам.
В дополнению к вышесказанному за возможность изменения системных параметров только из веб-морды любители автоматизации скажут вам большое «спасибо». Вообщем в след. раз прежде чем тратить годы жизни на не приспособленный к выживанию продукт, вы бы хоть провели исследование, для чего вы это делаете и кому это может быть нужным. Тут же очевидные ляпы в реализации, кто угодно мог их вам рассказать, если бы вы спросили.
Sign up to leave a comment.

Articles