【AICon】探索八个行业创新案例,教你在教育、金融、医疗、法律等领域实践大模型技术! >>> 了解详情
写点什么

关于 Windows Workflow Foundation 对 PowerShell 3 支持的更多细节介绍

  • 2012-07-01
  • 本文字数:1019 字

    阅读完需:约 3 分钟

前不久,微软发布了关于 Windows PowerShell 工作流更多的一些细节。Windows PowerShell 工作流,也称作 PSWF,它是 PowerShell 3 中的特性,PSWF 可以让管理员“跨越多态机器、设备或 IT 过程可靠地执行长时间运行的任务”。由于我们谈及的是 Windows 工作流,因此这里的“长时间运行”可理解为数小时甚至数天。

虽然针对 PSWF 的工作流可以使用 Windows Workflow Foundation 中相同的 XAML 标记编写,但是大部分 PowerShell 用户可能更倾向于选择新的基于脚本的工作流语法。新语法是 PowerShell 的一个扩展,它增添了如下概念:

  • workflow:用于定义工作流。注意:工作流可以借助它嵌套在其他工作流中。
  • inlinescript:一般情况下,工作流中的每行操作都会分离执行。inlinescript 可以将一组行进行聚合,从而让它们可以共享本地变量。内联脚本块还能够让你使用一些工作流内部不让使用的 PowerShell 语法。
  • foreach –parallel: 并行执行构造体中的每一个条目。
  • parallel:并行执行构造体中的每一项任务,不过不会保证执行顺序。
  • sequence:按顺序执行构造体中的每一项任务。这通常用于并行块内部以构造一组顺序语句。

有一点很重要的是,PowerShell 工作流在许多方面都是完整 PowerShell 语法的子集。与一般的 PowerShell 脚本不同,PowerShell 工作流是静态编译的。这阻止了大量的动态特性,如定位参数与动态参数。另外,工作流需要在任意时刻进行持久化的需求也阻止了点语法调用方法。“这意味着你获得了一个可工作的活动对象,但如果工作流在生成对象调用与使用其方法调用间进行持久化,那么该对象无法工作。”

还有一些 cmdlets 不能作为工作流活动。如前面所述,工作流中的每一行会在自己的独立 PowerShell 会话中执行;因此所有改变 PowerShell 会话状态的 cmdlets 都没有意义。类似的,支持事务的 cmdlets 也在支持范畴之外。

PSWF 的设计以扩展性为主。具体来说,它设计用于向外扩展。一个工作流可以跨越“上千个托管结点“进行分布,这使得管理大型服务器群几乎同管理单台机器一样简单。例如,在若干机器上启动工作流,你只需要使用 PSComputerName 参数及机器名列表即可调用工作流。这些特性替换了普通的 PowerShell 远程处理特性。

长时间运行的工作流在后台运行可能更好一些。为了帮助实现这点,PSWF 集成了 PowerShell 任务基础架构。通过简单地借助 AsJob 参数调用工作流便可以使用常规的任务 cmdlets 了。

查看英文原文: More on Windows Workflow Foundation Support for PowerShell 3

2012-07-01 22:501142
用户头像

发布了 125 篇内容, 共 35.6 次阅读, 收获喜欢 5 次。

关注

评论

发布
暂无评论
发现更多内容

书单|互联网企业面试案头书之程序员技术篇

博文视点Broadview

选择IDaaS解决方案的6个技巧

龙归科技

Idaas

腾讯五面、快手三面已拿offer(Java岗位),分享个人面经

Java架构之路

Java 程序员 架构 面试 编程语言

数据库周刊60丨3月国产数据库排行榜出炉;日本银行数据迁移失败致使业务宕机;阿里云RDS PG13发布;亚健康Oracle数据库故障定位;Redis最佳实践;MySQL查询优化……

墨天轮

MySQL 数据库 oracle 运维 postgre

装在套子里的人

Dc

区块链:热追背后需冷静 技术应用要同步

CECBC

区块链

当跨国企业女职业经理人遇上创业女 CEO,两者会擦出什么样的火花?

科技新消息

谷歌大佬回国发展,吊打各大厂面试官!吐血总结大厂面试高频点及笔记解析

Java架构之路

Java 程序员 架构 面试 编程语言

如果延迟退休势在必行,区块链如何助力“养老助老”?

CECBC

养老

Java面试热门技术框架:Spring Security Oauth2.0认证授权

Java架构追梦

Java spring 面试 金三银四跳槽

场景demo落地 - 视频通话 2.0 ARCall

anyRTC开发者

flutter uni-app android WebRTC RTC

Python3 * 和 ** 运算符

老王说编程

Python3

一场发生在“田间地头”的数字化变革

CECBC

三农

面试看这个就够了!最新BAT大厂面试者整理的Android面试题目模板,先收藏了

欢喜学安卓

android 程序员 面试 移动开发

LeetCode题解:125. 验证回文串,翻转数组,JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

这操作真香!一线互联网企业高级Android工程师面试题大全,面试真题解析

欢喜学安卓

android 程序员 面试 移动开发

从产品经理到产品架构师

博文视点Broadview

【点评必看】这道 Hard 到底难在哪里?大概是难在考察的是违反“人性直觉”的内容吧 ...

宫水三叶的刷题日记

面试 LeetCode 数据结构与算法

产品经路训练营 -- 第四章作业(一)

Lucas zhou

产品经理训练

【LeetCode】删除字符串中的所有相邻重复项Java题解

Albert

算法 LeetCode 28天写作 3月日更

2021年3月国产数据库排行榜:雏凤声清阿里三连 绝代双骄华为合璧

墨天轮

数据库 腾讯云 阿里云 华为云 TiDB

第五.需求评审与产品发布 (承上启下的作用)

让我思考一会儿

如何凝聚党员力量?智慧组工系统构架组织部管理平台解决方案

源中瑞-龙先生

解决方案 党员 智慧组工

为什么我们开发 San 项目时要用 CLI?

百度Geek说

service SLI san command

2021最新发布拼多多/字节/360/网易/面经总结

比伯

Java 编程 程序员 架构 面试

滚雪球学 Python 之 lambda 表达式

梦想橡皮擦

28天写作 3月日更

Kubectl Plugin 推荐(二)| 简化操作篇

郭旭东

Kubernetes kubectl kubectl plugin

能源管理可视化破冰而出,数字孪生打破传统运维僵局

一只数据鲸鱼

物联网 数据可视化 3D可视化 能源管理 智慧电厂

他喵的,Google大佬的这份LeetCode刷题笔记太强了,提升算法能力必备!

Java架构之路

Java 程序员 架构 面试 编程语言

淘宝推荐、视频搜索背后的检索技术:阿里达摩院向量检索Proxima核心能力揭秘

Proxima 技术社区

人工智能 大数据 阿里巴巴 搜索 非结构化数据

LinqToExcel.Extend 源码分析 第二波

happlyfox

28天写作 3月日更

关于Windows Workflow Foundation对PowerShell 3支持的更多细节介绍_DevOps & 平台工程_Jonathan Allen_InfoQ精选文章