|
|
1
2
当你说“远程UI”时,我想你实际上是指你有一些操作是在远程服务器上执行的,但是通过API远程调用的。 远程UI意味着userinterface正在服务计算机上运行,用户通过一个投影UI(例如,类似终端服务的东西)与服务交互。 在SOA api中公开服务所做的工作可能是您想要采取的最佳途径。然后,您可以在Winforms、Silverlight、ASP.Net或将来的任何其他应用程序中实现UI。SOA对很多人来说都是如此之多的东西,但我喜欢将其视为系统中的边界点,其中各方都不知道另一方的实现细节。 决定服务的粒度并不总是显而易见的,但是如果您试图考虑您提供给服务消费者的功能,而不仅仅是您目前负责实现的UI应用程序。这些事情当然不是一成不变的,随着事情的发展,你可以重构。单个应用程序可以使用多个服务,因此在这方面没有问题。 在我工作的地方,我们通常先实现功能,然后再考虑安全问题。当然,您的安全需求是特定的,但是您需要考虑诸如所访问的数据的敏感性,或者用户可以通过服务调用的功能。如果该服务在您的网络内部使用或在internet上公开,则可能导致用户尝试恶意行为。例如,业务用户下载VisualStudio副本并创建自己的WCF客户端以造成破坏的可能性很小,但任何事情都是可能的。 |
|
|
2
1
听起来你走对了方向。您的问题本质上与我的问题相同,我设计我的问题的方式与您描述的基本相同-Windows服务承载三个WCF服务(到目前为止)和一个前端应用程序,供用户用于与WCF服务进行本地或远程交互。
如果你没有Juval Lowy的书, Programming WCF Services IDesign.net ,以获取大量免费提供的WCF代码示例。 |
|
|
3
0
我的观点是,对于前端用户界面,基于SOAP的web服务可能会很重,当负载增加时,性能可能会成为一个问题,相反,基于用户REST的前端服务和基于SOAP的业务逻辑和编排服务,以便实现具有良好性能的高度可扩展应用程序。 我认为WCF同时支持SOAP和REST服务,REST服务是轻量级和技术中立的,因为它们基于普通HTTP。 |