2013-12-19 5 views
7

폴링 기법에 대해 많이 검색하지만 asp.net mvc에서이 기법을 적용하는 방법을 찾을 수 없습니다. PHP와 아약스에 대한 기사와 문서가 많이 있지만 대부분이 있습니다.ASP.NET MVC에서 긴 폴링 기법을 적용하려면 어떻게해야합니까?

나는이 프로젝트를 두 곳에서 사용하고 싶다. 하나는 트위터 같은 트윗 시스템이고 다른 하나는 채팅 시스템이다. MVC에서이 기술을 적용하는 가장 좋은 방법은 무엇입니까? SignalR을 사용해야합니까? 이것이 최선의 선택입니까?

샘플 또는 문서를 제공 할 수 있다면 좋을 것입니다. 감사합니다.

+1

[SignalR 문서 (HTTPS를 당신은 또한 그것을 테스트하기 위해 데모를 다운로드 할 수 있습니다

https://github.com/AndersMalmgren/SignalR.EventAggregatorProxy/wiki

를 설정하고 학습하는 방법을 여기에서 볼 수 있습니다 : //github.com/SignalR/SignalR/wiki). –

+0

비슷한 질문이 있습니다 (현재 http://tackoverflow.com/q/13905176/575530).하지만 현재의 응답 중 어느 것도 올바른 코드를 제공하지 못하는 동안 (예 : [[ 이 답변] (http://stackoverflow.com/a/13915384/575530) [이 답변] (http://stackoverflow.com/a/13915384/575530) 노트 IIS 설정 문제 및로드 균형 문제에 대해 설명하는 동안 얼마나 오래 폴링은 짧은 폴링으로 또는 심지어는 자체 부인 된 서비스 거부 공격으로 변질 될 수 있습니다!) – dumbledad

답변

9

서버에서 클라이언트로 데이터를 푸시하려면 SignalR을 사용해야합니다. 필자는 덜 잘 지원되고 개발 된 라이브러리를 사용하여 이것을 한 번 해보려고 노력했지만, SignalR 예제를 본 것에서는 내가했던 것보다 훨씬 쉽습니다. asp.net에서 문서와 예제 코드를 읽기 시작하면 비교적 간단합니다.

다음은 서버에서 클라이언트로 푸시하기 위해 필요한 코드의 양을 보여주는 Code Project의 기사입니다. 통신 설립을위한 모든 무거운 닷넷과 자바 스크립트에서 클라이언트에서 서버에 SignalR의 API에 의해 수행되기 때문에

http://www.codeproject.com/Articles/524066/SignalR-Simple-Chat-Application-in-Csharp

이입니다.

+3

링크를 추가하여 응답을 향상시킬 수 있습니다. 아마도 당신은 왜 그것이가는 길인지에 대한 정보를 줄 수도 있습니다. – Silvermind

4

"최상의"해결책은 논란의 여지가 있습니다.이 포럼은 그것에 관한 것이 아닙니다.

실제 피어 - 투 - 피어 통신이 가능하다면 SignalR은 그렇게하지 않습니다. 서버에서 클라이언트로 데이터를 보내고 원격 프로 시저 호출 (RPC)을 수행하도록 설계되었습니다. 서버를 클라이언트에 연결하십시오.

서버를 통해 중앙 허브로 n 방향 통신을 원하는 경우 SignalR을 사용하는 것이 좋습니다. 그것은 입증 된 기술이며 Microsoft의 지원을 받고 있습니다.

Microsoft는 채팅 응용 프로그램을 구현하는 SignalR 2.0 (http://www.asp.net/signalr/overview/signalr-20/getting-started-with-signalr-20/tutorial-getting-started-with-signalr-20) 작업에 대한 자습서를 게시했습니다.