9장. 동적 프로그래밍 언어, 웹 서버, 데이터베이스 서버
다음 장에서는 RHEL 8과 RHEL 9 사이의 동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버에 대한 주요 변경 사항을 설명합니다.
9.1. 동적 프로그래밍 언어, 웹 및 데이터베이스 서버에 대한 주요 변경 사항 링크 복사링크가 클립보드에 복사되었습니다!
RHEL 9의 초기 애플리케이션 스트림 버전
RHEL 9는 기존 dnf install 명령을 사용하여 RPM 패키지로 설치할 수 있는 초기 Application Stream 버전을 제공하여 Application Streams 환경을 향상시킵니다.
RHEL 9.0에서는 다음과 같은 동적 프로그래밍 언어를 제공합니다.
- Node.js 16
- Perl 5.32
- PHP 8.0
- Python 3.9
- Ruby 3.0
RHEL 9.0에는 다음과 같은 버전 제어 시스템이 포함되어 있습니다.
- Git 2.31
- Subversion 1.14
다음은 RHEL 9.0과 함께 제공되는 웹 서버입니다.
- Apache HTTP Server 2.4
- nginx 1.20
다음 프록시 캐싱 서버를 사용할 수 있습니다.
- Varnish Cache 6.6
- squid 5.2
RHEL 9.0에서는 다음과 같은 데이터베이스 서버를 제공합니다.
- MariaDB 10.5
- MySQL 8.0
- PostgreSQL 13
- Redis 6.2
일부 추가 Application Stream 버전은 향후 마이너 RHEL 9 릴리스에서 라이프 사이클이 짧은 모듈로 배포됩니다.
RHEL 8 이후 Python 에코시스템의 주요 차이점
버전이 없는 python 명령
python 명령(/usr/bin/python)의 버전이 지정되지 않은 형식인 python-unversioned-command 패키지에서 사용할 수 있습니다. 일부 시스템에서는 이 패키지가 기본적으로 설치되지 않습니다. 버전이 없는 python 명령 형식을 수동으로 설치하려면 dnf install /usr/bin/python 명령을 사용합니다.
RHEL 9에서 python 명령의 버전이 없는 형식은 기본 Python 3.9 버전을 가리키며 python3 및 python 3.9 명령과 동일합니다. RHEL 9에서는 버전이 없는 명령이 Python 3.9와 다른 버전을 가리키도록 구성할 수 없습니다.
python 명령은 대화형 세션을 위한 것입니다. 프로덕션에서는 python3,python3.9 또는 python3.11 을 명시적으로 사용하는 것이 좋습니다.
dnf remove /usr/bin/ 명령을 사용하여 버전이 없는 python 명령을 제거할 수 있습니다.
python
다른 python 또는 python3 명령이 필요한 경우 /usr/local/bin 또는 ~/.local/bin 에서 사용자 지정 심볼릭 링크를 생성하거나 Python 가상 환경을 사용할 수 있습니다.
python3-pip 패키지의 /usr/bin/pip 와 같은 다른 몇 가지 버전이 없는 명령을 사용할 수 있습니다. RHEL 9에서 버전이 없는 모든 명령은 기본 Python 3.9 버전을 가리킵니다.
아키텍처별 Python wheel
RHEL 9에 구축된 아키텍처별 Python wheel은 업스트림 아키텍처 이름 지정을 새로 준수하므로 고객은 RHEL 9 에서 Python wheel을 빌드하고 RHEL이 아닌 시스템에 설치할 수 있습니다. RHEL의 이전 릴리스에서 빌드된 Python wheel은 호환 가능하며 RHEL 9에 설치할 수 있습니다. 이는 아키텍처별 순수 Python 코드가 있는 Python wheel이 아닌 각 아키텍처에 대해 빌드된 Python 확장이 포함된 wheel에만 영향을 미칩니다.
perl 과 perl-interpreter 패키지 간의 차이점
RHEL 9에서는 perl 및 perl-interpreter 패키지를 모두 제공합니다. perl 패키지는 GCC를 포함한 종속성의 전체 Perl 업스트림 배포를 포함하기 때문에 개발에 적합합니다. 프로덕션 시스템에서 기본 /usr/bin/perl 인터프리터가 포함된 perl-interpreter 패키지를 사용합니다.
libdb주요 변경 사항
RHEL 8 및 RHEL 9는 현재 LGPLv2 라이센스에 따라 배포되는libdb(Lerkeley DB) 버전 5.3.28을 제공합니다. 업스트림 Berkeley DB 버전 6은 AGPLv3 라이센스에 따라 사용할 수 있으며, 이는 보다 제한적입니다.
libdb 패키지는 RHEL 9부터 더 이상 사용되지 않으며 향후 주요 RHEL 릴리스에서는 사용할 수 없을 수 있습니다. RHEL 9의 libdb 에서 암호화 알고리즘이 제거되었습니다. RHEL 9에서 여러 libdb 종속성이 제거되었습니다.
libdb 사용자는 다른 키-값 데이터베이스로 마이그레이션하는 것이 좋습니다. 자세한 내용은 RHEL에서 더 이상 사용되지 않는 Berkeley DB(libdb)에 대한 지식 베이스 문서 Available replacements for the deprecated Berkeley DB(libdb) 를 참조하십시오.
RHEL 9.2 이후 사용 가능
RHEL 9.2에는 Apache Tomcat 서버 버전 9가 도입되었습니다. Tomcat은 Java Servlet 및 JavaServer Pages 기술을 위한 공식 참조 구현에 사용되는 서블릿 컨테이너입니다. Java Servlet 및 JavaServer Pages 사양은 Sun에서 Java Community Process에 따라 개발했습니다. Tomcat은 공개 및 참여 환경에서 개발되었으며 Apache Software License 버전 2.0에 따라 출시되었습니다.