- Ruby on Rails 8의 첫 번째 베타 버전이 공식적으로 출시
- 이 버전은 Rails 7.2를 기반으로 하여 새로운 기능과 최적화를 도입하여 Rails 개발을 더욱 생산적이고 즐겁게 만듦
- 주요 하이라이트
- Kamal 2와의 통합
- 새로운 기본 자산 파이프라인으로 Propshaft 도입
- ActiveRecord의 광범위한 개선이 포함
- SQLite 통합 업그레이드를 통해 프로덕션 사용에 적합한 옵션으로 만듦
Kamal 2와 Thruster를 통한 간편한 배포
- Kamal 2와 Thruster를 통해 애플리케이션 배포를 간단하게 만듦
- Kamal 2는 클라우드 VM, 베어 메탈 서버 또는 VPS 환경에 빠르고 쉽게 배포할 수 있도록 하여 관리형 클라우드 서비스와 PaaS 플랫폼에 대한 의존성을 줄임.
kamal setup명령어 하나로 표준 Linux 박스에 프로덕션 준비된 Rails 환경을 설정할 수 있음.- 또한, Thruster와 통합하여 무중단 배포, HTTP/2 지원, Let's Encrypt를 통한 자동 SSL, Gzip 압축, 단일 서버에서 여러 앱을 쉽게 호스팅할 수 있음.
Solid Adapters를 통한 간소화된 Rails 배포
- Rails 8의 주요 개선 사항 중 하나는 일반적인 웹 애플리케이션 요구 사항을 구현하는 데 필요한 추가 서비스 수를 줄여 배포를 간소화한 것임.
- SQLite만으로 Solid Cable, Solid Cache, Solid Queue라는 세 가지 새로운 데이터베이스 기반 어댑터를 통해 작업 큐, 캐싱, pub/sub 메시징을 처리할 수 있음.
프로덕션 준비가 된 SQLite
- SQLite를 경량 개발 도구에서 프로덕션 사용에 적합한 신뢰할 수 있는 선택으로 만듦.
- SQLite 어댑터와 Ruby 드라이버에 대한 광범위한 작업 덕분에 SQLite는 이제 Action Cable, Rails.cache, Active Job을 효과적으로 지원할 수 있음.
Propshaft를 통한 새로운 자산 파이프라인 시대
- Propshaft를 새로운 자산 파이프라인 기본값으로 도입하여 오랜 기간 사용된 Sprockets 시스템을 대체함.
- Propshaft는 현대 개발자의 핵심 요구에 맞춰 자산을 관리하는 간단하고 현대적인 접근 방식을 반영함.
간편해진 내장 인증
- 데이터베이스 기반 세션과 비밀번호 재설정 기능을 갖춘 인증 시스템을 간단하게 설정할 수 있는 명령어를 제공함.
- 이 명령어는 모델, 컨트롤러, 메일러, 뷰 등의 주요 파일을 생성하여 안전하고 프로덕션 준비가 된 인증을 빠르게 구축할 수 있도록 함.
새로운 스크립트 폴더와 생성기
- 데이터 마이그레이션, 정리 작업 또는 기타 유틸리티 작업과 같은 일회성 또는 일반 목적 스크립트를 보관할 수 있는 새로운
script폴더를 도입함. - 새로운 스크립트 생성기를 통해 스크립트를 쉽게 생성하고 실행할 수 있음.
다양한 Active Record 개선 사항
- 성능 향상, 마이그레이션 간소화, 문제 해결 개선, 복잡한 데이터베이스 사용 사례에 대한 지원을 제공하기 위해 Active Record에 주요 개선 사항을 도입함.
GN⁺의 정리
- Rails 8은 개발자 생산성을 높이고 현대적인 모범 사례와 일치하는 다양한 업데이트를 도입하여 인프라 복잡성을 처리하는 대신 애플리케이션 구축에 집중할 수 있도록 함
- Kamal과 Thruster를 통한 간편한 배포, Propshaft를 통한 현대적인 자산 관리, SQLite의 프로덕션 준비 기능 등은 Rails 8의 주요 장점임