라일로
Railo| 개발자 | 라일로 테크놀로지스, 마이클 오프너, 게르트 프란츠 |
|---|---|
| 초기 릴리즈 | 2006년 4월 |
| 안정적 해제 | 4.2.2.005 / 2014년 12월 18일; 전 |
| 리포지토리 | |
| 기록 위치 | 자바 |
| 운영 체제 | Windows, Linux, Unix, MacOS |
| 다음에서 사용 가능 | 영어, 독일어 |
| 유형 | 응용 프로그램 서버 |
| 면허증 | LGPL v2.1 |
| 웹사이트 | github |
흔히 라일로(Lailo,/ˈraɪlolo/RY-loh)로 불리는 라일로 서버는 범용 CFML 서버측 스크립팅 언어를 구현하는 오픈 소스 소프트웨어로, 동적 웹 사이트, 웹 애플리케이션 및 인트라넷 시스템을 만드는 데 자주 사용된다.CFML은 여러 프로그래밍 패러다임을 지원하는 동적 언어로, Java 가상 머신(JVM)에서 실행된다.
라일로는 스위스 회사인 라일로 테크놀로지스 GmbH가 만든 것으로, 어도비 콜드퓨전의 고성능 대안으로 고안되었다.2008년, 라일로는 오픈소스 커뮤니티 주도의 모델로 전환해, JBoss 프로젝트가 되었다.라일로 오픈소스 사업은 라일로 테크놀로지스가 주도하고 있으며, 개발 작업은 컨설팅과 지원 계약에 의해 지원되지만, 누구나 고려를 위해 코드를 기부할 수 있다.
이름 지정
라일로는 스타트랙 엔터프라이즈에서 외계인의 개의 이름을 따서 명명되었다.이 개의 이름은 사실 라일로지만, 독일어로 음성적으로 쓰여진 이름은 라일로다.[1]따라서, 라일은 라임 로 또는 레이 로로 발음될 수 있다 - 둘 다 허용된다.
라일로 주요 개봉작들은 역사에서 주목할 만하고 충실한 개들의 이름을 가지고 있다.
역사
라일로는 2002년 마이클 오프너와 게르트 프란츠가 CFML 코드를 PHP로 편찬하는 학생 프로젝트로 시작했지만, 이는 PHP의 편재성으로 인해 이루어진 선택이지만, 이것이 원하는 성능과 안정성을 제공하지 못하는 것으로 밝혀져 자바 플랫폼으로 전환하기로 결정했다.[1]
그 프로젝트는 충분히 성공적이어서 계속 완제품으로 개발하기로 결정했다.2006년 4월 정식 1.0 출시 이전에 여러 번의 알파와 베타 릴리즈가 이루어졌다.라일로는 계속 개발되었지만 많은 CFML 개발자들에게는 상대적으로 알려지지 않았는데, 2008년 6월 에든버러에서 열린 스카치 온 더 록스 회의에서 라일로 테크놀로지가 데이 2 기조연설을 사용하여 JBoss와의 파트너십과 오픈 소스로의 전환을 발표했다.[2]
2012년 5월 cf에서.객관적인 컨퍼런스는 "The Railo Company Ltd"의 토대인 프라이빗 리미티드 컴퍼니로서, CFML 산업에 종사했던 다른 5개의 회사와 함께 스위스 회사인 Railo Technologies GmbH로 구성되었다.[3]
루체 포크
2015년 1월 29일, 라일로 4.2 코드베이스의 포크인 루체 프로젝트는 라일로에 대해 더 이상 작업하지 않겠다고 밝힌 라일로의 원 개발자에 의해 발표되었다.다른 개발자들 역시 Lucee에만 초점을 맞출 것이라고 확인했으며, (Layo Company에 의해 공식적인 성명은 없지만) Railo 프로젝트에 대한 추가 개발 가능성은 낮다는 것이 지역 사회의 일치된 의견이다.[4][5]
2016년 7월 19일, 라일로 회사는 해체되었다.[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 | 라일로의 첫 베타 릴리즈. | |
| 베타 2 | 2005 | ||
| 베타 3 | 2005 | ||
| RC1 | 2005-09-23 | 라일로의 첫 번째 발매 후보는 뮌헨의 독일 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 | 레일로의 첫 번째 오픈 소스 릴리즈.[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 (토고) | 4.2.0.009 | 2014-05-14 | |
| 4.2.1.000 | 2014-05-21 | ||
| 4.2.2.005 | 2014-12-18 | 현재 안정적 레일로의 해제 |
플랫폼 및 라이센스
Railo는 JVM에서 서블릿으로 실행되며, 모든 서블릿 컨테이너(예: Apache Tomcat, Eclipse Jetty) 또는 애플리케이션 서버(예: JBoss AS, GlassFish)와 함께 작업한다.mod jk, mod proxy, 등가 커넥터 등을 이용해 전방의 웹 서버(예: Apache, IIS, nginx, 체로키)를 연결할 수 있지만, 이는 Railo에 의해 요구되지 않는다.
라일로에는 Apache Tomcat을 번들로 묶은 Linux, MacOS, Windows용 설치 프로그램이 있다.Jetty를 이용하여 미리 구성된 Railo Express 다운로드도 있다.
v4.0 이후부터는 라일로가 명령줄 버전을 탑재해 서블릿 환경 외부에서 CFML을 범용 언어로 사용할 수 있게 된다.[10]
Railo v3.1은 LGPL v2.1로 라이센스가 부여되었으며,[11] 소스 코드는 GitHub에서[12] 사용할 수 있다.
철학
라일로의 1차적인 목표는 자원을 적게 쓰고 더 나은 성능을 제공하는 콜드퓨전의 기능을 제공하는 것이었으며, 라일로 테크놀로지스 팀은 핵심 개발 철학으로서 "느린 것을 버그로 취급"하는 것을 계속한다.많은 성능 테스트에서 Railo는 다른 CFML 엔진보다 더 빠른 성능을 보였다.[13]
이 외에도, Railo는 전통적인 CFML에서 발견되는 많은 불일치들을 해결하려고 시도한다. 이것들은 강제적인 행동 변화 또는 Railo Administrator에서 구성 가능한 옵션이다.
라일로 테크놀로지스 팀은 CFML 커뮤니티 행사에서 항상 피드백에 열려있었고, 사람들에게 라일로가 커뮤니티 프로젝트라는 것을 상기시키기를 열망하고 있다.
라일로 테크놀로지스는 블루리버 인터랙티브 그룹(Mura CMS 개발사), 콘텐스 소프트웨어 GmbH(CONTENS CMS 개발사), 인터그랄 GmbH(FusionReactor, FusionDebug 개발사) 등 CFML 소프트웨어 업체와도 강력한 기술 제휴를 맺어 자사 소프트웨어가 레일로와 잘 작동하도록 돕는다.또한, Railo Technologies는 솔루션(개발), 호스팅 및 교육을 위한 공식적인 "파트너 프로그램"을 제공한다.[14]
사용법
Lailo Application Server는 현재 월평균 7,000건의 다운로드(및 증가)를 기록하고 있다.[15]
Railo는 특히 다음을 포함한 많은 회사에서 사용되고 있다.
- 암트랙 캘리포니아 (캘리포니아 철도회사)
- 애플(소비자 전자 소프트웨어 기업)
- 다이아몬드 뱅크 (나이지리아에 있는 상업은행)
- DistroKid (음악 출판/유통 서비스,[18] Philip J. Kaplan)
- IDG 독일(Computer World, GameStar, PCWorld 잡지 발행자)
- 팬덤리즘([20]음악가를 위한 소셜 네트워크, 필립 J. 카플란)
- NASA 제트 추진 연구소([21]우주 탐사 로봇 센터)
- 더 리스트 (영국 연예 잡지)
- RTL 그룹([23]유럽 2위의 TV, 라디오, 제작사)
- STV Player(스코트식 비디오 주문형 서비스)
- 스위스컴(스위스의 주요 통신사)
특징들
- 상속, 혼합 및 메타클래스를 통해 객체 지향 프로그래밍 지원
- 동적 타이핑 및 덕 타이핑
- 배열 및 구조체에 대한 문자 표기법
- 문자열 내 변수 포함(인터폴레이션)
- 명명된 인수, 선택적 인수 및 기본 인수
- 세 가지 수준의 객체 변수 범위:이(개체 공개), 변수(개체 비공개), 로컬(기능 비공개)
- 다중 전역 변수 범위:요청, 세션, 클라이언트, 애플리케이션, 서버, 클러스터
- 사용자가 제공한 고유한 변수 범위:양식(우편), URL(가져오기), 쿠키, CGI
- (JVM을 통해) 가비지 자동 수집
- (이를 통해) 글로벌 및 로컬 예외 처리
onError그리고try/catch) - 사용자 지정 디스패치 동작(통과)
onMissingMethod및 암묵적 게터 및 세터) - 암묵적 객체 변환(Through
_toString,_toNumeric,_toBoolean,_toDate) [26] - 네이티브 실
- 유니코드, 다중 문자 인코딩 및 i18n 지원
- 대규모 표준 라이브러리, 일반적인 웹 개발 요구 사항 충족
- 추가 소프트웨어 및 확장을 쉽게 설치할 수 있는 Railo Extension Store[27] 및 Extension Manager[28]
- CFML 또는 Java의[29] 기본 플러그인 API
- 웹 서비스를 쉽게 만들고 소비할 수 있는 네이티브 핸들링
- 개별 웹 컨텍스트를 위한 별도의 GUI 관리자 및 글로벌 서버 관리자
- 모든 관리 설정을 프로그래밍 방식으로 구성하거나 XML 구성 파일 편집을 통해 구성
- 모든 기본 제공 파일 시스템 태그 및 기능에 대한 기본 리소스.[30]
- 기존 서버와 클라우드 서버 모두를 위한 클러스터링 및 동기화
- 반복 작업을 예약하거나 실패한 이벤트를[31] 다시 시도하기 위한 작업 관리자
- 최대 절전 모드 ORM에 대한 기본 지원
- 많은 수의 이미지 조작 기능
- 비동기 코드 실행을[32] 위한 이벤트 게이트웨이
- 다양한 캐싱 메커니즘에[33] 대한 기본 지원
- 다음을 포함한 기본 세션 관리(CFML 세션 또는 J2EE 세션)
onSessionStart그리고onSessionEnd방아쇠를 당기다리기 - 사용자 인증 및 역할 기능 내장
보안
CFML은 다음을 통해 코드 주입을 방지하는 기능이 내장되어 있다.cfqueryparam태그, 그리고 다음과 같은 함수HtmlEditFormat,XmlFormat,JsStringFormat. OWASP Enterprise Security API와 [34]AntiSamy 프로젝트의 제3자 CFML 구현도 있다.[35]
Railo의 주요 아키텍처 결정 중 하나는 단일 서버에서 여러 개의 독립적인 웹 컨텍스트를 지원하는 JI 서블릿 모델을 따르는 것이었습니다.이는 (단일 웹 컨텍스트만 있는) 공유 ColdFusion 서버에서 발생할 수 있는 것처럼, 관련 없는 응용 프로그램이 서로 간섭하지 않도록 하기 때문에 핵심적인 보안 요인이다.
구문
Railo는 CFML 언어를 구현한다 - 예는 CFML 구문 섹션과 CFScript를 참조하십시오.
차이점.
다른 언어와의 차이점
CFML은 대부분의 다른 언어와 시각적으로 다른 태그 기반 구문을 가지고 있지만, 이것 외에 다음과 같은 예외를 제외하고 다른 동적 언어와 유사하다.
- CFML은 두 개의 구문, 즉 (XML 호환이 아닌) 태그 기반 구문과 cfscript라고 하는 C-style 구문을 포함한다.
- CFML의 배열은 0이 아닌 1에서 인덱싱된다.
- CFML은 순서와 명명된 함수 인수 또는 조합을 모두 지원한다.
- CFML에는 정적 변수가 없다.
Adobe ColdFusion과의 차이점
Railo는 CFML을 구현하며, 일반적으로 원래의 CFML 엔진인 Adobe ColdFusion(ACF)과 호환되지만, 다음과 같은 몇 가지 차이점이 있다.
- 라일로는 오픈소스 LGPL v2.1 소프트웨어다.ACF는 독점 기술이다.
- Railo는 ACF의 단일 웹 컨텍스트에 비해 다중 웹 컨텍스트 아키텍처를 사용한다.
- Railo는 표준 CFML을 사용하여 "빌트인" 사용자 정의 기능을 만들 수 있다.
- 레일로는 ACF의 암호화 메커니즘으로 암호화된 템플릿을 해독(또는 실행)할 수 없다.
- 라일로는 메이저, 마이너, 패치 릴리즈의 릴리즈 주기가 훨씬 빠르다.
- 라일로에서는 스코프가 항상 우선한다.ACF에서 "Url"이라는 이름의 변수를 생성하면 URL 범위에 대한 액세스가 차단될 수 있다.라일로에서는 변수만 "변수"로 접근할 수 있다.URL".
- Railo는 관리자에 따라 정의된 경우 사용자 정의 태그 경로 내에서만 CFC를 검색한다(대신 고유한 CFC 경로가 있음).
- Railo 4.x는 명령줄에서 CFML 스크립트를 실행할 수 있는 CLI(명령줄 인터페이스)를 도입함
- 라일로는 물체 방법을 사용할 수 있다.따라서 어레이 추가(arr, "value")를 사용하는 대신 arr.append("value").append("anotherValue")를 쓸 수 있다.
참고 항목
- Railo의 Lucee - 포크는 현재 Railo의 원래 개발자들에 의해 지원되고 있다.
- Adobe ColdFusion - 원래의 CFML 엔진.
- Open BlueDragon - 또 다른 Open Source CFML 엔진
- CFML - Lailo가 사용하는 언어.
참조
- ^ a b "Top 10 Best Bitcoin Slots Sites Best Crypto Slot Machines 2021".
- ^ http://www.infoq.com/news/2008/06/railo_jboss
- ^ "Archived copy". Archived from the original on 18 February 2015. Retrieved 17 February 2015.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Railo and Lucee: Hunka Hunka Burning Questions".
- ^ "Lucee".
- ^ "THE RAILO COMPANY LIMITED filing history - Find and update company information - GOV.UK".
- ^ a b "Archived copy". www.railo.ch. Archived from the original on 31 October 2005. Retrieved 15 January 2022.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 30 June 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ http://wiki.getrailo.org/wiki/What%27s_New
- ^ "Archived copy". Archived from the original on 26 September 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 31 October 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ https://github.com/getrailo/railo
- ^ http://cfmlblog.adamcameron.me/2013/08/saving-class-files-in-coldfusion-and.html
- ^ "Archived copy". Archived from the original on 1 October 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 13 January 2013. Retrieved 24 July 2013.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ http://www.amtrakcalifornia.com에서 Railo-powered Mura CMS 사용
- ^ 내부적으로 Railo-powered Mura CMS 사용.
- ^ "Philip kaplan officially launches distrokid". techcrunch.com.
- ^ Railo는 IDG의 독일 웹사이트(예: http://www.computerwoche.de)에 권한을 부여한다.
- ^ "I have 404,772 users. Now what?". News.ycombinator.com. Retrieved 8 November 2012.
- ^ "NASA achieves data goals for Mars rover with open source software". opensource.com. Retrieved 8 November 2012.
- ^ 라일로는 공공 웹사이트 http://www.list.co.uk을 운영한다.
- ^ 내부적으로 Railo를 사용하며, 또한 Railo로 구동되는 CONTENS CMS를 사용하여 공공 웹사이트를 생성한다.
- ^ 라일로 파워 http://player.stv.tv 서비스.
- ^ 라일로 파워 https://io.swisscom.ch 서비스.
- ^ http://wiki.getrailo.org/wiki/TIPS:Implicit_Conversions/wiki/TIPS:Magic_Functions
- ^ "Archived copy". Archived from the original on 3 September 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 25 April 2012. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 7 October 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 25 April 2012. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ "Archived copy". Archived from the original on 24 October 2011. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ http://wiki.getrailo.org/wiki/3-2:Event_gateways
- ^ "Archived copy". Archived from the original on 1 March 2012. Retrieved 2 October 2011.
{{cite web}}: CS1 maint: 타이틀로 보관된 사본(링크) - ^ https://code.google.com/p/owasp-esapi-coldfusion/
- ^ http://www.petefreitag.com/item/760.cfm