운영 측면에서 애플리케이션 구성
Operations here simply means the process of running a software application in any environment like Dev, Test, UAT, Prod, etc.
우선, 여기서 토론하는 것이 어떤 배치인지, 그리고 도전이 무엇인지 알아보자.
문제
구성은 소프트웨어를 수정하지 않고 다음 두 가지 기능을 제공합니다.
구성에는 다음과 같은 두 가지 유형이 있습니다.
#1 일반적으로 엔드 유저가 적절하게 기록하고 관리#2는 다음과 같은 몇 가지 문제가 있습니다.
파일 프로세서에서 다음을 수행합니다.
완화 조치
구성 가능성은 유익하고 필수적이기 때문에 위에서 논의한 문제를 완전히 없앨 수는 없지만, 아래에서 보듯이 더 쉽게 관리할 수 있는 방법이 있습니다. 이것은 상세한 목록이 아닙니다.
로깅 구성
각 매개변수를 구성 파일 자체에 기록하거나 데이터베이스에 열을 추가합니다 (데이터베이스에 저장된 경우).
구성 파일은 다음과 같이 예제를 계속합니다.
# USE: Control transaction mode of the processing.
# EXPECTED VALUE:
# ITEM - Consider each item as one transaction
# FILE - Consider entire file to be one transaction
app.transaction-mode: ITEM
#
# USE: Store original files after processing
# EXPECTED VALUE: Full path to the directory
app.archive-path: <some path>
#
# USE: Store failed files after processing
# EXPECTED VALUE: Full path to the directory
app.failed-path: <some path>
이것은 코드 심사 과정의 일부분으로 코드 심사 과정에서 충분한 문서가 없는 새로운 설정은 받아들여지지 않는다.
이것은 설정값이 필요한 곳에서 무엇을 해야 하는지 누구나 잘 알 수 있도록 보장할 것이다.
구성 우선 순위 지정
많은 프레임워크는 구성에 우선순위를 두어 필요한 구성 템플릿 코드 양을 줄입니다. 모든 MVC 프레임워크는 이러한 모드를 따릅니다.이것은 응용 프로그램 설정에도 적용된다.
위의 예제에서는 구성의 수를 줄일 수 있습니다.
# USE: Control transaction mode of the processing. Set if you want to change Default.
# EXPECTED VALUE:
# ITEM - Consider each item as one transaction
# FILE - Consider entire file to be one transaction
# DEFAULT: ITEM.
# app.transaction-mode: ITEM
#
# USE: Store output files after processing. Program will create Archive, Success, Failed and Log directory under this path.
# EXPECTED VALUE: Full path to the directory
app.output-path: <some path>
감소는 다음 두 가지 관례 때문입니다.
# USE: Control transaction mode of the processing.
# EXPECTED VALUE:
# ITEM - Consider each item as one transaction
# FILE - Consider entire file to be one transaction
app.transaction-mode: ITEM
#
# USE: Store original files after processing
# EXPECTED VALUE: Full path to the directory
app.archive-path: <some path>
#
# USE: Store failed files after processing
# EXPECTED VALUE: Full path to the directory
app.failed-path: <some path>
# USE: Control transaction mode of the processing. Set if you want to change Default.
# EXPECTED VALUE:
# ITEM - Consider each item as one transaction
# FILE - Consider entire file to be one transaction
# DEFAULT: ITEM.
# app.transaction-mode: ITEM
#
# USE: Store output files after processing. Program will create Archive, Success, Failed and Log directory under this path.
# EXPECTED VALUE: Full path to the directory
app.output-path: <some path>
오류 감지 스크립트 / 도구
응용 프로그램이 100s 또는 1000s 데스크톱에서 실행되고 (또는 간단하게 말하면 서버든 데스크톱이든) 이 시스템에 상주하도록 설정하면 문제를 해결하기 어려울 것입니다. 이 시스템에 접근할 수 없고 모든 설정 참수가 정확한지 확인할 수 없기 때문입니다.구성을 스캔하고 문제를 강조 표시할 수 있는 스크립트나 유틸리티가 있으면 작업에 큰 도움이 됩니다.
AWS has a service named AWS Config which can be configured to monitor compliance to a desired configuration of your environment. It will highlight if it detects any violation from the desired state e.g., it is configured to monitor that only port 443 should be open on EC2 Instances so it will raise an alert if it finds some other port open on the server.
컨테이너화 배치 중 배치
용기는 프로그램이 설치된 이미지부터 시작합니다.현재 설정이 응용 프로그램과 함께 이미지에 포함되면 환경이나 설정 변경마다 이미지가 필요합니다.
따라서 구성은 외부화되어야 합니다.흔히 볼 수 있는 패턴은 설정을 저장소,vault,공유 저장소 등에 저장하고 용기에 환경 변수를 설정하여 저장소에 응용 프로그램 접근 파라미터를 제공하는 것이다.
단일 페이지 응용 프로그램의 구성
동적 구성은 SPA에서 간단하지 않습니다. 예를 들어, 특정 환경에서 일부 기능을 전환하려면 SPA를 구축할 때 사용하는 API 노드가 아니라 동적으로 사용해야 합니다.
SPA가 번들로 묶여 있고 로그인 페이지에서 참조되기 때문입니다.브라우저는 서버에서 번들 파일을 읽어들이고 실행하여 SPA를 로드하고 주기를 시작합니다.따라서 SPA는 완전히 클라이언트(즉 브라우저)에서 실행되며 서버나 데스크톱에 설치된 프로그램처럼 설정을 주입할 수 없습니다.
이것article은 각도 측정에서의 문제와 가능한 해결 방안을 설명했다.
결론
관건은 고도의 설정 가능한 소프트웨어를 실행하는 것도 도전일 수 있다는 것이다. 설정 가능성은 자산이 아니라 부담이 될 수 있다.관리 설정도 설계와 개발 기간의 표준이어야 한다.
Reference
이 문제에 관하여(운영 측면에서 애플리케이션 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/pathiknd/application-configuration-from-operations-viewpoint-491p
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
동적 구성은 SPA에서 간단하지 않습니다. 예를 들어, 특정 환경에서 일부 기능을 전환하려면 SPA를 구축할 때 사용하는 API 노드가 아니라 동적으로 사용해야 합니다.
SPA가 번들로 묶여 있고 로그인 페이지에서 참조되기 때문입니다.브라우저는 서버에서 번들 파일을 읽어들이고 실행하여 SPA를 로드하고 주기를 시작합니다.따라서 SPA는 완전히 클라이언트(즉 브라우저)에서 실행되며 서버나 데스크톱에 설치된 프로그램처럼 설정을 주입할 수 없습니다.
이것article은 각도 측정에서의 문제와 가능한 해결 방안을 설명했다.
결론
관건은 고도의 설정 가능한 소프트웨어를 실행하는 것도 도전일 수 있다는 것이다. 설정 가능성은 자산이 아니라 부담이 될 수 있다.관리 설정도 설계와 개발 기간의 표준이어야 한다.
Reference
이 문제에 관하여(운영 측면에서 애플리케이션 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/pathiknd/application-configuration-from-operations-viewpoint-491p
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(운영 측면에서 애플리케이션 구성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/pathiknd/application-configuration-from-operations-viewpoint-491p텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)