280 likes | 399 Views
DEV-LANG-300-2. 杨光 项目经理 汪宏 测试工程师 微 软中 国. 使用 WF 4 实现您的流 程 —— 在 Windows Server AppFabric 上,在云端. 议程. WF 4 概述 典 型应用场景 演示 下一代工作 流 疑问和解答. WF 4 概述. 托管环境. 活动. 工作流三要素 活动( Activities ) 运行时( Runtime ) 工具( Tooling ) 在程序 中使用工作流 创 建活 动 使用活动组 建工作流 部署及管理. 活动库. 运行时. 服务. 持久化. 跟踪. ….
E N D
DEV-LANG-300-2 杨光 项目经理 汪宏 测试工程师 微软中国 使用WF 4实现您的流程——在Windows Server AppFabric上,在云端
议程 • WF 4概述 • 典型应用场景 • 演示 • 下一代工作流 • 疑问和解答
WF 4概述 托管环境 活动 • 工作流三要素 • 活动(Activities) • 运行时(Runtime) • 工具(Tooling) • 在程序中使用工作流 • 创建活动 • 使用活动组建工作流 • 部署及管理 活动库 运行时 服务 持久化 跟踪 … 工具 VS 设计器 VS 调试器 移植 设计器
典型应用场景 • 长时间运行的任务 • 人工参与 • 可定制的流程 • 二次定制 • 协调复杂的业务逻辑 • 多个模块/系统之间的交互与集成
应用场景 - 工作流定义 提交 申请 协调员审核 需要修改 批准 经理审核 不需要会签 需要会签 会签 批准 批准 部门经理 审核
应用场景 - 系统结构 ASP.NET Workflow Database
建立你的第一个工作流程序 • 如何建立你的活动? • 如何定义你的工作流? • 如何在数据库中保存你的数据? • 如何将工作流和ASP.NET结合?
演示一 建立你的第一个工作流程序
实现复杂流程 • 如何组合业务逻辑? • 如何实现批复? • 如何实现会签?
演示二 创建复杂流程
部署及管理 • 如何部署你的工作流? • 如何监控你的工作流? • 如何实现和管理长时间运行的实例? • 如何在本地及云上部署及管理? Windows Server AppFabric WindowsAzure
演示三 部署及管理
下一代工作流 • 工具 • C# 表达式 • 注释 • 编译检查 • 查找 • 浏览模式 • 树形图 • 框选 • 自动连接 • 活动 • 状态机 • 数据库 • 邮件 • 运行时 • 工作流身份 • 动态更新
总结 • WF 4非常适合用于实现您的流程 • 工作流服务可以帮助您 • 处理复杂的协作 • 专注于业务逻辑 • Windows Server/Azure AppFabric可以帮助您 • 部署、监控并管理工作流实例 • 在本地和云上 • 下一代工作流 • 更丰富的活动库 • 更强大的运行时 • 更完善的工具
参考资料 • MSDN WF 开发者中心 • WF CodePlex • WF 示例 • PDC10 • 案例分析 • 博客: http://blogs.msdn.com/b/endpoint/ • 播客: http://channel9.msdn.com/shows/endpoint/ • 相关课程 • 微软工作流在企业级开发中的应用DEV-LANG-300-1 16:15 - 17:15 分会场二神州数码
消息关联 Workflow Service 1. 提交请求(RequestId) 2. 初始化关联(Correlation) Receive 3. 发送 Send 4. 审核(RequestId) 5. 使用关联(Correlation) Receive
监控 • 健康监测 • 故障检查 Windows Server AppFabric 监控工具 Workflow Service Host ETW Tracking 数据库 事件收集 服务
持久化 • 稳定性 – 长时间运行 • 可用性 – 实例的恢复 • 可扩展性 – 资源优化 Windows Server AppFabric Workflow Service Host Management Endpoint 持久化 数据库 工作流管理服务 Persistence
工作流实例管理模型 Load Balancer Windows Server AppFabric • Windows • Server • AppFabric Workflow Service Workflow Service Workflow Service Workflow Management Service Workflow Management Service Workflow Management Service Persistence DB Instance 123 | Idle 123 | Active 456 | Active 456 | Idle 789 | Active 789 | Idle 011 | Idle 011 | Active