- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在创建一个 wcf 服务,我的 wcf 服务现在托管在控制台应用程序中,如下所示
PersonService = new ServiceHost(typeof(PersonService));
PersonService.AddServiceEndpoint(typeof(IPersonService), binding, "http://localhost:5645/PersonService");
PersonService.Open();
然后我使用 ChannelFactory 类使用 wcf 服务;
EndpointAddress endPoint = new EndpointAddress("http://localhost:5645/PersonService");
ChannelFactory<IPersonService> engineFactory = new ChannelFactory<IPersonService>(binding, endPoint);
IPersonService personChannel = engineFactory.CreateChannel();
然后我可以使用这个 channel 来调用一个方法,例如
personChannel.GetPersonById("1");
personChannel.Close();
我的问题是:
如上面的代码所示,服务始终打开,而 channel 在完成工作后关闭。这是保持服务打开的好行为吗?或者我应该打开服务,然后在每次调用时关闭它,考虑到我可能有两个客户端同时调用同一个服务。
请指教。
最佳答案
嗯,你的服务必须保持“开放”——这是你的行话,但实际上“开放”调用会在端口上放置一个监听器。服务器必须保持监听,以便知道客户端何时想要连接到它。如果没有这个,客户端将不会与不监听的服务者交谈。
当您的客户端完成并获得它想要的内容时,它可以终止(关闭)连接并消失,从而节省双方的资源。
这就像打电话一样。必须有人坐在电话旁边“听”电话铃声。客户拿起电话,调用服务热线。服务热线电话响起。该人(正在“听”的人)拿起电话,“连接”(即对话)开始。
当客户完成后,他/她放下电话,连接就结束了。然而,服务热线的接听人员必须继续“监听”新的铃声。
关于.net - WCF 服务应该一直保持打开状态吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5404079/
我有一个在 Android 市场上相当流行的应用程序,它允许数以万计的用户按下一个按钮并向它发出语音命令。然后我就可以做很多不同的事情,比如给他们提供当前的天气预报等等...... 无论如何,我的应用
令人惊讶的是,标题基本上解释了它。我们有一个我们的客户制作的页面,我们正在重新创建该页面。 页面高度会一直增加,直到(我假设是这样)浏览器达到它的极限。我已经尝试过 Firebug 和 W3 验证器,
我是 react-native 的新手,试图创建我自己的组件,但它一直显示一个空屏幕。 这是我的组件代码 class BoxComponent extends Component { cons
我正在为我的 PHP 元素创建一个非常简单的博客,但遇到了一个简单的问题。我无法让我的页眉图像一直 float 。我有一个横幅,左边有一些文字,我有一个 1px 的切片,在可以选择的任何分辨率的宽度上
为什么我可以在另一个 Controller 的 View 中访问一个 Controller 的辅助方法?有没有办法在不破解/修补 Rails 的情况下禁用它? 最佳答案 @George Schreib
我正在使用带有最新 ADT 插件的 Eclipse Kepler SP2。每隔一分钟 Eclipse 就会说“为 Android 4.4.2 加载数据”并阻止我想做的一切。我在不同的文件夹中有几个 E
我是一名优秀的程序员,十分优秀!