다중 사용자 웹 응용 프로그램을 보유하고 있으며 제 3 자보고 응용 프로그램이 Oracle 10g 데이터베이스를 쿼리 할 때 문제가 발생합니다.Oracle에서 사용자가 사용하는 리소스를 제한하거나 제한하는 방법이 있습니까?
보고 쿼리로 인해 시스템 속도가 느려지고 다른 모든 사용자에게 영향을줍니다.
쿼리가 다른 사용자에게 영향을주지 않도록이 사용자의 세션을 제한하는 방법이 있습니까?
다중 사용자 웹 응용 프로그램을 보유하고 있으며 제 3 자보고 응용 프로그램이 Oracle 10g 데이터베이스를 쿼리 할 때 문제가 발생합니다.Oracle에서 사용자가 사용하는 리소스를 제한하거나 제한하는 방법이 있습니까?
보고 쿼리로 인해 시스템 속도가 느려지고 다른 모든 사용자에게 영향을줍니다.
쿼리가 다른 사용자에게 영향을주지 않도록이 사용자의 세션을 제한하는 방법이 있습니까?
AFAIK는 일반적으로 장기 실행 쿼리에서는 문제가되지 않는 10g의 CPU를 기반으로 세션을 제한 할 수 있습니다. 가장 유용한 것은 디스크 I/O에 적용되는 제한이며, 이제는 Database Resource Manager의 11g에서 사용할 수 있습니다.
11g의 IO를 기반으로 다른 소비자 그룹으로 전환하는 방법을 알고 있지만 CPU와 마찬가지로 소비자 그룹의 I/O를 제한하는 방법은 없습니다. 내가 놓친 게 있니? –
@Leigh, 당신이 맞는 것처럼 보이지만 적어도 높은 I/O 프로세스를 감지하고 우선 순위가 낮은 그룹으로 전환하거나 원한다면 죽일 수도 있습니다. 그것이 얼마나 효과적인지보기 위해 실험 해 보는 것이 좋을 것입니다. 나의 대답은 10g에 관한 OP의 질문에 더 많은 것이었다. – DCookie
Database Resource Manager을 사용하여 작업 부하를 관리 할 수 있습니다. Oracle documentation 또는 this example from Joel Kallman's APEX blog을 확인하십시오.
사용자가 가질 수있는 동시 사용자 세션 수를 제한 할 수 있습니다. 이 타사 앱의 동시 로그온 수를 제한하면 제 3자가 운영 제한을 준수해야합니다. –