>백엔드 개발 >Golang >Go 애플리케이션에서 글로벌 시간대를 어떻게 안정적으로 설정할 수 있나요?

Go 애플리케이션에서 글로벌 시간대를 어떻게 안정적으로 설정할 수 있나요?

Linda Hamilton
Linda Hamilton원래의
2024-11-30 11:27:11565검색

How Can I Reliably Set the Global Timezone in a Go Application?

Go에서 전역 시간대 설정

Go에서 시간대는 일반적으로 환경 변수 TZ를 통해 설정됩니다. Docker 컨테이너 또는 Bash 작동을 통해 이 변수를 설정하는 동안 다른 방법은 Go 애플리케이션에서 os.SetEnv 함수를 사용하는 것입니다. 그러나 다른 패키지가 이미 시간 패키지에 액세스한 경우 이 접근 방식은 실패할 수 있습니다.

다른 패키지가 시간에 액세스하기 전에 os.SetEnv가 시간대를 설정하도록 하려면 다음 해결 방법을 사용할 수 있습니다.

  1. 시간대 초기화를 위한 패키지 생성:

    별도의 패키지 생성 다음 코드를 사용하여 tzinit라는 이름을 지정합니다.

    package tzinit
    
    import (
        "os"
    )
    
    func init() {
        os.Setenv("TZ", "Africa/Cairo")
    }
  2. 메인 패키지에서 tzinit 첫 번째 가져오기:

    메인 패키지에서 tzinit 패키지를 가져옵니다. 첫 수입으로 설명:

    package main
    
    import _ "path/to/tzinit"
    
    // Other imports

tzinit를 먼저 가져오면 다른 패키지가 time 패키지에 액세스하기 전에 시간대가 설정되도록 할 수 있습니다.

참고:

Go 애플리케이션 내에서 TZ 환경 변수를 설정하는 것은 대부분의 경우 작동하지만 일관되고 결정적인 동작을 위해 Go 앱을 실행하기 전에 이 변수를 설정하는 것이 좋습니다.

위 내용은 Go 애플리케이션에서 글로벌 시간대를 어떻게 안정적으로 설정할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.