내가 사용했던 SignalR
내 프로젝트의 여러 실시간 메시징 기능을 달성하기 위해. 안정적으로 작동하는 것 같고 사용법을 익히기가 매우 쉽습니다.
적어도 나에게 유혹은 웹 API 서비스 개발을 포기하고 SignalR
모든 것에 사용 하는 것입니다.
나는 이것이 신중한 디자인으로 달성 될 수 있다고 생각하며, 그렇다면 클라이언트 코드가 훨씬 적게 필요하다는 것을 의미합니다. 더 중요한 것은 분할 인터페이스가 아닌 서비스에 대한 단일 인터페이스가 있으며 최악의 경우 사물이 렌더링되는 시점 에 대해 생각하지 않고이를 연결할 수 있다는 것입니다.
그래서 알고 싶습니다.
- 성능 외에 모든 웹 서비스 대신 SignalR을 사용하지 않는 다른 이유가 있습니까?
- SignalR의 성능이 적절하지 않을 정도로 충분히 관련되어 있습니까?
서버 측 객체 및 서비스 정의를 어리석은 것없이 클라이언트 측 서비스 액세스 코드로 변환 할 수 있다는 것은 오랫동안 꿈이었다 node.js
. 내가 흥미있는 객체 정의 할 경우 예를 들어, InterestingObject
과에 대한 서비스 CRUD
객체를 InterestingObjectService
, 내가 서비스에 대한 표준 URL 경로를 정의 할 수 있습니다 - 말을, "/ {서비스 명} / {methodName로}"-하지만, 난 여전히 액세스 쓰기 클라이언트 코드에 필요 서비스. 객체가 서버와 다시 클라이언트에서 전달 될 것입니다 때문에, 할 실질적인 이유가 없다 가지고는클라이언트 측 코드에서 객체를 명시 적으로 정의하거나 CRUD 작업을 수행하기위한 경로를 명시 적으로 정의 할 필요가 없습니다. 서비스 액세스가 클라이언트에서 서버로 작동하고 WinForms 또는 Java를 작성하는 것처럼 투명하게 다시 작동한다는 가정하에 클라이언트를 작성할 수 있도록이 모든 것을 표준화하는 방법이 있어야한다고 생각합니다. 애플릿 또는 기본 앱 또는 무엇을 가지고 있습니까?
SignalR이 전통적인 웹 서비스 대신 사용하기에 충분할 경우이를 달성하기위한 실용적인 방법 일 수 있습니다. SignalR에는 허브가 내가 설명하는 서비스처럼 작동하도록하는 기능이 이미 포함되어 있으므로이 모든 기능을 기본적으로 제공하는 CRUD (Common Base) 서비스를 정의 할 수 있습니다. 그런 다음 서비스 액세스 권한을 거의 얻었으므로 컨벤션으로 액세스 할 수있는 코드에 다시 코드를 작성하는 번거 로움을 덜어주었습니다. 더 중요한 것은 코드를 작성하는 데 소요되는 시간을 업데이트하는 방법을 정의하는 것입니다 DOM.
내 편집 내용을 읽은 후에는 약간 무의미한 것처럼 느껴지므로 내가받는 것에 대해 궁금한 점이 있으면 언제든지 문의하십시오. 기본적으로 서비스 액세스를 최대한 투명하게 만들고 싶습니다.