2012-08-03 4 views
3

클라이언트로부터 호출을 받아들이고 데이터베이스를 업데이트 한 다음 모든 클라이언트에 알림을 핑하는 기본 신호기 허브를 작성했습니다.신호 성능이 크게 달라지는 이유는 무엇입니까?

public class ElementHub : Hub 
{ 
    public void RenameElement(Guid elementId, string elementName) 
    { 
     //save details of rename 

     //notify clients 
     Clients.elementRenamed(elementId, elementName, DateTime.Now); 
    } 
} 

이 내 개발 시스템에서 완벽하게 작동 - 모든 업데이트 (충분히 근처) 순간입니다 -하지만 난 윈도우 Azure 웹 사이트에이를 게시 할 때 좀 이상한 행동을보고 시작합니다.

게시 후 첫 번째로 허브를 통과하는 알림은 거의 즉각적입니다. 아마도 몇 초 지연 될 수 있습니다. 그러나 의 두번째 알림은 때때로 30 초만큼 지연됩니다!

알림에 서버 타임 스탬프가 포함되어 있으므로 서버가 충분히 빠르게 응답하는지 확인할 수 있습니다. 문제는 아마 운송 수단의 어딘가에있을 것입니다.

나는 signalr을 처음 사용하기 때문에 어디를 봐야할지조차 알지 못한다. 누구든지이 동작을 일으킬 수있는 제안 또는 디버깅 방법을 제안 할 수 있습니까?

+0

하늘색 웹 사이트를 사용하고 계십니까? – davidfowl

+0

@dfowler 예, 무료 평가판을 사용하는 것입니다. –

+0

현재 버퍼링과 관련하여 버그가 있습니다. https://github.com/SignalR/SignalR/issues/510을 참조하십시오. longpolling을 사용하면이 문제를 해결할 수 있습니다. 우리가이 일을하고 있습니다. – davidfowl

답변

6

바로 버퍼링과 Azure 웹 사이트에 버그가 있습니다 (http://github.com/SignalR/SignalR/issues/510 참조). longpolling을 사용하면이 문제를 해결할 수 있습니다. 그 동안에 우리는이 문제를 해결하기 위해 노력하고 있습니다.

관련 문제