4.9. 동적 프로그래밍 언어, 웹 서버 및 데이터베이스 서버


RHEL 8에서 Python 3.12 사용 가능

RHEL 8.10에는 새 패키지 python3.12 에서 제공하는 Python 3.12와 이를 위해 빌드된 패키지 모음과 ubi8/python-312 컨테이너 이미지가 도입되었습니다.

이전에 릴리스된 Python 3.11과 비교하여 주요 개선 사항은 다음과 같습니다.

  • Python은 일반 클래스 및 함수에 대한 새로운 type 문 및 새로운 type 매개 변수 구문을 도입합니다.
  • 포맷된 문자열 리터럴(f-문자열)은 문법으로 공식화되어 이제 구문 분석기에 직접 통합될 수 있습니다.
  • Python은 이제 GIL(글로벌 인터프리터 잠금)을 통해 고유한 해석별 인터프리터 잠금을 제공합니다.
  • 이제 Python 코드의 버퍼 프로토콜을 사용할 수 있습니다.
  • 보안을 개선하기 위해 SHA1, SHA3, SHA2-384, SHA2-512 및 MD5 암호화 알고리즘의 내장 hashlib 구현은 HACL* 프로젝트에서 공식적으로 인증된 코드로 교체되었습니다. OpenSSL이 제공하지 않는 경우 기본 제공 구현은 폴백으로 계속 사용할 수 있습니다.
  • CPython 의 사전, 목록 및 설정 이해는 이제 인라인으로 표시됩니다. 이로 인해 이해력 실행 속도가 크게 증가합니다.
  • CPython 은 이제 Linux perf profiler를 지원합니다.
  • CPython 은 이제 지원되는 플랫폼에서 스택 오버플로 보호 기능을 제공합니다.

python3.12 스택에서 패키지를 설치하려면 다음을 사용합니다. 예를 들면 다음과 같습니다.

# yum install python3.12
# yum install python3.12-pip

인터프리터를 실행하려면 다음을 사용합니다. 예를 들면 다음과 같습니다.

$ python3.12
$ python3.12 -m pip --help

자세한 내용은 Python 설치 및 사용을 참조하십시오.

Python 3.12 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.

Jira:RHEL-14942

이메일 주소 구문 분석을 제어하는 Python의 새로운 환경 변수

CVE-2023-27043 을 완화하기 위해 이메일 주소의 더 엄격한 구문 분석을 Python 3에 도입하기 위한 이전 버전과 호환되지 않는 변경 사항이 추가되었습니다.

이번 업데이트에서는 새로운 PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING 환경 변수가 도입되었습니다. 이 변수를 true 로 설정하면 이전보다 덜 엄격한 구문 분석 동작이 전체 시스템의 기본값입니다.

export PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING=true

그러나 영향을 받는 함수에 대한 개별 호출은 여전히 더 엄격한 동작을 활성화할 수 있습니다.

다음 콘텐츠를 사용하여 /etc/python/email.cfg 구성 파일을 생성하여 동일한 결과를 얻을 수 있습니다.

[email_addr_parsing]
PYTHON_EMAIL_DISABLE_STRICT_ADDR_PARSING = true

자세한 내용은 Knowledgebase 문서 Mitigation of CVE-2023-27043 introduce stricter parsing of email address in Python에서 참조하십시오.

Jira:RHELDOCS-17369[1]

새 모듈 스트림: ruby:3.3

RHEL 8.10에는 새로운 ruby:3.3 모듈 스트림에 Ruby 3.3.0이 도입되었습니다. 이 버전은 RHEL 8.7에서 배포된 Ruby 3.1 이상의 몇 가지 성능 개선, 버그 및 보안 수정, 새로운 기능을 제공합니다.

주요 개선 사항은 다음과 같습니다.

  • Ripper 대신 새로운 Prism parser를 사용할 수 있습니다. Prism 은 Ruby 언어의 이식 가능하고 오류 허용 및 유지 관리할 수 있는 재귀 descent 구문 분석기입니다.
  • Ruby just-in-time (JIT) 컴파일러 구현인 YJIT는 더 이상 실험적이지 않으며 주요 성능 향상을 제공합니다.
  • potential Regular Expression Denial of Service (ReDoS) 취약점의 영향을 줄이기 위해 clevis p 일치 알고리즘이 개선되었습니다.
  • 새로운 실험 RJIT( pure-Ruby Cryostat) 컴파일러는 MJIT를 대체합니다. YJIT를 생산에서 사용하십시오.
  • 이제 새로운 M:N 스레드 스케줄러를 사용할 수 있습니다.

기타 주요 변경 사항:

  • 이제 Bison.NET 대신 Lrama LALR 구문 분석기 생성기를 사용해야 합니다.
  • 더 이상 사용되지 않는 몇 가지 메서드 및 상수가 제거되었습니다.
  • Racc gem은 기본 gem에서 번들 gem으로 승격되었습니다.

ruby:3.3 모듈 스트림을 설치하려면 다음을 사용합니다.

# yum module install ruby:3.3

이전 ruby 모듈 스트림에서 업그레이드하려면 이후 스트림으로 전환을 참조하십시오.

Ruby 3.3 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.

Jira:RHEL-17090[1]

새로운 모듈 스트림: php:8.2

RHEL 8.10은 PHP 8.2를 추가하여 버전 8.0에 비해 여러 버그 수정 및 개선 사항을 제공합니다.

PHP 8.2 를 사용하면 다음을 수행할 수 있습니다.

  • 열거 (Enums) 기능을 사용하여 가능한 값 중 하나로 제한되는 사용자 지정 유형을 정의합니다.
  • readonly 한정자를 사용하여 속성을 선언하여 초기화 후 속성 수정을 방지합니다.
  • 파이버, 풀 스택 및 인터럽트 가능한 기능을 사용합니다.
  • readonly 클래스를 사용합니다.
  • 여러 새로운 독립 실행형 유형을 선언합니다.
  • 새로운 Random 확장을 사용합니다.
  • 특성에서 제약 조건을 정의합니다.

php:8.2 모듈 스트림을 설치하려면 다음 명령을 사용합니다.

# yum module install php:8.2

이전 php 스트림에서 업그레이드하려면 이후 스트림으로 전환을 참조하십시오.

RHEL 8에서 PHP 사용법에 대한 자세한 내용은 PHP 스크립팅 언어 사용을 참조하십시오.

php 모듈 스트림에 대한 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.

Jira:RHEL-14705[1]

perl-DateTime-TimeZone 모듈의 name() 메서드는 이제 시간대 이름을 반환합니다.

perl-DateTime-TimeZone 모듈이 버전 2.62로 업데이트되어 name() 메서드에서 표준 시간대 별칭에서 기본 시간대 이름으로 반환되는 값을 변경했습니다.

자세한 내용 및 예제는 표준 시간대 이름 및 별칭과 관련된 perl-DateTime-TimeZone API의 지식베이스 문서 변경 을 참조하십시오.

Jira:RHEL-35685

새 모듈 스트림: nginx:1.24

nginx 1.24 웹 및 프록시 서버는 이제 nginx:1.24 모듈 스트림으로 사용할 수 있습니다. 이번 업데이트에서는 이전에 릴리스된 버전 1.22에 비해 여러 가지 버그 수정, 보안 수정, 새로운 기능 및 개선 사항을 제공합니다.

TLS(Transport Layer Security)와 관련된 새로운 기능 및 변경 사항:

  • ssl_session_cache 지시문에서 공유 메모리를 사용할 때 TLS 세션 티켓에 대해 암호화 키가 자동으로 순환됩니다.
  • 메모리 사용량은 SSL(Secure Sockets Layer) 프록시를 사용한 구성에 최적화되었습니다.
  • 이제 resolver 지시문의 ipv4=off 매개 변수를 사용하여 확인하는 동안 IPv4 주소 검색을 비활성화할 수 있습니다.
  • Nginx는 이제 PROXY v2 TLV 프로토콜에 표시되는 TLV(Type-Length-Value) 필드의 값을 저장하는 $proxy_protocol_tlv_* 변수를 지원합니다.
  • ngx_http_gzip_static_module 모듈은 이제 바이트 범위를 지원합니다.

기타 변경 사항:

  • 이제 헤더 행이 내부 API에서 연결된 목록으로 표시됩니다.
  • Nginx는 이제 ngx_http_perl_module$r->header_in() 메서드와 $http_.. , $sent_http_ ..... . . . . . . . . . . . . . . . . . . ngx_http_in() 메서드의 $ r->header _in()로 전달되는 동일한 이름의 헤더 문자열을 연결합니다. $sent_trailer_..., $upstream_http_...$upstream_trailer_... 변수가 있습니다.
  • 이제 수신 소켓의 프로토콜 매개 변수가 다시 정의되면 Nginx에 경고가 표시됩니다.
  • 클라이언트에서 pipelining을 사용한 경우 Nginx는 이제 lingering으로 연결을 닫습니다.
  • 예를 들어, Critical 에서 Informational 까지 다양한 SSL 오류의 로깅 수준이 감소되었습니다.

nginx:1.24 스트림을 설치하려면 다음을 사용합니다.

# yum module install nginx:1.24

이전 nginx 스트림에서 업그레이드하려면 이후 스트림으로 전환합니다.

자세한 내용은 NGINX 설정 및 구성을 참조하십시오.

nginx 모듈 스트림에 대한 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 문서를 참조하십시오.

Jira:RHEL-14714[1]

새 모듈 스트림: mariadb:10.11

MariaDB 10.11은 이제 새 모듈 스트림 mariadb:10.11 로 사용할 수 있습니다. 이전에 사용 가능한 버전 10.5에 비해 주요 개선 사항은 다음과 같습니다.

  • 새로운 sys_schema 기능
  • Atomic Data Definition Language (DDL) 구문
  • 새로운 GRANT.. TO PUBLIC 권한.
  • ADMIN 권한만 별도로 SUPER 및 READ만 읽습니다.
  • UUID 데이터베이스 데이터 유형입니다.
  • SSL(Secure Socket Layer) 프로토콜 버전 3을 지원하려면 MariaDB 서버에 SSL을 올바르게 구성해야 합니다.
  • natural_sort_key() 함수를 통해 자연 정렬 순서를 지원합니다.
  • 임의의 텍스트 형식을 위한 새로운 SFORMAT 함수입니다.
  • UTF-8 문자 집합 및 UCA-14 데이터 정렬을 변경합니다.
  • systemd 소켓 활성화 파일은 /usr/share/ 디렉토리에서 사용할 수 있습니다. 이는 업스트림과 달리 RHEL의 기본 구성의 일부가 아닙니다.
  • MySQL 대신 MariaDB 문자열이 포함된 오류 메시지입니다.
  • 중국어로 사용할 수 있는 오류 메시지입니다.
  • 기본 logrotate 파일을 변경합니다.
  • MariaDB 및 MySQL 클라이언트의 경우 명령줄에 지정된 연결 속성(예: --port=3306)은 이제 tcp,소켓,파이프 또는 메모리 와 같은 클라이언트와 서버 간의 프로토콜 통신 유형을 강제 적용합니다.

MariaDB 10.11의 변경 사항에 대한 자세한 내용은 MariaDB 10.5와 MariaDB 10.11의 주요 차이점 을 참조하십시오.

MariaDB에 대한 자세한 내용은 MariaDB 사용을 참조하십시오.

mariadb:10.11 스트림을 설치하려면 다음을 사용합니다.

# yum module install mariadb:10.11

mariadb:10.5 모듈 스트림에서 업그레이드하려면 MariaDB 10.5 에서 MariaDB 10.11로 업그레이드 를 참조하십시오.

mariadb 모듈 스트림에 대한 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.

Jira:RHEL-3637

새 모듈 스트림: postgresql:16

RHEL 8.10에는 버전 15에 비해 몇 가지 새로운 기능과 향상된 기능을 제공하는 PostgreSQL 16이 도입되었습니다.

주요 개선 사항은 다음과 같습니다.

  • 향상된 대량 로드를 통해 성능이 향상됩니다.
  • libpq 라이브러리에서 연결 수준 로드 밸런싱을 지원합니다. 새로운 load_balance_hosts 옵션을 사용하여 더 효율적인 로드 밸런싱을 수행할 수 있습니다.
  • 이제 사용자 지정 구성 파일을 생성하고 pg_hba.confpg_ident.conf 파일에 포함할 수 있습니다.
  • PostgreSQL은 이제 pg_hba.conf 파일의 데이터베이스 및 역할 항목에 일치하는 정규식을 지원합니다.

기타 변경 사항은 다음과 같습니다.

  • PostgreSQL은 더 이상 postmaster 바이너리와 함께 배포되지 않습니다. 제공된 systemd 장치 파일( systemctl start postgres 명령)을 사용하여 postgresql 서버를 시작하는 사용자는 이 변경의 영향을 받지 않습니다. 이전에 postmaster 바이너리를 통해 postgresql 서버를 직접 시작한 경우 대신 postgres 바이너리를 사용해야 합니다.
  • PostgreSQL은 더 이상 패키지 내에서 PDF 형식으로 문서를 제공하지 않습니다. 대신 온라인 문서를 사용하십시오.

PostgreSQL 사용을 참조하십시오.

postgresql:16 스트림을 설치하려면 다음 명령을 사용합니다.

# yum module install postgresql:16

RHEL 8 내의 이전 postgresql 스트림에서 업그레이드하려면 이후 스트림으로 전환에 설명된 절차에 따라 RHEL 8 버전의 PostgreSQL으로 마이그레이션에 설명된 대로 PostgreSQL 데이터를 마이그레이션합니다.

postgresql 모듈 스트림의 지원 기간에 대한 자세한 내용은 Red Hat Enterprise Linux Application Streams 라이프 사이클 을 참조하십시오.

Jira:RHEL-3636

Git 버전 2.43.0으로 업데이트

Git 버전 제어 시스템이 2.43.0 버전으로 업데이트되어 이전에 릴리스된 버전 2.39에 비해 버그 수정, 개선 사항 및 성능 향상을 제공합니다.

주요 개선 사항은 다음과 같습니다.

  • 이제 git check-attr 명령과 함께 새 --source 옵션을 사용하여 현재 작업 디렉터리 대신 제공된 트리 ish 오브젝트에서 .gitattributes 파일을 읽을 수 있습니다.
  • 이제 Git에서 WWW-Authenticate response-type 헤더에서 인증 정보 도우미로 정보를 전달할 수 있습니다.
  • 커밋이 비어 있는 경우 git format-patch 명령은 빈 파일을 생성하는 대신 커밋 헤더가 포함된 출력 파일을 작성합니다.
  • 이제 git mistake --contents= <file > < revision > -- < path > 명령을 사용하여 < revision >으로 이어지는 기록을 통해 < file > 콘텐츠에서 시작하는 줄의 출처를 찾을 수 있습니다.
  • 이제 git log --format 명령에서 %(decorate) 자리 표시자를 수락하여 추가 사용자 지정을 통해 --decorate 옵션에서 제공하는 기능을 확장합니다.

Jira:RHEL-17103[1]

Git LFS 버전 3.4.1로 업데이트

Git Large File Storage(LFS) 확장이 버전 3.4.1로 업데이트되어 이전에 릴리스된 버전 3.2.0에 비해 버그 수정, 개선 사항 및 성능 향상을 제공합니다.

주요 변경 사항은 다음과 같습니다.

  • 이제 git lfs push 명령에서 표준 입력에서 참조 및 오브젝트 ID를 읽을 수 있습니다.
  • Git LFS는 이제 Git에 의존하지 않고 대체 원격을 처리합니다.
  • Git LFS는 이제 WWW-Authenticate response-type 헤더를 인증 정보 도우미로 지원합니다.

Jira:RHEL-17102[1]

Python 인터프리터의 성능 향상

RHEL 8에서 지원되는 모든 Python 버전은 업스트림의 기본값인 -O3 최적화 플래그를 사용하여 컴파일됩니다. 결과적으로 Python 애플리케이션 및 인터프리터 자체의 성능 향상을 확인할 수 있습니다.

변경 사항은 다음 권고의 릴리스에서 사용할 수 있습니다.

Jira:RHEL-49614[1], Jira:RHEL-49636, Jira:RHEL-49644, Jira:RHEL-49638

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.