
자체 전용 서버에서 실행되는 맞춤형 전자상거래 앱이 있습니다. 모든 상수(예: 데이터베이스 연결, 파일 경로 등)는 단일 _constants.php 파일에 정의됩니다. 전체 코드는 svn에 의해 추적됩니다. (상수 파일을 기대합니다)
이제 우리는 성장하고 있습니다. 저는 전용 mysql 서버와 전용 "공유" 서버가 있는 3개의 서버 부하 분산형 Apache 시스템으로 전환할 예정입니다. 공유 서버는 각 부하 분산 서버에서 심볼릭 링크됩니다. lb1은 마스터이며 public_html 디렉토리를 1분마다 다른 서버로 fsync하도록 설정되어 있습니다.
이제 앱을 새 서버 설정으로 옮기는 작업에 직면했습니다. 질문:
파일 경로 상수. 로드 밸런싱된 서버 각각은 public_html 폴더에 대한 파일 경로가 다릅니다. 여기서 무엇을 해야 하나요? lb1에 대한 코드를 체크아웃하고 상수 폴더를 public_html 외부에 두나요? 어떤 경로에 있는지 알아낼 수 있도록 상수 폴더를 다시 작성해야 합니까?
이미지, 자바스크립트, CSS 등과 같은 모든 "공유" 파일을 공유 서버로 이동하겠습니다. 그런 다음 상수 파일에서 해당 파일을 참조하도록 경로를 변경하겠습니다. 그러나 이러한 공유 파일을 포함한 전체 코드 세트는 하나의 svn 저장소에 포함됩니다. 액세스되는 유일한 파일은 이미지, js 및 css이지만 공유 서버의 전체 코드 기반도 체크아웃할 것이라고 생각했습니다. lb1에서도 마찬가지입니다. 해당 위치에서 그래픽, CSS, gfx를 로드하지 않을 것이라고 생각하더라도 전체 코드 베이스를 확인하십시오. 더 쉽게 만듭니다. 나는 하드 드라이브 공간을 낭비하고 있다는 것을 알고 있지만 이렇게 하면 별도의 svn 저장소를 유지할 필요가 없습니다. 내가 잘못하고 있는 걸까? 다른 더 좋은 방법이 있나요?
solr을 실행하는 Tomcat 서버가 있습니다. 내 호스트는 lb1에서 실행 중이며 1분마다 전체 tomcat 폴더를 rsync하도록 설정했다고 말했습니다. 이게 좋다고 해야 하나?
직원을 위한 관리 인터페이스가 있습니다. 그들은 제품을 변경하고 주문을 처리하기 위해 로그인합니다. 작업을 수행하기 위해 항상 lb1을 가리키는 하위 도메인을 설정해야 합니까?
모든 로그 파일이 공유를 가리키도록 할 계획입니다. 좋은 것 같나요?
크론 작업. 마스터 크론 작업이 있습니다. db 및 로그 파일에 적중하는 코드를 실행합니다. 나는 이것을 공유 서버에서만 실행할 것이라고 생각합니다. 따라서 전체 코드 기반을 공유 서버에 두는 또 다른 좋은 이유입니다. 어떻게 들리나요?
내가 알아야 할 다른 "모범 사례"는 무엇입니까?
이 질문을 할 수 있는 더 좋은 곳이 있으면 알려주시기 바랍니다.
미리 감사드립니다.