2010-07-26 3 views
4

데이터베이스에 넣을 내용과 구성 파일에 넣을 내용을 결정하는 시스템이 좋은 사람이 있습니까?설정 파일과 데이터베이스에 넣는 것 사이를 어떻게 결정합니까?

구성 파일은 PHP 배열이며 mysql 데이터베이스가 있습니다.

예를 들어 설정 파일에 거의 저장하지 않는 것이 5 '행'인 데이터 세트가 거의 없으면 변경됩니다.

나는 누군가가 가지고있는 경우에 나를 선택할 수 있도록 내가 따라야 할 규칙을 찾고있다.

+0

이것은 설정 파일과 데이터베이스를 이해하고 실제로 어떻게 실제로 사용되는지 알고 싶어하는 사용자들에게는 매우 일반적인 질문이라고 생각합니다. 희망 좋은 정보를 얻을. – wshato

답변

2

정말 데이터에 따라 다릅니다. 구성 파일은 응용 프로그램 별 설정에 실제로 사용되는 반면 DB에는 응용 프로그램이 용도를 위해 사용할 데이터가 들어 있어야합니다. 난 항상 사용

+0

+1 : 구성 == 응용 프로그램 별; 데이터베이스 == 응용 프로그램 독립. –

1

config 파일의 경우 프로젝트/프레임 워크의 사용자/개발자가 수정할 수있는 내용을 넣으십시오. 일반적으로 사이트 와이드 변수 및 상수를 저장합니다.

예를 들어 프레임 워크의 사용자가 수정할 필요가없는 것에 데이터베이스를 사용하십시오.

1

하나의 규칙은 다음과 같습니다

는 (관리 역할 포함) 사용자는 이제까지 변경 데이터베이스에 넣어 필요합니다.

0

이것은 다른 무엇보다 선호하는 질문입니다.

구성 정보가 정적 (상대적)이거나 드물게 변경되는 경우 보안 영역의 플랫 파일에 포함시켜야합니다.

변경 될 수 있거나 가변 위치 홀더가 필요할 수도있는 다양한 구성 옵션의 경우 데이터베이스에 저장할 수 있습니다.

5 '행'의 예를 사용하십시오. 나는 평면 ​​파일을 고집 할 것이다.

0

때때로 결정은 프로덕션 환경에서 변경하기 위해 액세스 할 수있는 리소스에 달려 있습니다. 조직의 크기와 복잡성에 따라 프로덕션 구성 파일의 변경 사항을 가져 오려면 엄청난 수준의 관리 승인과 지연 (며칠이 아닐 경우)이 필요합니다. prod 데이터베이스를 변경하는 것은 (비록 특별한 목적으로 만들어진 앱을 사용하는 것보다) 비교적 쉽습니다.

특수 데이터베이스 앱은 사용자 (또는 관리자 사용자)가 데이터를 변경할 수있게하는 데 유용 할 수 있습니다.

또 다른 고려 사항은 데이터가 변경 될 때 앱을 다시 시작 할지를 결정하는 것입니다. 때로는 설정 파일을 변경하면 다시 시작해야합니다. 웹 서버에 따라 달라집니다. 앱을 다시 시작하지 않고 즉시 변경할 수 있기를 원한다면 데이터베이스는 데이터를 저장할 장소입니다.