微软StockTrader 2.03 学习笔记(3)--配置网站和配置服务在StockTrader中的使用示例

news/2024/5/20 20:10:33/文章来源:https://blog.csdn.net/weixin_30455661/article/details/95385613

     有关配置网站和配置服务在StockTrader 3.0中使用,微软在其提供的配置说明文档中已经做了很详细的说明。基本上是一步一步傻瓜式的阐述的,在这里也就简单的在文档中摘选一下重点简单的做一下记录,理一下整个配置使用过程。

     首先先简单介绍一下StockTrader 3.0中的核心组件构成:

     .NET StockTrader Web application--网站UI主程序

     .NET StockTrader Business Services (hosted in IIS or in the .NET self-host program)--主业务逻辑服务(示例提供了二种实现方式IIS宿主和自宿主)

     .NET StockTrader Order Processor Service--订单处理服务(从属于主业务逻辑服务)

     示例安装以后,默认情况下所有的组件都运行在同一个Asp.net进程中,没有使用任何远程服务调用技术。 但是通过配置网站和配置服务,你可以把它们部署在不同的进程,甚至不同的机器中,从而轻松地实现应用程序的分布式架构。当然处于学习研究的目的,你也可以在同一台机器上,通过利用不同的宿主端口配置也可以模拟整个测试过程。

     以下是微软提供的系统架构图:

            

 

    接下来让我们跟着微软的StockTrader配置使用说明,进一步了解配置网站和配置服务:

    第一步我们首先要登录配置网站,打开安装的ConfigWeb页面,可以看到Login/Logout链接,点击以后我们就可以进入登录界面了。这里需要强调的是一般来说整个系统架构都是通过自上而下进行配置的,通俗点说就是先进入WebAppUI,WebAppUI连接主BSL,主BSL连接其他BSL,可以进一步实现任意的n层体系架构。在登录界面我们需要输入用户名和密码,以及期望的宿主服务终结点,在这里我们选用默认的网站应用程序服务终结点。用户名和密码为安装时的默认的初始用户名Admin和密码yyy,当然你也可以在生产环境配置中修改此用户名和密码,方法是在配置网站上登录需要修改的配置服务,在配置管理主设置界面,点击用户管理(ManageUsers)链接,修改此用户名和密码。

   

      登录以后我们可以看到StockTrader的网站应用程序设置主界面,在这里我们可以看到当前宿主服务的运行状态,如果当前系统已经配置为使用负载均衡,我们还可以看到已经定义的集群节点。当然在这里我们也可以调整各项配置,以满足其他系统需求。默认配置情况下其他业务逻辑服务组件都运行在同一个.net进程中,没有使用任何远程服务调用技术,在页面上使用了*标记出。

      

 

       当然你也可以重新配置StockTrader Web应用程序所使用的主业务逻辑服务,首先让我们来实现使用一个宿主在IIS中的远程主业务逻辑服务组件,通过点击上图用红圈标出的链接,我们可以到达StockTrader Web应用程序配置管理页面。

      

      在整个配置管理页面我们可以看到三个设置组,基本设置、具体设置和高级设置,默认选择在基本设置上。在下面的设置表格中我们可以看到目前系统的当前设置值, 在这里我们需要做的是把StockTraderWebApplication的AccessMode从默认的进程内(InProcess)改为一种远程的业务逻辑服务模式,具体业务逻辑服务模式详细可以参见配置参考文档。我们点击上图红圈标记的链接进入具体设置界面,选择IIS宿主Web服务模式(IISHost_WebService),注意区分大小写。点击更新按钮便激活当前的设置,最后点击Configuration链接返回ConfigWeb主设置页面。

      

      再次进入配置管理主设置页面,我们发现在StockTrader网站应用程序下先前的主业务逻辑服务和订单处理服务没有了,这是因为之前我们已经把所有的业务逻辑服务都改成了远程激活调用导致的,然而现在并没有任何远程服务连接,StockTrader网站应用程序需要连接使用远程服务实例,为了达到此目的我们需要进入连接(Connections)管理界面添加远程连接点。

     

      点击添加连接按钮,你可以看到一个远程服务实例连接列表,服务列表定义在配置管理主设置页面点击编辑定义服务(Edit Defined Services)链接进行设置管理。在这里我们选择最后一个选项,IIS宿主WCF服务类型实例。并把远程宿主连接地址改成你机器安装的地址,保持端口80设置。确认点击添加连接后,点返回按钮返回连接管理界面。

     

    

   

    注意,在连接管理界面我们可以看到有2个连接被添加进去了,这是因为基于2.0的ASMX和3.0的WCF被实现在同一个IIS宿主应用程序中,通过配置服务返回所有的连接类型。然而只有一个是当前被激活并使用的访问模式类型(在页面上用绿色高亮显示),接下来我们通过Configuration链接返回到设置主页面。

   

    在这里我们可以看到出现了一个在线的已连接远程服务配置区,现在你可以使用一个StockTrader网站用户登录到实际的StockTrader网站(不是配置网站),你在此之间的所有操作活动都将发生在远程业务逻辑服务实例中,而不是默认的进程内服务实例。当然你是觉察不到此变化的。

    接下来我们将实现配置业务逻辑服务内部远程调用,通过一个中间第三层订单处理将通过独立的服务实例实现。如何配置订单处理我们将通过配置主业务逻辑服务来实现。这里我们将不再直接使用Web应用程序配置,因为订单处理服务属于业务逻辑服务层的扩展,Web应用程序不能跨层操作,订单处理服务逻辑相对于Web应用程序逻辑是看不到的。

    选择IIS宿主业务逻辑服务实例为首节点,接下来你会看到主设置界面变成了IIS宿主业务逻辑服务实例配置主界面,首节点总是在页面的左侧,而远程连接服务总是在页面的右侧。接下来的配置过程基本上和Web应用程序从新配置并激活远程主业务逻辑相同,不同的是现在将配置IIS宿主业务逻辑实例通过远程调用订单处理服务。

    

    

   

     我们可以通过配置主业务逻辑服务的订单模式来实现这一目的,点击上图红圈的链接进入具体设置界面。主业务逻辑可以有多个不同的订单处理服务模式实例供选择,在订单模式选择栏中选择修改值进入具体修改页面,我们选择Async_Msmq,也就是连接事务性的MSMQ队列服务实例处理模式。点击更新按钮并提示更新成功。注意订单处理服务实例并不宿主在IIS中,是一个独立宿主应用程序,当然我们也可以让它宿主在IIS7以上版本IIS中。在使用StockTrader网站应用程序前,我们首先要确保主业务逻辑服务实例已经连接上了订单处理服务实例,因此首先我们需要先启动订单处理服务宿主应用程序,你可以在示例程序的安装目录下找到Trade.OrderProcessorServiceHost.exe并启动它。

   

   

    在一台未使用过示例的机器上,第一次启动订单处理服务实例会自动创建StockTrader所需的MSMQ消息队列,如果启动的宿主实例的机器没有安装MSMQ Windows组件实例,订单处理服务宿主实例将无法启动(当然如果你真的需要改变订单处理服务宿主的配置设置来忽略此限制,你可以通过service/ConfigWeb来实现)。

   

   

    这样以后,要来实现主业务逻辑服务实例调用远程订单处理服务实例 ,是通过在主业务逻辑服务配置中添加远程订单处理服务连接来实现的。要达到此目的,在配置网站(ConfigWeb)重新回到连接管理界面。在网站应用程序连接管理界面,通过配置系统的中间连接特性我们可以直接进入主业务逻辑服务连接管理界面,通过上图红圈标记的链接进入。

   

    同样点击上图红圈标记的添加新连接按钮,接着你可以看到默认的订单处理业务逻辑连接选项。输入你计算机的名称或地址,订单处理配置服务将通过http在端口9002上监听。点击添加按钮提示操作成功,点返回按钮回到连接管理界面查看活动连接。注意如果你直接点击Connections链接,你将会直接返回到StockTrader网站应用程序连接管理界面,然后你需要重复上述进入过程来查看主业务逻辑服务的活动连接。

   

    在主业务逻辑服务连接管理界面你将可以看到有多个活动连接实例,这是由于订单处理服务宿主同时运行着4个不同协议的服务实例的的缘故。进一步我们可以任意改变OrderMode的设置从而实现主业务逻辑服务实例可以使用(http,tcp,Msmq-transacted queue, Msmq-in-memory-queue) 它们中的任意一种设置。在所有的情形下,订单处理服务不仅仅是远程的,它们还将在主业务逻辑服务中被异步的处理(因为所有的订单处理服务契约都被定义成单向的)。

   

    最后点击配置(Configuration)链接返回到配置网站(ConfigWeb)首页,初始你将重新回到网站应用程序做为首节点的情况下。

   

    通过点击上图红圈标记的链接,你可以选择主业务逻辑服务作为首节点。 主业务逻辑服务在左侧,新添加到远程订单处理服务连接在右侧。 

   

     同样的你也可以更进一步扩展服务层,把订单处理服务实例作为首节点,从而配置它的设置。通过完成以上的配置后,你现在可以使用一个StockTrader网站用户,尝试着去下订单,当然整个订单处理流程将按照你配置的架构来执行。

  1.网站应用程序通过http Web服务同步的提交一个请求到远程IIS宿主主业务逻辑服务实例。

      2.IIS宿主主业务逻辑服务实例在数据库中创建一个订单头信息,并把订单详细信息通过消息机制异步的提交到远程订单处理服务实例,用于处理订单。

      3.订单详细信息消息并没有直接发送给订单处理服务宿主实例,而是通过WCF MSMQ绑定机制实现松散绑定。通过MSMQ自身的特点我们可以MSMQ消息队列部署到其他远程服务器上或者在同一台机器上的其他独立服务宿主实例。

  4.WCF底层基础架构将会自动通知宿主应用程序(Trade.OrderServiceHost.exe),从而触发服务契约方法处理订单。

      5.订单处理服务通过把订单事务性的回放处理,并把处理后结果保存到数据库中。当订单处理完成后在网站应用程序中的用户将会得到通知。

      6.如果数据库部分的处理逻辑失败,分布是事务将会自动回滚,事务性队列中的订单信息也不会丢失。如果事务性队列被强制设置成按序执行,它将在一个延时的机制下被自动重试N次(主要基于WCF服务的绑定设置)。如果还不能被成功处理,它将会自动发送到有害队列中,不会干扰到正常处理,同时也保证消息的不丢失(注意有害队列只在MSMQ4.0版本中才存在)。

转载于:https://www.cnblogs.com/igtea/archive/2009/02/02/1382315.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_791374.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

评估您的网站/博客的价值

http://www.stimator.com/ 这个网站可以对你的网站进行价值评估,可以试一下 转载于:https://www.cnblogs.com/andylaufzf/archive/2009/03/27/1423379.html

[转载]杨建:网站加速--动态应用篇 (上)

原文地址:杨建:网站加速--动态应用篇 (上)作者:iyangjian2005997--提升性能的同时为你节约10倍以上成本From: http://blog.sina.com.cn/iyangjian一, 引子二,总体结构图三,系统结构综述四,环境配置以及底层…

ASP.NET的SEO: 服务器控件背后——SEO友好的Html和JavaScript

本系列目录 假设你需要从一个页面转向其他页面&#xff0c;下面有很多种方式&#xff0c;你是如何选择的呢&#xff1f;你能清晰的说明理由么&#xff1f;<%--链接的表现形式--%><asp:HyperLink ID"HyperLink1"runat"server"NavigateUrl"~/…

Web开发者必须收藏的十大网站【转】

http://article.yeeyan.org/view/158539/110702 对我们这些Web开发者来说&#xff0c;不计其数的网站&#xff0c;其中有些对我们来说是相当有用的工具。在本文中&#xff0c;我汇编了10个顶有用的网站&#xff0c;可以说每个开发者都应当将这些网站存为自己的书签。 Mysql For…

分享12个非常好的免费矢量资源网站

在工作中&#xff0c;Web设计师经常需要到网上查找一些免费资源以更快更好的完成设计任务。这些资源都是到用时方恨少啊&#xff0c;所以今天本文与大家分享12个非常好的免费矢量资源网站&#xff0c;大家可收藏起来备用 :) QVectors Vecteezy Dezignus TutorialBlog Vector Po…

最新30佳精美 PSD 网站模板免费下载

您可能还喜欢 分享45款高质量的免费(X)HTML/CSS模板最新30佳精美 PSD 网站模板免费下载寻找网页设计灵感的27个最佳网站推荐60佳灵感来自大自然的网页设计作品欣赏分享100佳精美的作品集网站设计案例曾与大家分享过45款高质量的免费(X)HTML/CSS模板&#xff0c;今天&#xff0c…

向网页设计师推荐15个很棒的网站

网络上各种各样的社区网站数不胜数&#xff0c;但专注于创意设计的很少。今天这篇文章收集了15个非常好的专注于设计的网站推荐给设计师们&#xff0c;不管是学习先进的设计理念&#xff0c;还是寻找免费资源与工具&#xff0c;这些网站都是很不错的去处&#xff0c;记得推荐和…

网站使用微软雅黑需要版权吗

转自 :http://rpsh.net/archives/font-licensing-for-the-web/ 网站能使用微软雅黑字体吗?是否会构成侵权&#xff1f;微软雅黑有版本吗? 最近做网站,听说雅黑有版权不能用,但是使用了黑体 网站又贼丑无比,惨不忍睹 资深架构师搜了个这个文章, 分享给大家 结论: 在 CSS 中使…

网站压力测试工具-Webbench源码笔记

Ubuntu 下安装使用 1、安装依赖包CTAGS sudo apt-get install ctage 2、下载及安装 Webbench http://home.tiscali.cz/~cz210552/webbench.html 解压&#xff1a; tar -zxvf webbench-1.5.tar.gz 切换到解压后的目录&#xff1a; cd webbench-1.5 编译&#xff1a; make 安装&a…

(转)网站优化:测试网站速度的8款免费工具推荐

网站的加载速度是决定网站成败的重要因素&#xff0c;值得站长特别关注。原因很简单&#xff0c;没有人愿意为了打开一个网页而等老半天&#xff0c;换句话说&#xff0c;如果你的网站打开速度 很慢&#xff0c;将流失大量的访客&#xff0c;甚至出现多米诺效应的不良影响&…

精品欣赏:30个养眼的精美自然风光的网站设计《上篇》

设计师使用精致的充满吸引力的宽屏图片作为背景&#xff0c;给来网站带来一种别样的特色。现在网络上有成千上万的图片可供选择&#xff0c;根据您的设​​计和需求&#xff0c;你可以把普通图像变成一个功能强大的工具&#xff0c;以吸引你的客户。 让我们来仔细看看这些自然景…

thinkphp5.1--快速生成网站首页

打开网站首页&#xff0c;右键选择另存为 把另存的网站首页拖放到phpstorm,复制代码&#xff0c;用JS/HTML格式化工具转换代码格式 将格式化后的网站首页做为项目首页 app\index\controller\Index.php namespace app\index\controller;use think\Controller;class Index ext…

Windows Server 2008 R2中IIS7.5配置完网站权限不足问题的解决办法:

Windows Server 2008 R2中IIS7.5配置完网站权限不足问题的解决办法:常见问题&#xff1a;HTTP 错误 500.0 - Internal Server Error无法显示页面&#xff0c;因为发生内部服务器错误。模块 IsapiModule 通知 ExecuteRequestHandler 处理程序 AboMapperCustom-20607 错误代码 0x…

大型网站系统架构的演化(转)

前言 一个成熟的大型网站&#xff08;如淘宝、京东等&#xff09;的系统架构并不是开始设计就具备完整的高性能、高可用、安全等特性&#xff0c;它总是随着用户量的增加&#xff0c;业务功能的扩展逐渐演变完善的&#xff0c;在这个过程中&#xff0c;开发模式、技术架构、设计…

5首页加载慢_优秀网站制作注意事项 吸人眼球5大妙招

随着建站行业和建站技术的不断发展和深入&#xff0c;在网站制作过程中&#xff0c;如何抓住浏览者的眼球&#xff0c;吸引他们的注意力成为了网页设计师们考虑的核心问题&#xff0c;一个优秀专业的网站&#xff0c;在制作过程中都有哪些注意事项&#xff0c;今天专业的建站公…

生成结合图表_闭着眼也能做出高颜值的Excel图表,你只需这3个网站

今天的推文比较简单&#xff0c;为大家分享3个可以在线制作图表的宝藏网站。欢迎大家在看完之后&#xff0c;在留言区选出你心中觉得最实用的网站&#xff0c;或者跟大家分享你觉得更好用的网站。01. 图表秀全能又方便的在线图表制作神器https://www.tubiaoxiu.com/一款在线图表…

为什么你不应该自行更新 Drupal 网站?

&#xff08;译注&#xff1a;这篇文章主要还是针对于非专业人员及个人Drupal站长&#xff0c;对于专业的 Drupal 团队和公司而言 Drupal 的升级更新都有规范的操作流程&#xff0c;完全是家常便饭&#xff0c;不可能出现文中出现的这些情况。尽管如此&#xff0c;里面也还是有…

网页首页弹框事项通知_保山手机网站注意事项,网站建站_北京佐助信息科技有限公司...

首页 > 新闻中心发布时间&#xff1a;2020-11-12 05:42:42 导读&#xff1a;北京佐助信息科技有限公司为您提供保山手机网站注意事项,网站建站的相关知识与详情&#xff1a; 为了保持网站良好的信息密度 用户体验&#xff0c;在有价值内容的前提下&#xff0c;可以让用户容易…

ECSHOP商城网站建设之自定义调用广告方法(二)

原文地址&#xff1a;http://www.cnblogs.com/zgzy/p/3598991.html 使用ecshop进行商城网站建设时&#xff0c;ecshop默认的很多功能对于我们个性化设计之后不太使用。今天我们主要是来分析如果自定义调用广告位&#xff1a;1.调用单个广告位时我们可以使用&#xff1a;{insert…

刷网站关键字_如何做长尾关键字来提升排名

是不是还有很多的站长朋友在选择关键词的时候放弃了长尾关键词&#xff0c;而是直接将几个主要的关键词放在了主页上面&#xff0c;这样做可能会导致优化无法进行&#xff0c;即使能够优化&#xff0c;转换率也很低。今天八爪网就跟大家分享如果做长尾关键词来提升排名的方法&a…