2012-04-21 6 views
0

Codeigniter 프레임 워크로 새 웹 사이트를 개발하는 중입니다. 중요한 점은 관리자 패널에서 구성 할 수있는 대부분의 것들을 갖고 싶습니다.구성 데이터 저장 - 어떤 방법으로?

데이터를 저장하는 데 많은 경험이 없으므로 PHP 구성 파일 또는 MySQL 테이블이 더 나아질 것입니다.

상당히 많은 양의 구성이 있으므로 가능한 한 빨리 액세스하고 싶습니다. 예를 들어 MVC의 모델을 예로 들자면 아무도 내가 도우미와 동일한 작업을 수행 할 수 없다고 말했습니다 (PHP 구성 파일) ... 그래서 그것은 모든 것이 어떻게 될지에 달려 있습니다 : 더 빠르게 액세스 할 수 있고 업데이트하는 것이 좋습니다. 필자가 생각하기에 약간의 쿼리가 필요하기 때문에 MySQL은 더 나은 선택이 될 것입니다.하지만 대부분의 사람들은 이런 종류의 것들과 관련하여 훌륭한 경험을 가지고 있습니다.

+1

1) 단일 웹 사이트, CodeIgniter 구성 (또는 MediaWiki, Bugzilla 또는 기타 프레임 워크 구성) - "local .ini"에 투표합니다. 2) 응용 프로그램 별, 사용자 별 구성/기본 설정 : 데이터베이스. 멀티 사이트 구성을위한 3) : 다시 데이터베이스. IMHO ... – paulsm4

답변

3

저는 애플리케이션이 어떻게 구성되어 있는지에 달려 있다고 생각합니다. 얼마나 많은 인스턴스를 실행하고 (수평 확장을 위해) 얼마나 자주 값이 변경 될 것으로 기대하십니까?

pro에는 모든 인스턴스에서 일관된 구성 데이터 마스터가 있습니다. 한 곳에서 변경하면 모든 인스턴스에서 변경됩니다. 런타임 중에 변경하거나 응용 프로그램을 재배포해야 할 수도 있습니다. con은 데이터베이스에서 구성 데이터를 가져 오는 추가 복잡성 (처음에는 서버를 설정하는 것은 말할 것도 없음)이며 또 다른 실패 지점입니다.

반면에 구성 파일을 사용하는 것이 훨씬 쉽고 값을 자주 변경하지 않거나 하나의 서버 만 가질 필요가있는 경우에 적합 할 수 있습니다. 단점은 여러 대의 서버가있을 때 수십 또는 수백 대의 서버에 구성 파일을 배포하고 관리하는 것이 어려워지는 것입니다.

3

- 사용자 인터페이스가 필요합니까? 그렇다면 데이터베이스에 저장하십시오. 그렇지 않으면 은 확실히을 PHP 구성 파일에 저장합니다. 장점이 있습니다

  • 더 빠르지
  • 그것은 쉽게
  • 그것은하지만, 당신은거야, 당신은 설정에 대한 관리 패널의 일종을하는 경우

을 변경 실제로 쉽게 PHP에서 PHP 설정 파일을 업데이트하는 것이 일반적으로 어렵고 나쁜 생각이기 때문에 데이터베이스에 저장하고 싶습니다.

2

MySQL 데이터베이스를 사용하면 데이터의 유연한 부분을 저장하는 것이 분명합니다. 또한 Codeigniter의 활성 레코드 라이브러리 (http://codeigniter.com/user_guide/database/active_record.html)를 사용하면 MySQL 데이터베이스를 훨씬 쉽게 처리 할 수있을뿐 아니라 쿼리를 안전하게 처리 할 수 ​​있습니다. 몇 개의 데이터 만 저장해야한다면, PHP 설정 파일이 수용 가능한 해결책이 될 것입니다.하지만 관리자 패널을 만들려면 반드시 MySQL 데이터베이스를 사용하십시오.

2

codeigniter에는 적절한 구성 메커니즘이 있습니다. 모든 구성을 application/config/config.php 파일에 넣을 수 있습니다. codeigniter 프레임 워크는 코드를 가장 효율적으로 제공합니다.

설정은 나중에 사용자/관리자가 관리 할 것으로 생각되면 데이터베이스에 저장해야합니다. 데이터베이스에 대한 모든 여행에는 비용이 있다는 점을 기억하십시오.값을 캐싱하여 해당 비용을 충당 할 수 있지만 실제로 필요한 경우 사용자 지정 구성 솔루션으로 이동하십시오.

관련 문제