저희 가게에서는 12 개의 클라이언트 설치를 위해 몇 가지 WEB/SMS/DB 솔루션을 개발했습니다. 응용 프로그램에는 실시간 성능 요구 사항이 있으며 제대로 작동하기에 충분합니다. 문제는 클라이언트 (프로덕션 서버의 소유자)가 우리가 만들고 배포 한 응용 프로그램의 성능에 문제를 일으키는 사용자 지정에 대해 동일한 서버/데이터베이스를 사용하고 있다는 것입니다. 고객의 사용자 지정클라이언트 수정 사항이 프로덕션 시스템에 미치는 영향을 제한하는 방법
몇 가지 예 :
- 는 쿼리
- 없음 기본 키, 인덱스, 또는 FK 제약에 다른 데이터 유형으로 캐스팅 얻을 열 많은 텍스트 데이터 유형과 큰 테이블 추가
count(*) from table where id = x
을 사용하는 외부 스크립트를 스크립트의 루프에서 사용하여 같은 스크립트에서 나중에 더 많은 쿼리를 작성하는 방법을 결정합니다. 서버 (플래너 최적화하거나 단일 패스에서 모든 것을 할 수없는 대량 작업)- 모든 새로운 코드 파일은 0777 권한
클라이언트는하지 않는으로, 루트가 소유/작성되지 않습니다 제안/비평 잘. 스크립트를 직접 포트/변경하려고하면 이전 코드가 돌아와서 우리가 변경 한 사항을 모두 망칠 수 있습니다! 또는 유스 케이스에 대한 지식이 제한적이기 때문에 기능을 중단하고 변경 사항을 최적화하려고합니다.
제 질문은 리소스를 우리가 만들고 배포하는 것 이외의 다른 쿼리/응용 프로그램으로 어떻게 제한 할 수 있습니까? 이와 같은 시나리오에 실용적인 옵션이 있습니까? 우리는 OSS 솔루션을 갖고 있다는 점에 자부심을 가졌지 만 그것이 책임이되는 것으로 보입니다.
Linux Distos의 범위에서 실행되는 PG 8.3을 사용합니다. 클라이언트는 PHP를 선호하지만 셸 스크립트, perl, python 및 plpgsql은 모두 한 가지 형태로 시스템에서 사용됩니다.