科技行者

行者学院 转型私董会 科技行者专题报道 网红大战科技行者

知识库

知识库 安全导航

至顶网软件频道基础软件服务器的快速应用程序开发

服务器的快速应用程序开发

  • 扫一扫
    分享文章到微信

  • 扫一扫
    关注官方公众号
    至顶头条

Visual Studio .NET将显著地减小创建网络应用程序的复杂性。创建成功的网络应用程序的关键是集中于中间层......

作者:佚名 来源:Microsoft 2007年11月5日

关键字:

  • 评论
  • 分享微博
  • 分享邮件
服务器资源

  确保消息传输和交叉平台通信

  Microsoft Message Queuing使得开发人员可以快速、可靠和非同步的通过发送和接收消息来与应用程序通信。

  MSMQ 提供:

  · 创建与分布用户连接的应用程序的能力-例如当销售事务在远端进行时。
  · 确保为股票经纪人的传输,例如,如果他们的订单登录应用程序丢掉了哪怕一个订单他们也会失去上百万美圆。
  · 同时执行处理多个请求的工作。
  · 自动记录你的行为,这对于保持审计过程和恢复数据是很好的。
  · 连接到IBM MQSeries,它实际上运行在从主机到AS/400的每个平台上。

  开发人员需要能发送和接收消息,创建和删除消息队列,并且管理那些队列。在Visual Studio 地下一个版本中,服务器浏览器和MSMQ部件简化了这些任务。
  通过从服务器浏览器中把消息队列拖到一个部件中,消息队列和消息的默认数据允许开发人员用一行代码发送简单的消息。

mq.Send "Hi Mom"
接收一条消息也是很简单的。

message = mq.Receive

  开发人员在对Visual Studio .NET 中的MSMQ编程时有两种选择:
  1. 为了发送一条消息,你需要把一个消息和一个Message Queue结合起来。这个对象允许开发人员直接和队列交谈并且尽量有效地发送消息。
  2. 简单地把一个已经存在的队列拖动到一个部件来开始直接对它编程。或者在Visual Studio中直接创建、删除和重新命名队列。
  下一步是提供要被发送的数据。用户可以在消息队列中调用发送方法,而数据将被发送到特定的队列中。

Dim mq as new MessageQueue ("\\MyMachine\Queue1")
mq.Send "This is the message"
mq.Send 7
mq.Send myOrder
Message Queue部件将从变量中得到数据,把它放到消息中,然后把信息发送到特定队列中。

  把应用程序错误写到共享的应用程序事件日志中

  Applications for Microsoft Windows NT? 和Windows 2000 照例把警告和错误记录到事件日志中。事件记录为Windows和应用程序提供了一个标准的方法来记录重要的软件和硬件事件。事件日志支持标准的用户界面来查看记录和一个编程界面来检查记录。
  在Visual Studio .NET中,开发人员可以把一个事件记录从服务器浏览器拖到一个部件中,并且编写应用程序指定代码来阅读和写入事件日志。
  也可以创建和编写自定义事件日志。为了做这个,只要把事件记录部件从工具箱中拖出并且为这个记录指定一个唯一的名称,而这个日志就自动创建了。
  最后,你可以在一个条目被写到日志中时运行代码。例如,当一个错误条目被写到应用程序日志中时,一个管理员就将被呼叫。
  把应用程序错误写到一个共享的应用程序事件日志中或确定一个部件在预定的时间和预定的任务启动的部件的时间。
  在预定的时间运行部件对商业用户来说是重要的请求。按计划运行商务。在每个工作日结束的时候书都要被合上。每月都要进行审核。每个早晨都要得到细节报告来进行分析。这些都是自动发生的预定任务的例子。
  很多年来,Visual Studio 已经使创建执行和运行在Windows操作系统的部件变得简单。现象Visual Studio允许你创建可以预定在预定时间和时间间隔运行的应用程序和部件。
  例如,一连串零售存储也许会使用预定时间的部件。在商务关闭的时候,商店数据库的内容必须被传送到总部。一个预定时间的部件在某个预定时间在每个商店运行。预定的部件查看当天的新销售,对它们打包,并且把它们送到总部。另外,在2 A.M.,每个商店实现存货分析。存货数量低于给定的域的项目要向批发商再订货。
  为了使用预定的部件,从工具箱中把一个Scheduled Event 部件拖到Component Designer 中。一旦ScheduledEvent 称为部件的一部分,你就可以通过在属性窗口中设置属性来对它进行定制。双击部件,并把下面的代码填入,来让它在部件启动时执行:

Public Sub SchdEvent1_OnScheduledEventReceive
(EventSource as Object, e as ScheduledEvent)
'User code goes here…
End Sub

  从任何有性能计数器的网络计算机读取性能特征

  性能监视是俘获和分析性能数据的过程,这些数据是应用程序、服务和 驱动器提供来确定系统瓶颈和系统细调和应用程序性能。Windows 2000 和 Windows NT通过性能计数器和应用程序Performance Monitor来提供了监视系统性能的方法。另外,Performance Monitor可以在超域或事件发生的时候响应计数器的计数数值。例如,一个事件可以被写到事件日志忠或计算机可以被关闭。
  Visual Studio .NET将提供一个可以轻松创建新计数器的部件,并且对任何性能 计数器进行数据的读写。这些部件的一个用处就是报告每分钟执行的命令的数量。一个商业对象有一个属性,它可以在配置了打开或关闭多长时间运行一条命令的定时后被修改。当这里有繁重的系统加载而通过量看起来被减少了的时候,系统管理员可以打开这个工具并且使用Performance Monitor来确定应用程序运行得如何。如果系统管理员发现系统出于一种繁重的加载状态下,而应用程序不能足够迅速地处理命令,资源就可以被重新定位到起始时的性能。
  为了使用Performance Counter部件,简单的从服务器浏览器中把它拖到一个部件中并且双击它来编写应用程序指定代码。

  当文件系统改变时激活目录查看器

  一个今天使用的公共商业工作是编写长时间运行应用程序,它查看文件更改来开始一个商业过程。使用Visual Studio .NET Directory Watcher 部件,为这项工作创建一个更为有效的部件是简单的。部件监听系统目录更改通告并且当一个目录中的目录或文件变化时激活一个事件。

  开发人员如何使用这个部件的一个例子是File Transfer Protocol (FTP)。想象一个基于网络的新闻站点建立在一个FTP服务器上。世界各地的新闻记者都可以向FTP服务器上载他们的故事。当一个新故事到达FTP目录时,Directory Watcher 部件就会通过电子邮件通知编辑。

  简单地把Directory Watcher部件从工具箱中拖出然后设置属性来确定这个部件应该在什么时候启动。这个部件可以在目录被更改、创建或删除和一个文件被添加、重命名或删除时被启动并执行代码。当文件或目录事件发生时,双击部件来编写运行的代码。

  轻松建立并设置基于服务器的应用程序

  全部系统管理员都面对配置分布应用程序的基础并且在它们的声明周期中管理它们的任务。部件开发人员和解决方案综合者要为系统管理员和其他开发人员提供足够的信息来使应用程序配置变得简单。在一个分布式应用程序模型中,目标是使为部件开发人员和综合人员提供设置信息足够简单,而不用让管理员牺牲模型的有效性。

  配置的目的是简单的传输任何大小的解决方案和项目或从多个平台对其他的多平台进行补充。Visual Studio .NET 配置通过在多平台和计算机上面工作来完成这个。它使得n层设置变得可能(也就是,在一个操作中对多于一个的目标计算机进行设置)。它也易于设置到网络服务器和COM+服务器。

  创建配置所有Windows DNA应用程序层的应用程序

  开发人员经常需要设置所有分布式应用程序的三个层次,通常用多种语言编写。使用Visual Studio下一个版本中的新的配置工具,创建多层配置应用程序很简单。

  使用自定义安装程序来在配置时建立服务器资源

  把应用程序服务器功能补充到在那个服务器中创建了依赖的多层部件。例如,一个开发人员创建了一个部件并把Message Queue 从工具箱中拖放到类中。这个Message Queue 存在于开发人员的计算机。但是当应用程序被配置,如果不是已经存在,这个队列就需要被创建。Visual Studio .NET 包括自定义的安装程序,它确保依懒这个基于服务器的资源的应用程序在配置时被创建。



图3 添加安装程序

  Properties窗口有一个链接, Add Installer,它当在点击一个新类时被添加到包含Message Queue Installer部件的项目中。Message Queue Installer部件知道关于如何创建一个新Message Queue的细节。

  在它们背设置后使用运行库跟踪来调试应用程序

  跟踪是一种特性,它允许开发人员装备一个应用程序。这样的装备运行开发人员和系统管理员监视所配置应用程序的健康状态,而不用运行一个调试器。(一些时候使用调试器隐藏了问题并且使性能和线程的问题不明显。)跟踪是对分布多层的应用程序的一个很重要的监视和调试工具。这样的应用程序可以包含只能在一个应用程序在繁重地加载和在真实生活环境中存在地随机情况时被发现。
  理想情况下,开发人员可以把跟踪装备添加到他们的产品代码中而只有最小的负担(最多影响性能和大小的百分之十或十五)。当系统不能安装预期实现时,他们可以在系统启动和运行时为他们的产品代码打开跟踪,并且确定问题。跟踪使得开发人员隔离问题并且不用干扰运行的系统就可以进行修改。

  在配置后动态属性改变了应用程序的功能性

  与网络应用程序产品相关的一个最普遍的问题是开发人员需要在站点运行时改变应用程序的行为。Visual Studio .NET 提供了创建一个可以在应用程序配置后还可以修改的动态属性的能力。数据并不是完全定死到应用程序中。作为替代,每次应用程序运行时,他们在运行时从一个Extensible Markup Language (XML)文件找回。开发人员可以轻松地对这些文件进行修改来改变应用程序的行为,而不用必须编写、编译和配置新代码。
一旦应用程序被设置,并且当应用程序在运行时,动态属性数据就可以被修改。你可以使用例如Notepad 和Visual Studio .NET内建的XML编辑器类的工具来编辑属性和改变属性数据。动态属性的一个例子是对一个数据库的连接字符串。如果应用程序把连接字符串固定到应用程序中,开发人员就将需要在应用程序从开发到测试到产品时重新编译应用程序。通过使属?quot;动态",连接字符串数据可以在应用程序被配置后来修改。在下一次应用程序运行的时候,新的数据将被使用,因此把应用程序执行另外一个数据库而不用修改源程序。动态属性设置可以被一个项目中的多个属性共享,因此一个共享的连接字符串必须在只有一个位置时更新。

  结论

  Visual Studio .NET为在整个网络中发现XML网络服务、数据库、消息队列、事件日志、性能计数器和其他服务器资源提供了一个中发现机制。加上,它使得开发人员可以把这些服务器资源直接拖动到"可视类"中,来开始用一种图形化的方法编程。相当简单,这意味着Visual Studio .NET使得可以为服务器进行快速应用程序开发。
  分布式网络应用程序可能会难以建立和配置。但是,使用Visual Studio 中的新工具,Microsoft提供了集中于分配分布式应用程序的所有层的设置工具。而使用Visual Studio .NET 的新功能性,开发人员可以把快速配置调试和功能性更改创建到他们的应用程序中。

查看本文来源

    • 评论
    • 分享微博
    • 分享邮件
    邮件订阅

    如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。

    重磅专题
    往期文章
    最新文章