Jump to content

Трескаться

Рейло Сервер
Разработчик(и) Railo Technologies, Майкл Оффнер, Герт Франц
Первоначальный выпуск апрель 2006 г.
Стабильная версия
4.2.2.005 / 18 декабря 2014 г .; 9 лет назад ( 18 декабря 2014 г. )
Репозиторий
Написано в Ява
Операционная система Windows , Linux , Unix , macOS
Доступно в английский, немецкий
Тип Сервер приложений
Лицензия LGPL v2.1
Веб-сайт github /гетраило /трескаться

Railo Server , обычно называемый Railo ( / ˈr l , часто / RY -loh ), представляет собой программное обеспечение с открытым исходным кодом общего назначения CFML , которое реализует серверный язык сценариев используемый для создания динамических веб-сайтов , веб-приложений и интранет- систем. . CFML — это динамический язык , поддерживающий несколько парадигм программирования и работающий на виртуальной машине Java (JVM).

Railo был создан швейцарской компанией Railo Technologies GmbH и задумывался как высокопроизводительная альтернатива Adobe ColdFusion . В 2008 году Railo перешёл на модель с открытым исходным кодом, управляемую сообществом, и стал проектом JBoss . Проект Railo Open Source возглавляет компания Railo Technologies, а работа по разработке финансируется за счет контрактов на консультирование и поддержку, но любой может внести свой код на рассмотрение.

Райло был назван в честь инопланетной собаки из «Звездного пути: Энтерпрайз» . На самом деле собаку зовут Райло, но фонетически по-немецки она пишется как Райло. [1] Таким образом, Railo можно произносить либо как rhy-lo, либо как rai-lo — оба варианта допустимы.

Основные выпуски Railo имеют кодовое имя выдающихся и преданных собак из истории.

Railo начался в 2002 году как студенческий проект Майкла Оффнера и Герта Франца по компиляции кода CFML в PHP . Выбор был сделан из-за повсеместного распространения PHP, однако было обнаружено, что это не дает желаемой производительности и стабильности, и решение было принято. вместо этого пришлось переключиться на платформу Java . [1]

Проект оказался настолько успешным, что было решено продолжить разработку полноценного продукта. Перед официальным выпуском 1.0 в апреле 2006 года было выпущено несколько альфа- и бета-версий. Railo продолжал разрабатываться, но был относительно неизвестен многим разработчикам CFML до июня 2008 года на конференции Scotch on the Rocks в Эдинбурге , когда Railo Technologies использовала Day 2. лейтмотив, чтобы объявить о партнерстве с JBoss и переходе на открытый исходный код. [2]

В мае 2012 года на ср. Цель конференции: было объявлено о создании «The Railo Company Ltd», частной компании с ограниченной ответственностью , в которую входят швейцарская компания Railo Technologies GmbH совместно с пятью другими компаниями, работающими в отрасли CFML. [3]

Люси Форк

[ редактировать ]

29 января 2015 года первоначальный разработчик Railo объявил о проекте Lucee , ответвлении кодовой базы Railo 4.2, который заявил, что не будет дальше работать над Railo. Другие разработчики подтвердили, что они также сосредоточатся исключительно на Lucee, и - хотя со стороны The Railo Company не было сделано никакого официального заявления - сообщество единодушно считает, что дальнейшее развитие проекта Railo маловероятно. [4] [5]

19 июля 2016 года компания Railo была распущена. [6]

История выпусков

[ редактировать ]
Основная версия
(Кодовое имя)
Меньшая версия Дата выпуска Примечания
0 Альфа 1 2004-04-10 Первый официальный выпуск движка Railo CFML. [7]
Альфа 2 2004-05-18
Альфа 3 2004-08-03
Альфа 4 2004-10-21
Бета 1 2005-01-16 Первая бета-версия Railo.
Бета 2 2005
Бета 3 2005
RC1 2005-09-23 Первый релиз-кандидат Railo был представлен немецкому CFUG в Мюнхене. [7]
1.0 1.0.0.000 2006-04
2.0 2.0.0.000 2007-09-10
2.0.1.000
2.0.2.000
3.0 3.0.0.000 2008-09-09
3.0.1.000
3.0.2.000
3.0.3.000
3.1

( Барри )

3.1.0.000 2009-08-12 Первый выпуск Railo с открытым исходным кодом. [8]
3.1.1.000 2009-08-11
3.1.2.000 2010-11-26
3.2

( Грейфрайарс Бобби )

3.2.1.000 2011-12-24
3.2.2.000 2011-03-18
3.2.3.000 2011-06-10
3.3

( Хатико )

3.3.1.000 2011-11-03 Добавлена ​​встроенная поддержка ORM и многие другие функции. [9]
3.3.4.003 2012-06-25
4.0

( Аполлон )

4.0.0.013 2012-07-02
4.0.5.004 2013-07-09
4.1

( самостоятельно )

4.1.2.005 2013-12-11 .
4.2

( Togo )

4.2.0.009 2014-05-14
4.2.1.000 2014-05-21
4.2.2.005 2014-12-18 Текущая стабильная версия Railo

Платформы и лицензия

[ редактировать ]

Railo работает на JVM как сервлет и будет работать с любым контейнером сервлетов (например, Apache Tomcat , Eclipse Jetty ) или сервером приложений (например, JBoss AS , GlassFish ).Можно подключить веб-сервер (например, Apache , IIS , nginx , Cherokee ) спереди, используя такие соединители, как mod jk , mod proxy или эквивалентные, но Railo этого не требует.

У Railo есть установщик для Linux , macOS и Windows , который включает в себя Apache Tomcat . Существует также предварительно настроенная загрузка Railo Express с использованием Jetty .

Начиная с версии 4.0, Railo будет иметь версию для командной строки , позволяющую использовать CFML в качестве языка общего назначения вне среды сервлетов. [10]

Railo, поскольку версия 3.1 лицензируется как LGPL v2.1, [11] с исходным кодом, доступным на GitHub [12]

Философия

[ редактировать ]

Основной целью Railo было обеспечение функциональности ColdFusion с использованием меньшего количества ресурсов и повышением производительности, а команда Railo Technologies продолжает «расценивать медлительность как ошибку» как основную философию разработки. Многие тесты производительности показали, что Railo работает быстрее, чем другие механизмы CFML. [13]

В дополнение к этому, Райло пытается устранить многие несоответствия, обнаруженные в традиционном CFML. Это либо принудительные изменения в поведении, либо настраиваемые параметры в администраторе Railo.

Команда Railo Technologies всегда была открыта для обратной связи и активно участвовала в общественных мероприятиях CFML, а также стремится напомнить людям, что Railo — это общественный проект.

Railo Technologies также создает прочные технологические партнерства с компаниями-разработчиками программного обеспечения CFML, включая Blue River Interactive Group (разработчики Mura CMS ), CONTENS Software GmbH. [14] (разработчики CONTENS CMS ) и Intergral GmbH [15] (разработчики FusionReactor и FusionDebug ), чтобы обеспечить правильную работу их программного обеспечения с Railo. Кроме того, Railo Technologies предлагает официальные «партнерские программы» для решений (разработки), хостинга и обучения. [16]

Использование

[ редактировать ]

Сервер приложений Railo в настоящее время загружает в среднем 7000 загрузок (и эта цифра растет) в месяц. [17]

Railo используется рядом компаний, в частности:

  • Поддерживает объектно-ориентированное программирование с наследованием , примесями и метаклассами.
  • Динамическая типизация и утиная печать
  • Литеральная запись для массивов и структур
  • Встраивание переменных в строки ( интерполяция )
  • Именованные аргументы , необязательные аргументы и аргументы по умолчанию.
  • Три уровня области видимости объектной переменной: This (публичный объект), Variables (частный объект), Local (частная функция).
  • Область действия нескольких глобальных переменных: запрос, сеанс, клиент, приложение, сервер, кластер.
  • Различные области действия переменных, предоставляемых пользователем: форма (публикация), URL (получение), файлы cookie, CGI.
  • Автоматическая сборка мусора (через JVM)
  • Глобальная и локальная обработка исключений (через onError и try/catch)
  • Пользовательское поведение отправки (через onMissingMethod и неявные геттеры и сеттеры)
  • Неявное преобразование объектов (через _toString, _toNumeric, _toBoolean, _toDate) [28]
  • Собственные потоки
  • Поддержка Unicode , нескольких кодировок символов и i18n.
  • Большая стандартная библиотека, удовлетворяющая общие потребности веб-разработки.
  • Магазин расширений Railo [29] и менеджер расширений [30] для легкой установки дополнительного программного обеспечения и расширений
  • Собственный API -интерфейс плагина на CFML или Java [31]
  • Встроенная обработка для простого создания и использования веб-сервисов.
  • Отдельные администраторы графического интерфейса для отдельных веб-контекстов, а также глобальный администратор сервера.
  • Все настройки администратора настраиваются программно или путем редактирования XML . файлов конфигурации
  • Собственные ресурсы для всех встроенных тегов и функций файловой системы. [32]
  • Кластеризация и синхронизация как для традиционных, так и для облачных серверов.
  • Диспетчер задач для планирования повторяющихся действий или повторной попытки неудачных событий [33]
  • Встроенная поддержка Hibernate ORM
  • Большое количество функций манипулирования изображениями.
  • Шлюзы событий для асинхронного выполнения кода [34]
  • Встроенная поддержка различных кэширования . механизмов [35]
  • Встроенное управление сеансами (сеансы CFML или сеансы J2EE) с onSessionStart и onSessionEnd триггеры.
  • Встроенная функция аутентификации пользователей и ролей.

Безопасность

[ редактировать ]

CFML имеет встроенную функциональность для предотвращения внедрения кода через cfqueryparam тег и такие функции, как HtmlEditFormat, XmlFormat, JsStringFormat.Существуют также сторонние реализации CFML API OWASP Enterprise Security, [36] и проект АнтиСами. [37]

Одним из ключевых решений по архитектуре Railo было следование модели сервлетов JEE с поддержкой нескольких независимых веб-контекстов на одном сервере. Это ключевой фактор безопасности, поскольку он предотвращает взаимодействие несвязанных приложений друг с другом, что может произойти на общем сервере ColdFusion (который имеет только один веб-контекст).

Синтаксис

[ редактировать ]

Railo реализует язык CFML см. в разделе синтаксиса CFML примеры, а также CFScript .

Различия

[ редактировать ]

Отличия от других языков

[ редактировать ]

CFML имеет синтаксис на основе тегов, который визуально отличается от большинства других языков, хотя в остальном он похож на другие динамические языки, за следующими исключениями:

  • CFML содержит два синтаксиса: синтаксис на основе тегов (несовместимый с XML) и синтаксис в стиле C, называемый cfscript.
  • Массивы в CFML индексируются с единицы, а не с нуля.
  • CFML поддерживает как упорядоченные, так и именованные аргументы функции или их комбинацию.
  • В CFML нет статических переменных.

Отличия от Adobe ColdFusion

[ редактировать ]

Хотя Railo реализует CFML и в целом совместим с Adobe ColdFusion (ACF), исходным движком CFML, между ними есть некоторые заметные различия:

  • Railo — это v2.1 с открытым исходным кодом программное обеспечение LGPL . ACF — это запатентованная технология.
  • Railo использует архитектуру с несколькими веб-контекстами по сравнению с единым веб-контекстом ACF.
  • Railo позволяет создавать «встроенные» пользовательские функции, используя стандарт CFML.
  • Railo не может расшифровать (или выполнить) шаблоны, зашифрованные с помощью механизма шифрования ACF.
  • Railo имеет значительно более быстрый цикл выпуска основных, второстепенных выпусков и обновлений.
  • В Railo области всегда имеют приоритет. В ACF создание переменной с именем «Url» может заблокировать доступ к области URL. В Railo доступ к переменной возможен только как «Variables.Url».
  • Railo ищет CFC только внутри пользовательского пути тега, если он соответствующим образом определен администратором (вместо этого у него есть отдельный путь CFC).
  • Railo 4.x представляет интерфейс командной строки (CLI), который позволяет выполнять сценарии CFML из командной строки.
  • Railo позволяет использовать методы объекта. Поэтому вместо использования массива Append(arr, «значение») можно написать: arr.append(»value»).append(»anotherValue»).

См. также

[ редактировать ]
  • Lucee — форк Railo, который в настоящее время поддерживается первоначальными разработчиками Railo.
  • Adobe ColdFusion — оригинальный движок CFML.
  • CFML — язык, который использует Railo.
  1. ^ Jump up to: а б «10 лучших сайтов с биткойн-слотами | Лучшие крипто-игровые автоматы 2021 года» .
  2. ^ «Райло присоединяется к JBoss.org» . Infoq.com. 18 июня 2008 года . Проверено 27 января 2023 г.
  3. ^ «Railo в cf.Objective(): эволюция Railo — блог Railo» . Архивировано из оригинала 18 февраля 2015 года . Проверено 17 февраля 2015 г.
  4. ^ «Райло и Люси: Жгучие вопросы Hunka Hunka» .
  5. ^ «Люси» .
  6. ^ «История регистрации заявок THE RAILO COMPANY LIMITED — Найдите и обновите информацию о компании — GOV.UK» .
  7. ^ Jump up to: а б «Райло – двигатель CFML» . www.railo.ch . Архивировано из оригинала 31 октября 2005 года . Проверено 15 января 2022 г.
  8. ^ «Выпуск Railo 3.1» . Архивировано из оригинала 30 июня 2011 года . Проверено 2 октября 2011 г.
  9. ^ «10 лучших сайтов с биткойн-слотами | Лучшее онлайн-казино 2022 года» .
  10. ^ «Дорожная карта железной дороги» . Архивировано из оригинала 26 сентября 2011 года . Проверено 2 октября 2011 г.
  11. ^ «Вики-документация Railo CFML — Лицензия Railo» . Архивировано из оригинала 31 октября 2011 года . Проверено 2 октября 2011 г.
  12. ^ «Двигатель Railo CFML» . Гитхаб . 30 апреля 2022 г.
  13. ^ «Сохранение файлов классов в coldfusion» . Архивировано из оригинала 13 августа 2013 года . Проверено 7 сентября 2013 г.
  14. ^ СОДЕРЖАНИЕ Software GmbH
  15. ^ Интерграл ГмбХ
  16. ^ «Партнерские программы» . Архивировано из оригинала 1 октября 2011 года . Проверено 2 октября 2011 г.
  17. ^ «Статистика железных дорог» . Архивировано из оригинала 13 января 2013 года . Проверено 24 июля 2013 г.
  18. ^ «Использует Mura CMS на базе Railo» . Архивировано из оригинала 16 января 2012 года . Проверено 2 октября 2011 г.
  19. ^ Внутренне использует Mura CMS на базе Railo.
  20. ^ «Филип Каплан официально запускает дистрокид» . Технический кризис. 10 октября 2013 г.
  21. ^ Railo поддерживает немецкие веб-сайты IDG.
  22. ^ «У меня 404 772 пользователя. Что теперь?» . News.ycombinator.com . Проверено 8 ноября 2012 г.
  23. ^ «НАСА достигает целей по сбору данных для марсохода с помощью программного обеспечения с открытым исходным кодом» . opensource.com . Проверено 8 ноября 2012 г.
  24. ^ Railo поддерживает публичный веб-сайт
  25. ^ Использует Railo внутри компании, а также использует CONTENS CMS на базе Railo для создания общедоступных веб-сайтов.
  26. ^ Полномочия Рейло
  27. ^ Полномочия Рейло
  28. ^ «10 лучших сайтов с биткойн-слотами | Лучшее онлайн-казино 2022 года» .
  29. ^ «Магазин расширений Railo открыт! — Блог Railo» . Архивировано из оригинала 3 сентября 2011 года . Проверено 2 октября 2011 г.
  30. ^ «Менеджер расширений — Блог Railo» . Архивировано из оригинала 25 апреля 2012 года . Проверено 2 октября 2011 г.
  31. ^ «Railo 3.1: Создание собственной встроенной функции — блог Railo» . Архивировано из оригинала 7 октября 2011 года . Проверено 2 октября 2011 г.
  32. ^ «Райло 3.0: Ресурсы» . Архивировано из оригинала 25 апреля 2012 года . Проверено 2 октября 2011 г.
  33. ^ «Выпущен Railo 3.0 — Особенности, часть IV — Диспетчер задач, Удаленная синхронизация — Блог Railo» . Архивировано из оригинала 24 октября 2011 года . Проверено 2 октября 2011 г.
  34. ^ «10 лучших сайтов с биткойн-слотами | Лучшее онлайн-казино 2022 года» .
  35. ^ «Кэш (расширенный), часть 2 — Блог Railo» . Архивировано из оригинала 1 марта 2012 года . Проверено 2 октября 2011 г.
  36. ^ «Архив кода Google — долгосрочное хранилище для хостинга проектов Google Code» .
  37. ^ «Использование AntiSamy с ColdFusion» .
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 0fef9344f07ab91b8e10828e19eadff4__1719124140
URL1:https://arc.ask3.ru/arc/aa/0f/f4/0fef9344f07ab91b8e10828e19eadff4.html
Заголовок, (Title) документа по адресу, URL1:
Railo - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)