IIS中托管的Web Svc VS远程组件 [英] Web Svc VS remote component hosted in IIS

查看:64
本文介绍了IIS中托管的Web Svc VS远程组件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我面临的当前要求是所有业务对象都是无状态的。

IIS中托管的远程组件。我自己偏爱Web服务。

但是,坚持使用IIS托管的远程服务。他们坚持认为

它更快,更快。我不一定不同意这一点。但是在这种情况下,这是一个负载均衡的Web服务(就像

远程对象一样),虽然技术上比较慢,但仍会有很多问题。

rooma ??。


了解IIS托管的Web服务必须使用HttpChannel,

和我们'我用* .soap扩展名发布它们,我想我会看到

如果我可以通过输入
http:// [server] / [vdir] /remoteObject.soap?wsdl ...这对我的工作很满意

惊喜!


然后我又迈出了一步,打开VS.NET并尝试创建一个Web

参考相关的远程对象。 Web引用对话框找到了WSDL的
,并且像往常一样列出了可用的方法。但是,我无法实现在VS.NET中创建引用的
。我不记得确切但是

似乎是xmlns或某种类型的xml-namespace问题的问题。


话虽如此,我的以上研究似乎在我看来,在.NET的.NET引擎盖下,一个ASP.NET Web服务和一个IIS中托管的远程对象实际上并没有什么不同。 。我怀疑两者之间的表现可能也是不同的。


我很好奇,如果有一种方法,客户可以成功创建了一个

" web reference"在VS.NET中,托管为远程对象的对象,而不是

Web服务。似乎如果可以解决命名空间问题,那么对象可以兼作Web服务和远程对象:非.NET

平台可以调用远程对象作为一个Web服务,和.NET应用程序

可以远程进入它...


这引出了我这个问题:是否有明显的性能

IIS托管的远程对象和Web服务之间的区别?我知道

使用TcpChannels和二进制

格式化程序在exe或WinSvc中托管的远程对象将比Web服务更快。我的问题是严格的

使用Soap格式将Web服务与IIS托管的远程对象进行比较。


提前致谢!

A current requirement I am facing is the all business objects be stateless
remote components hosted in IIS. I am partial to web services myself.
However, it is insisted that IIS hosted remoting be used. They insist that
it is much, much faster. I dona??t necessarily disagree with that point. But
under the circumstances, a web service that is load balanced (as are the
remote objects), though technically slower, would still have a lot of a??head
rooma??.

With the knowledge that IIS hosted web services have to use an HttpChannel,
and that we''re publishing them with a *.soap extension, I thought I would see
if I could pull up a WSDL file by entering
http://[server]/[vdir]/remoteObject.soap?wsdl...and it worked to my pleasant
surprise!

I then went an extra step and opened VS.NET and tried to create a Web
Reference to the remote object in question. The Web reference Dialog found
the WSDL and as usual listed the available methods. However, I couldn''t
actually create the reference in VS.NET. I don''t remember exactly but is
seemed like a problem with the xmlns or some type of xml-namespace issue.

With that said, my above "research" seems to indicate to me that under the
hood of .NET, an ASP.NET web service and a remote object hosted in IIS aren''t
really all that different. I suspect that the performance between the two
probably isna??t all that dissimilar either.

I am curious if there is a way that a client could successfully create a
"web reference" in VS.NET to an object that is hosted as remote object, not a
web service. It seems that if the namespace issue could be resolved, then
the object could double as a web service and remote object: non-.NET
platforms could invoke the remote object as a web service, and .NET apps
could remote into it...

Which leads me to this question: Is there a noticeable performance
difference between an IIS hosted remote object and a web service? I know
that remote object hosted in an exe or WinSvc using TcpChannels and binary
formatter will be faster than web services. My question is strictly
comparing Web Services to IIS hosted remote objects using Soap formatting.

Thanks in advance!

推荐答案

政策就是它们,它可能无法帮助您了解asmx文件中的Web服务

击败所有版本的IIS托管远程处理在大多数的微软的性能比较中。标准网站b / b $ b服务不足的一个领域是处理大的返回值和返回

数据集。在这两种情况下使用soap扩展克服了所有

性能降级,并将基于asmx的Web服务与

TCP / Binary远程处理相提并论! ASP.Net和.Net框架基于asmx
基于
的Web服务进行了优化。


如果你没有通过网络传递数据集(并且没有高性能或

否则性能受限应用)然后基于asmx的Web服务

仍然执行任何版本的基于IIS的远程处理。

这里是完整的报告:

http://msdn.microsoft.com/library/de...tnetarch14.asp

HTH


DalePres

MCAD,MCDBA,MCSE

" JJ" < JJ@discussions.microsoft.com>在留言中写道

新闻:7F ********************************** @ microsof t.com ...
Policies being what they are, it may not help you to know that web services
in an asmx file beat all versions of IIS hosted remoting in most of
Microsoft''s performance comparisons. The one area where standard web
services fell short was in handling large return values and in returning
datasets. Using soap extensions in those two cases overcame all of the
performance degredation and put asmx based web services on a par with
TCP/Binary remoting! ASP.Net and the .Net framework are optimised with asmx
based web services in mind.

And if you don''t pass datasets over the wire (and no high performance or
otherwise performance bound applicatoin should) then asmx based web services
still out perform any version of IIS based remoting.

Here''s the full report:

http://msdn.microsoft.com/library/de...tnetarch14.asp

HTH

DalePres
MCAD, MCDBA, MCSE
"JJ" <JJ@discussions.microsoft.com> wrote in message
news:7F**********************************@microsof t.com...
我面临的当前要求是所有业务对象都是IIS中托管的无状态远程组件。我自己偏爱Web服务。
但是,坚持使用IIS托管的远程服务。他们坚持认为
它更快,更快。我并不一定不同意这一点。
但是在这种情况下,一个负载均衡的Web服务(就像
远程对象一样)虽然技术上比较慢,但仍然会有很多
head
room。

知道IIS托管的Web服务必须使用
HttpChannel,
我们用* .soap扩展名发布它们,我想如果我能通过输入
:// [server] /target =_ blank> http:// [server] / [vdir] /remoteObject.soap?wsdl ...它对我的工作很愉快惊喜!

然后我又迈出了一步,打开了VS.NET并试图创建一个Web
对相关远程对象的引用。 Web引用对话框
找到了WSDL并像往常一样列出了可用的方法。但是,我无法在VS.NET中实际创建引用。我不记得确切,但似乎是xmlns或某种类型的xml命名空间问题的问题。

据说,我上面的研究。似乎在我看来,在.NET的引擎盖下,一个ASP.NET Web服务和一个IIS中托管的远程对象实际上并没有什么不同。我怀疑两者之间的表现可能也不一样。

我很好奇是否有一种方法可以让客户成功创建一个
" ;网络参考在VS.NET中,托管为远程对象的对象,
不是Web服务。似乎如果可以解决命名空间问题,那么该对象可以兼作Web服务和远程对象:非.NET平台可以将远程对象作为Web服务调用,而.NET应用程序
可以远程进入它...

这引出了我这个问题:IIS托管的远程对象和Web服务之间是否存在明显的性能差异?我知道使用TcpChannels和二进制
格式化程序在exe或WinSvc中托管的远程对象将比Web服务更快。我的问题是严格地使用Soap格式将Web服务与IIS托管的远程对象进行比较。

提前致谢!
A current requirement I am facing is the all business objects be stateless
remote components hosted in IIS. I am partial to web services myself.
However, it is insisted that IIS hosted remoting be used. They insist
that
it is much, much faster. I don''t necessarily disagree with that point.
But
under the circumstances, a web service that is load balanced (as are the
remote objects), though technically slower, would still have a lot of
"head
room".

With the knowledge that IIS hosted web services have to use an
HttpChannel,
and that we''re publishing them with a *.soap extension, I thought I would
see
if I could pull up a WSDL file by entering
http://[server]/[vdir]/remoteObject.soap?wsdl...and it worked to my
pleasant
surprise!

I then went an extra step and opened VS.NET and tried to create a Web
Reference to the remote object in question. The Web reference Dialog
found
the WSDL and as usual listed the available methods. However, I couldn''t
actually create the reference in VS.NET. I don''t remember exactly but is
seemed like a problem with the xmlns or some type of xml-namespace issue.

With that said, my above "research" seems to indicate to me that under the
hood of .NET, an ASP.NET web service and a remote object hosted in IIS
aren''t
really all that different. I suspect that the performance between the two
probably isn''t all that dissimilar either.

I am curious if there is a way that a client could successfully create a
"web reference" in VS.NET to an object that is hosted as remote object,
not a
web service. It seems that if the namespace issue could be resolved, then
the object could double as a web service and remote object: non-.NET
platforms could invoke the remote object as a web service, and .NET apps
could remote into it...

Which leads me to this question: Is there a noticeable performance
difference between an IIS hosted remote object and a web service? I know
that remote object hosted in an exe or WinSvc using TcpChannels and binary
formatter will be faster than web services. My question is strictly
comparing Web Services to IIS hosted remote objects using Soap formatting.

Thanks in advance!



为什么有人会使用Remoting的SOAP格式化程序?愚弄防火墙哪个
阻止80上的二进制流量?我认为很少见。如果你正在使用Remoting

机会是它是一个内部应用程序,你或多或少地控制着

防火墙。


我在那些糟糕的低分辨率图形上看到的(以及为什么没有带有

数字的桌子?)是:


图2图1:IIS_HTTP_Binary优于ASMX,最多可达50个用户,

然后是颈部到颈部。

图2图2:IIS_HTTP_Binary非常优于ASMX稍微


图3图1:IIS_HTTP_Binary略高于ASMX,最多可达50个用户,

然后是颈部到颈部。

图3图2:颈部到颈部


图4:IIS_HTTP_Binary在两种情况下都清楚地获胜


图5: IIS_HTTP_Binary在两种情况下都清楚地获胜


图6:IIS_HTTP_Binary在两种情况下都清楚地获胜


IIS中托管的远程处理(使用二进制格式)获胜! IMO文本

围绕图形试图隐藏它... Windows服务主机与

TCP当然是明显的赢家,但我甚至不会考虑因为它本身就是不安全的。


使用IIS中托管的BinaryFormatter进行远程处理是可行的方法。如果你不需要b $ b需要与不同应用程序/平台的互操作性,那就是。


Alexander

DalePres <别 - 叔 - 温泉 - 间 - 我@ LEA-VE-ME-A-孤 - COM>。在消息中写道

新闻:美国************** @ tk2msftngp13.phx.gbl ...
Why would anyone use SOAP formatter with Remoting? To fool firewall which
block binary traffic on 80? Rare case I think. If you''re using Remoting
chances are it''s an internal app and you''re more or less in control of
firewalls.

What I see on that crappy low-res graphics (and why there''re no tables with
numbers?) is:

Fig. 2 graph 1: IIS_HTTP_Binary outperforms ASMX slightly up to 50 users,
then neck-to-neck.
Fig. 2 graph 2: IIS_HTTP_Binary outperforms ASMX very slightly

Fig. 3 graph 1: IIS_HTTP_Binary outperforms ASMX slightly up to 50 users,
then neck-to-neck.
Fig. 3 graph 2: neck-to-neck

Fig. 4: IIS_HTTP_Binary wins clearly in both cases

Fig. 5: IIS_HTTP_Binary wins clearly in both cases

Fig. 6: IIS_HTTP_Binary wins clearly in both cases

Remoting (with binary formatting) hosted in IIS wins! IMO the text
surrounding the graphics is trying to hide it... Windows Service host with
TCP is the clear winner of course, but I wouldn''t even consider it because
it''s inherently insecure.

Remoting with BinaryFormatter hosted in IIS is the way to go. If you don''t
need interoperability with different applications/platforms, that is.

Alexander
"DalePres" <don-t-spa-m-me@lea-ve-me-a-lone--.com> wrote in message
news:uS**************@tk2msftngp13.phx.gbl...
政策就是这样的,它可能无法帮助您了解asmx文件中的Web服务在Microsoft的大多数性能比较中击败了所有版本的IIS托管远程处理。
.... http://msdn.microsoft.com/library/de...tnetarch14.asp
Policies being what they are, it may not help you to know that web
services in an asmx file beat all versions of IIS hosted remoting in most
of Microsoft''s performance comparisons. .... http://msdn.microsoft.com/library/de...tnetarch14.asp



那里没有什么说SOAP只在端口80上使用.IIS监听

端口80,但SOAP可用于任何端口,IIS,Remoting或者你的

如果您愿意,可以使用PC的串口。您可以使用SOAP格式对消息进行编码,

将它们放在软盘上,如果您愿意,可以使用SneakerNet传输它们。


DalePres


" Alexander Shirshov" <人******* @ omnitalented.com>在消息中写道

news:u2 ************** @ TK2MSFTNGP12.phx.gbl ...
There is nothing that says SOAP is used only over port 80. IIS listens on
port 80 but SOAP can be used on any port, on IIS, on Remoting, or over your
PC''s serial port if you wish. You can encode messages with SOAP formatting,
put them on a floppy disk a transport them with SneakerNet if you wish.

DalePres

"Alexander Shirshov" <al*******@omnitalented.com> wrote in message
news:u2**************@TK2MSFTNGP12.phx.gbl...
为什么有人会使用SOAP使用Remoting的格式化程序?欺骗防火墙哪个阻止80上的二进制流量?我认为很少见。如果你正在使用Remoting
那么它是一个内部应用程序,你或多或少地控制着防火墙。

我在那看到的东西糟糕的低分辨率图形(以及为什么没有带数字的表格?)是:

图2图1:IIS_HTTP_Binary优于ASMX,最多可达50个用户,然后从头到尾。
图2图2:IIS_HTTP_Binary非常优于ASMX
































然后从颈部到颈部。
图3图2:颈部到颈部

图4:IIS_HTTP_Binary在两种情况下都能清楚地获胜

5:IIS_HTTP_Binary在两种情况下都清楚地获胜

图6:IIS_HTTP_Binary在两种情况下都清楚地获胜

在IIS中托管的远程处理(使用二进制格式化)获胜! IMO围绕图形的文本正在试图隐藏它... Windows服务主机与TCP TCP当然是明显的赢家,但我甚至不会考虑它因为
它'本质上不安全。

使用IIS中托管的BinaryFormatter进行远程处理是可行的方法。如果您不需要与不同应用程序/平台的互操作性,那就是。

Alexander

" DalePres" <别 - 叔 - 温泉 - 间 - 我@ LEA-VE-ME-A-孤 - COM>。在消息中写道
新闻:美国************** @ tk2msftngp13.phx.gbl ...
Why would anyone use SOAP formatter with Remoting? To fool firewall which
block binary traffic on 80? Rare case I think. If you''re using Remoting
chances are it''s an internal app and you''re more or less in control of
firewalls.

What I see on that crappy low-res graphics (and why there''re no tables
with numbers?) is:

Fig. 2 graph 1: IIS_HTTP_Binary outperforms ASMX slightly up to 50 users,
then neck-to-neck.
Fig. 2 graph 2: IIS_HTTP_Binary outperforms ASMX very slightly

Fig. 3 graph 1: IIS_HTTP_Binary outperforms ASMX slightly up to 50 users,
then neck-to-neck.
Fig. 3 graph 2: neck-to-neck

Fig. 4: IIS_HTTP_Binary wins clearly in both cases

Fig. 5: IIS_HTTP_Binary wins clearly in both cases

Fig. 6: IIS_HTTP_Binary wins clearly in both cases

Remoting (with binary formatting) hosted in IIS wins! IMO the text
surrounding the graphics is trying to hide it... Windows Service host with
TCP is the clear winner of course, but I wouldn''t even consider it because
it''s inherently insecure.

Remoting with BinaryFormatter hosted in IIS is the way to go. If you don''t
need interoperability with different applications/platforms, that is.

Alexander
"DalePres" <don-t-spa-m-me@lea-ve-me-a-lone--.com> wrote in message
news:uS**************@tk2msftngp13.phx.gbl...
政策就是它们,它可能不是帮助您了解asmx文件中的web
服务在Microsoft的大多数性能比较中击败了所有版本的IIS托管远程处理。
Policies being what they are, it may not help you to know that web
services in an asmx file beat all versions of IIS hosted remoting in most
of Microsoft''s performance comparisons.


...


...

http://msdn.microsoft.com/library/de...tnetarch14.asp



这篇关于IIS中托管的Web Svc VS远程组件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆