응용 프로그램 범위에서 로컬 XMPP 서버에 대한 연결을 만들고 저장하는 응용 프로그램을 지금 개발 중입니다. 연결 방법은 cfc에 저장되어 Application.XMPPConnection이 사용될 때마다 연결되고 권한이 부여되며 연결을 사용하여 사용자에게 라이브 이벤트를 보냅니다. 내가 알 수있는 한, 이것은 잘 작동하고 있습니다. 그러나 그것은 어떤 종류의 스트레스에서도 시험받지 못했습니다.큰 개체 (예 : Java 구성 요소)를 Application 변수에 저장해도 괜찮습니까?
내 질문 : 이 설정으로 인해 나중에 문제가 발생합니까? 이런 식으로 응용 프로그램 변수를 사용하는 다른 사람들의 증거를 찾을 수 없기 때문에 나는 묻습니다. 난 레일을 사용하지 않았다면 대신 CF의 이벤트 게이트웨이를 사용하여 동일한 작업을 수행 할 것입니다.
답장을 보내 주셔서 감사합니다. 내가 개체에 액세스하는 여러 스레드의 시나리오를 고려해야 할 수도 있습니다,하지만 그 방법은 바로 지금은 꽤 좋은 생각합니다. Application 범위에 저장되고 모든 사용자가 공유하는 유일한 객체는 (Smack 라이브러리에 의해 생성 된) XMPP 연결 객체입니다. 아주 빠른 xmpp 명령을 로컬 오픈 파이어 서버에 보내야합니다. 이 경우 태그가 도움이 될까요? –
대기중인 500 개의 요청이 단일 연결이 해제 될 때까지 기다리는 것을 상상해보십시오. (cflock을 사용하는 경우.) 다양한 요인에 따라 큰 병목 현상이 발생할 수 있습니다. –
CFLOCK을 사용하지 않더라도 (대부분 outmoded) CF는 MX (6) 이후 스레드로부터 안전합니다. 동일한 데이터 위치를 읽는 다중 스레드는 대기 할 필요가 없지만 호출 함수로 인해 대기열에 들어갑니다. 적어도 그것은 그것이 나의 이해입니다. –