新足迹

 找回密码
 注册

精华好帖回顾

· 今年扫海作品 (2016-8-23) joy2joy · 艳丽悉尼---摄影大拼盘 (2010-6-16) sinkai
· 糊里糊涂的买车记, Subaru XV (2013-4-24) Tictac999 · 周末Plasti Dip - GOLF R (2014-5-26) anleizhang
Advertisement
Advertisement
查看: 1691|回复: 12

Advanced distributed system design 培训 [复制链接]

发表于 2012-2-4 09:27 |显示全部楼层
此文章由 清风拂山岗 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 清风拂山岗 所有!转贴必须注明作者、出处和本声明,并保持内容完整
Udi Dahan 四月底来悉尼培训,不知道论坛的XDJM有没有兴趣。LP大人已经批准预算,准备自己掏腰包了。

Advanced Distributed Systems Design using SOA

Duration: 5 days
Introduction

Designing large-scale distributed systems is hard. New technologies make it easier to comply with today’s communications and security standards, but don’t auto-magically give you a robust and scalable system. Join Udi for a course packed with the wisdom of companies like SUN, Amazon, and EBay.

Tried-and-true theories and fallacies will be shown, keeping you from making those same costly mistakes today. Communications patterns like publish/subscribe and correlated one-way request/response will be used in conjunction with advanced object-oriented state management practices for long-running workflows. If you enjoy deep architectural discussion, if you are in charge of building a large-scale distributed system, if you want to know more about how the big guys run their systems, this is for you.
Audience

This workshop is targeted at team leads, application and solutions architects, as well as technologists who are involved in making decisions about the overall system design of software products and projects.
Course Topics

Module 1: Distributed Systems Theory
Decades of distributed systems development have taught us many lessons. In this module we’ll cover many historical mistakes as well as proven best practices for scalable and robust design. Topics include:

  • 8 fallacies of distributed systems
  • Transactions


Module 2: Coupling: Platform, Temporal, & Spatial
Loose coupling has become the watchword of complex systems development, yet few understand its multiple dimensions. In the module we’ll be covering the three different dimensions of coupling as well as patterns for dealing with them.


  • Platform Coupling – XML/SOAP
  • Temporal Coupling – Synchronous/Asynchronous
  • Spatial Coupling – Endpoints/Topics


Module 3: Asynchronous Messaging Patterns
Although scalability is achieved through the use of asynchronous message passing, more advanced message exchange patterns are required to handle today’s complex integration scenarios. This module will cover the most commonly used patterns:
  • One way
  • Correlated Request/Response
  • Publish/Subscribe


Module 4: Bus & Broker Architectural Styles
Enterprise Service Buses are all the rage these days. In this module we’ll be covering what’s the difference between the Bus architectural style, and the more well-known Broker, found commonly in many EAI projects. Topics will include:

  • Architectural advantages and disadvantages
  • Technological advantages and disadvantages


Module 5: SOA Building Blocks
One of the goals of SOA is to develop systems which are more closely aligned with Business. In this module we’ll be covering an analysis methodology from moving from the business domain to executable systems that comply with all the principles of loose-coupling.

  • Business Services
  • Business Components
  • Autonomous components & Queues


    Group Analysis Exercise
    In order to ensure maximum retention, students take part in a group analysis of an enterprise problem domain, identifying business services and events, experiencing first hand the tacit knowledge of parts of a solution that “feel right” and follow the rules outlined in the previous modules, as well as the other parts that “feel wrong”. Many students have described this exercise as the point of epiphany, when all the previous information “just made sense” afterward.

Module 6: Service Structure & CQRS
Drilling inside Business Services and Business Components, the topic of Command/Query Responsibility Segregation is introduced for designing collaborative, high-scale systems with great user experience. The connection between capturing user intent in task-based UIs, caching, and one-way messaging is described.
Topics include:

  • Search & Queries + Denormalization
  • Validation & Business Logic for commands
  • Publish/Subscribe eventing for synchronizing denormalized caches


Module 7: Scalability and Flexibility
    In order to enable agility, services must be able to scale up, out, and down quickly. In this module we’ll see how queues simplify monitoring solutions while at the same time connecting them to service-level agreements, as well as how this architecture can be capitalize on the capabilities of the cloud in order to create self-tuning systems.
  • Scaling heterogeneous server farms
  • Monitoring queues for SLA
  • Rolling deployment and versioning


Module 8: Long running processes
The distributed communications patterns wouldn’t be complete without a discussion on orchestration. In this module we’ll see how to manage the state of long-running distributed communication flows as well as:
  • Encapsulating process logic
  • Advantages & disadvantages of orchestration
  • The connection of time and messaging


Module 9: Service Layers and Domain Models
    Logic-rich services require the use of advanced techniques for logic componentization. The Domain Model Pattern enforces a high level of Separation of Concerns, yet it must eventually be connected with Service Layer code that supports many concurrent users. In this module, the topics covered will include:
  • Business Logic inside and outside a Domain Model
  • Transactions, Isolation Levels, Concurrency Models
  • Testing Domain Models


Module 10: Ultra-scalable Web Apps
As more web apps are put under the pressure of growing user bases, performing more complex tasks upon larger quantities of data, standard caching techniques are not able to handle the task by themselves. In this module, students will learn how to leverage the entire web as a cache, use Content Delivery Networks, in combination with the messaging shown in previous modules:
  • Composability & Cacheability of dynamic content
  • Scalable personalized data
  • Integrated messaging & pub/sub for caching sensitive data


Module 11: Summary & Review
In order to make sure that attendees are able to put into practice all that they’ve learned throughout the course, here we strengthen the seams between the various topics. Q&A is also a core part of this final section.

[ 本帖最后由 清风拂山岗 于 2012-5-4 21:09 编辑 ]
Advertisement
Advertisement

发表于 2012-5-4 22:06 |显示全部楼层
此文章由 清风拂山岗 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 清风拂山岗 所有!转贴必须注明作者、出处和本声明,并保持内容完整
培训结束,收获很大。培训的内容主要是如何构建基于消息系统的大型分布式系统。 Udi在SOA ,DDD和CQRS方面都有自己独到的见解。 培训班的四十位同学基本都是各个公司的技术骨干,像Readify的Senior/Principle Consultants,SEEK网站的技术团队。难得的是,大家问了一两百个问题,他基本马上给出答案,并且给出的解决方案经得起推敲。现在我明白为什么会有那么多MVP甚至是Microsoft WCF Team里的人愿意去参加他的培训。明天开始度假,顺便好好消化下培训的内容。

发表于 2012-5-10 02:37 |显示全部楼层
此文章由 gozh2005 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 gozh2005 所有!转贴必须注明作者、出处和本声明,并保持内容完整
这个课程内容真的很好,课程多少钱呀?CQRS我觉得也开始流行了。很多biztalk的东西的感觉。

发表于 2012-5-10 10:28 |显示全部楼层
此文章由 无视 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 无视 所有!转贴必须注明作者、出处和本声明,并保持内容完整
他没给你推销Nservicebus阿?

Greg Young和Udi Dahan算是这领域的领袖人物了,可以经常关注他们的blog,不过大多数都是跟商业产品有关的,下面的这本书不错,推荐看一下。

http://www.amazon.com/gp/product ... &pf_rd_i=507846

另外一个跟Nservicebus类似的免费产品你可以参考一下,Ayenda参考了NServiceBus和Mass Transit写的,而且用到产品中去了,我fork了一下,还不错,是castle家族一员,很容易集成。

https://github.com/hibernating-rhinos/rhino-esb

发表于 2012-5-10 17:39 |显示全部楼层
此文章由 gozh2005 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 gozh2005 所有!转贴必须注明作者、出处和本声明,并保持内容完整
DDD这本书是经典了,不过人家的课是以SOA的架构为主的吧。应该是他的课的一小部分。
我看网上他的这个课,下载一个SESSION要150。他倒真会赚钱呢。

发表于 2012-5-24 19:11 |显示全部楼层
此文章由 清风拂山岗 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 清风拂山岗 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 gozh2005 于 2012-5-10 01:37 发表
这个课程内容真的很好,课程多少钱呀?CQRS我觉得也开始流行了。很多biztalk的东西的感觉。

不好意思,还在度假中。这次课程我付了USD2500,听他说以后要涨价。
Advertisement
Advertisement

发表于 2012-5-24 19:24 |显示全部楼层
此文章由 清风拂山岗 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 清风拂山岗 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 无视 于 2012-5-10 09:28 发表
他没给你推销Nservicebus阿?

Greg Young和Udi Dahan算是这领域的领袖人物了,可以经常关注他们的blog,不过大多数都是跟商业产品有关的,下面的这本书不错,推荐看一下。

http://www.amazon.com/gp/product/0321125215/ref= ...

他用NSERVICEBUS作了一些代码演示。DDD Blue book 我花很长时间才读完。建议从1-3章开始,然后跳到14-15,最后从1-17再读一遍。其他人也有类似的建议。

评分

参与人数 1积分 +3 收起 理由
无视 + 3 感谢分享

查看全部评分

发表于 2012-5-24 19:47 |显示全部楼层
此文章由 清风拂山岗 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 清风拂山岗 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 gozh2005 于 2012-5-10 16:39 发表
DDD这本书是经典了,不过人家的课是以SOA的架构为主的吧。应该是他的课的一小部分。
我看网上他的这个课,下载一个SESSION要150。他倒真会赚钱呢。

没错,DDD确实是很小一部分。但我感觉DDD的作用被Udi低估了。在SOA领域,他自成一派。但我觉得他的SERVICE的BREAK DOWN从DDD的BOUNDED CONTEXT出发,更容易接受和理解!
每次练习,我都是按DDD的路子来做,最后的结果和他的方案基本相同。所谓殊途同归,真是妙不可言!!!!

发表于 2012-5-28 12:55 |显示全部楼层
此文章由 uowzd01 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 uowzd01 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 清风拂山岗 于 2012-5-24 18:11 发表

不好意思,还在度假中。这次课程我付了USD2500,听他说以后要涨价。

MY GOD

2012年度奖章获得者 2011年度奖章获得者

发表于 2012-5-29 12:53 |显示全部楼层
此文章由 交易人生 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 交易人生 所有!转贴必须注明作者、出处和本声明,并保持内容完整
强,这年头自己肯花钱学习的不多了。

发表于 2012-5-29 12:57 |显示全部楼层
此文章由 无视 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 无视 所有!转贴必须注明作者、出处和本声明,并保持内容完整
原帖由 交易人生 于 2012-5-29 11:53 发表
强,这年头自己肯花钱学习的不多了。


有tax deduction,最终出口袋的差不多是一台好desktop的钱,不过也的确不少了,lz有个好LP!!
Advertisement
Advertisement

发表于 2012-5-29 21:14 |显示全部楼层
此文章由 清风拂山岗 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 清风拂山岗 所有!转贴必须注明作者、出处和本声明,并保持内容完整
自己掏钱去培训也是没有办法的事情。感觉技术上遇到了瓶颈,自己又悟性不够,就破费请高人指点一下。最后老板还是把培训费用给报销了,这也算是对我的第一年工作的肯定吧!

2012年度奖章获得者 2011年度奖章获得者

发表于 2012-5-29 23:24 |显示全部楼层

回复 清风拂山岗 12# 帖子

此文章由 交易人生 原创或转贴,不代表本站立场和观点,版权归 oursteps.com.au 和作者 交易人生 所有!转贴必须注明作者、出处和本声明,并保持内容完整
你们老板不错。内容看着也挺好。

发表回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Advertisement
Advertisement
返回顶部