1
0
我认为没有现成的解决方案。解决方案取决于您的其他需求。您想控制每个客户机或整个服务器(所有客户机)的带宽吗?要从同一代理调用低优先级操作,还是要为新操作启动新代理?是否要同时运行更多高优先级操作?您想优先处理输入请求吗? 最简单的解决方案是控制每个客户机的带宽,对所有调用都重用相同的代理,同时只能完成一个高优先级操作,并按FIFO顺序处理请求。而不仅仅是用[ServiceBehavior(InstanceContextMode=InstanceContextMode.Persession,ConcurrencyMode=ConcurrencyMode.Single]标记服务实现(这应该是通过net.tcp公开的服务的默认设置)。此设置将对来自同一客户端代理的所有调用重复使用同一服务实例,但一次只处理一个调用(另一个调用将在队列中等待,直到它们被处理或超时为止)。 最好的问候, 拉迪斯拉夫 |
2
0
经过一番推敲(感谢拉迪斯拉夫的深思熟虑),我得出结论,我要求通信层解决business层问题。为了更好地说明问题,存在多个连接和一个数据源。数据源必须区分从其自己的数据源(实时数据流和持久化数据库)收集的数据的优先级,并根据数据源的优先级将数据发送回各个客户机。要清楚,客户机根据其基于角色的身份具有相对优先级,数据源具有优先级(首选实时数据而不是持久数据),数据源中的各个字段具有优先级顺序(其他所有字段都相同,字段x必须始终发送在字段y之前)。 这完全是业务逻辑和我们作为一组优先级队列采用的解决方案,这些优先级队列根据这些优先级要求自动对输入数据项进行排序,然后按顺序服务每个请求。 |
Jason Steve · 实时gps reall需要数据库? 6 年前 |
Naveen Attri · Android实时位置共享 6 年前 |
Amin Ullah · EmguCv实时视频解码中的600毫秒延迟 6 年前 |
Laveena · 连续无限实时流式音频信号,Python 6 年前 |
Malerosa · 如何将数据库链接到我的Android应用程序? 6 年前 |