WATCH CASE
Main dimensions
Diametre : 50,00 mm
Case thickness : 11,50 mm
Finish
18k solid mate gold case,
Mate bottom cover with sapphire glass, deep mechanical engraving
White gold : bridge / dial with white rhodium treatment
Black gold : bridge / dial with black pvd treatment
Pink gold : bridge / dial with pink gold treatment
For a total of white gold : 87,00 g
black gold : 87,00 g
pink gold : 85,80 g
Characteristics
Sapphire glass, thermics countershock marking
Bottom case sapphire glass
Water - resistant at 3 atm (30 m).
Alligator bracelet, wide case / buckle : 26x20 mm ;
18k solid gold deployment buckle
For a total of white gold : 16,00 g
black gold : 16,00 g
pink gold : 15,20 g
MOVEMENT F. PIGUET
PGE 1185 Caliber
Main dimensions
Cage of movement : 26,20 mm
Movement
thickness : 5,50 mm
Indications
Hour, minute at 12 o'clock
Date by coloration at 2 o'clock
Counter 12 hours at 9 o'clock
Counter 30 minutes at 3 o'clock
Second hand at 6 o'clock
Central chronographe second hand
Functions
Setting time using 3 positions crown stem
Characteristics
Automatic movement, chronographe with "roue à colonne"
45 hours power reserve
Jewels : 41
Frequency : 3 Hz
5 positions adjustment
"Côtes de Genève" finished bridges with white rhodium treatment
GUY ELLIA logo engraved on rotor with white rhodium treatment
http://www.guyellia.com/horlogerieJumboChrono.htm
F# is a functional programming language that runs on Microsoft's Common Language Runtime and the .NET Framework. This means that F# has access to .NET Framework APIs and, conversely, that other .NET languages can use F# libraries. This Fast Guide offers a quick introduction to F# programming best practices and attempts to answer key questions about this new .NET implementation.
F# home page and What is F#? (Microsoft Research)
These pages introduce the main features of F#. The first page links to resources like the F# Library Reference Documentation, while the second page offers some tidbits specifically for developers.
F# -- A Functional Programming Language (Soma Somasegar)
Here the vice president of Microsoft's .NET Development Division announces (in mid-October 2007) his group's intention to fully integrate F# with Visual Studio.
F# Language Overview (Tomas Petricek)
This document, available as a PDF file (the link above) or as a series of four blog entries, offers an introduction to F# and discusses how it relates to functional, object-oriented, imperative and language-oriented.
F# and Visual Studio 2008 (Edgar Sanchez)
When Visual Studio 2008 shipped, this blogger wanted to see whether F# programming was possible. "It worked without any hassle and, to celebrate, I wrote a typical business example: get the average salary of a group of employees," he indicated.
F# and Visual Studio 2005 (Microsoft Research)
Meanwhile, Microsoft has developed a VS 2005 extension that supports F#.
F# .NET tutorials and examples (Flying Frog Consultancy)
This site, maintained by Jon Harrop, offers four tutorials (covering DirectX, WinForms, GUI and more) and a video about running F# inside Visual Studio.
Using F# Interactive (Granville Barnett)
Here this blogger runs through F# Interactive, which is pretty much a learning aid. As Barnett states, "If you want to deploy something in an application, then do so as some managed assembly."
Expert F# (Apress)
This book covers topics such as functional, imperative and object-oriented programming; Windows, Web and database applications; and C and COM interoperability.
Foundations of F# (Apress)
This book, intended for those who are already familiar with functional programming, demonstrates how F# can be used for "real-world professional development."
Jon Harrop Makes Us F# (.NET Rocks)
Here a veteran of Ocaml and author of the F# Journal explains how F# performs like C#, behaves like a functional language and benefits from being part of the CLR.
F# with Robert Pickering (Hanselminutes)
Here Scott Hanselman interviews the author of Foundations of F#, who offers some thoughts on the benefits of functional programming in the .NET Framework.
F# Web Tools (CodePlex)
This download lets developers create Web applications in three-tiers (client, server and database). According to the project page, "The modal distinctions between client and server are checked through the use of F# workflows, and LINQ can be used for database access."
Numerous bloggers frequently write about F#. Here are the writers who have provided plenty of posts that should help those on a quest for F# knowledge.
.NET at 9.400 ft above sea level (Edgar Sanchez)
This blogger, writing from the Andes, has covered data structures, function definition syntax and what it will take for F# to go from academia to business.
DevHawk (Harry Pierson)
This blogger, who joined Microsoft last year, has a lengthy series of posts under the heading "Practical F# Parsing."
hubFS: THE place for F# (Tomas Petricek)
This blog, maintained by the author of F# Web Tools, includes thoughts on workflow, an analytics tool called R and the use of LINQ (the Language Integrated Query) with F#.
F# News (Jon Harrop)
This site, which dates back to November 2006, links to news, notes and downloads pertinent to F# programming.
Don Syme's WebLog on F# and Other Research Projects
This blogger is one of the three authors of Expert F# and has been at Microsoft Research since 1998. F# category posts include announcements, concurrency, design notes and snippets.
Robert Pickering
This blog features a four-part series on concurrency in F#. Pickering also points to a Facebook group devoted to F#, noting, "Requires a Facebook profile but seems everyone has one these days."
Granville Barnett
This blogger has been writing about F# since September 2007, covering topics such as property initializers, functions as values and recursion.
让退休不久的比尔·盖茨先生始料未及的是,自从经历过
上次的抓狂事件,具有娱乐精神的戏剧之神再次降临——在2008年8月8日晚这个伟大的时刻,曾经的微软老大比尔·盖茨先生坐在宽大的包间里激动地看着盛大的点火仪式——就在这时,他看到了——是的,他看到了一个让他更加激动的画面——
开幕式结束后,盖茨先生接受了本报独家专访。
他说:“我太小看Windows的蓝屏能力了。”
人类能关注的东西本身就有限,而这些东西往往却都杂七杂八混成一团,另外大家很多时候只限于浅尝辄止,所以很难真正做一些有意义的事情-不管是为别人还是为自己。
即使是伟人,也只能做有限的几件大事。所以我们要认真选择,那番大事究竟是什么。如果你无法做到专一,就意味着你的力量被分散了。在很多事情间跳来跳去的话,你只会一事无成。你的才智再过人,也是有限的。假设你必须同时关注两件事,那么理由只能有一个:两件事情结合起来的效果比做好单独任何一件事情的效果都要好。否则你最好将眼光放长放远,只注重其中一个,并忘掉另一个。记住,不是降低另一个的优先级,因为这样的话它会时不时地从你的脑海里蹦出来,干扰你的注意力。你要做的是彻底放弃它,要对自己说,“这件事的前景虽然很诱人,但我不会去做它。“
任何伟大的事业不是一蹴而就,而是一步一步实现的。仿佛是走台阶一样。你应该相信命运之神不会辜负你的激情,你所需要的帮助总是会适时到来。没准儿,你的贵人也会像肖恩一样,在某天与你不期而遇。
将你的注意力和激情集中在一个单一的目标上,哪怕这个目标的实现很复杂。如果目标很复杂,你必须先将你的热情专注于始初简单的一点,然后努力朝那方向去做。
如果你有机会进入到Google办公地点参观,你肯定会留下深刻印象。虽然不是每个人都有机会到Google办公地点参观,但通过以下图片,我们同样也能了解到Google员工们的“幸福生活”:
1、隔音太空舱
如果工作累了,可在这个太空舱好好休息一会儿。该娱乐设施不但可隔音,而且能阻挡任何光线进入。

2、回到幼儿园
每层办公楼之间都安装了一个滑梯。除了娱乐功能外,还可供员工们在发生火灾时紧急撤离。

3、美味佳肴
在上班时间,Google员工可随时到食堂就餐,食品种类也丰富多样。

4、工作地点
每位员工至少配备两台大屏幕显示器,平均每个办公室有4~6名员工。

5、技术创新
办公大楼随处可见白色书写板,目的是方便员工随时记下各种新创意。一位Google产品经理对此表示:“你坐在办公室时,灵感并不一定会来;或许就在你走动时,灵感就会如期而至。”

6、轻松一下
在很多办公区域,很容易找到台球、视频游戏等娱乐设施。

7、打个电话
办公楼每层都设立一个电话室。每台电话机都安装在经过装饰的小屋当中,以方便Google员工处理私事。

8、技术支持
如果Google员工电脑出了问题怎么办?没关系,把它搬到这儿来就行。在等待电脑修理过程中,你还可以喝上一杯饮料。

9、专业按摩
身心疲倦?这儿有专业按摩师在等着你。

10、全身放松
躺在可调节的按摩椅上,然后看着水族箱,好好放松一下吧。

11、读书环境
在员工阅读室当中,摆满了各类书籍,据说还有不少关于如何编程的书呢!

工作面试时最难的25个问题
很好的准备是成功的一半。
如果你是一个对目前的职位不满意,正着手去在新的一年里找到一个新的职位,这篇文章就是你的一个帮手。工作面试是你去面对未来的老板的征途中最重要的一个过程。你必须像进行一个击剑锦标赛或着一个国际象棋比赛那样的坚韧和敏捷来对待面试。
简介
下一代的 web 系列,第一篇:浏览器存储支持
下一代的 web 已经开始上路了,就在这个星期,MySpace 集成了 Google Gears,雅虎发布了新的 BrowserPlus,Google 的浏览器版三维地球也上线了。类似 AIR、Silverlight、JavaFX、Gears、XUL、Web Applications 1.0 (DOM5, HTML5 等) 这样的技术和格式让开发者能够超过 AJAX 加速冲向下一代的,有着更好的性能、更多的功能,而且和桌面集成的更加紧密的 web 程序。
现在,因为各个公司都急于展示他们自己的下一代 web 的样子,导致开发者和用户都被前所未有的超多 web 技术所压迫;“DLL 地狱”也被“插件地域”所取代。但是在 web 上,这样过多的选择会导致用户和开发者的成本增加。第一次 web 格式大战已经过去十多年了,那个时候微软、网景、苹果、美国在线还有其他公司都在浏览器标准、脚本语言、web 服务等方面成立了不同的基金会。这次大战的影响一直持续到现在,例如 Javascript 来发展需要依赖整套的代码库来开发跨浏览器代码,CSS 开发者需要一系列 hack 才能让他们的站点能够在不同的浏览器中看起来都一样。
现在新一代的富 web 程序技术还都在开发阶段,所以还有机会采用基于标准的态度,来避免重蹈覆辙。幸亏有了过去十多年的教训,现在连微软这样的公司都在以更加开放的姿态来接纳 开放标准、数据迁移还有跨平台支持。不管是用户还是开发者,对开放标准的广泛支持都能简化他们用到的技术,但是明显的,并不是所有当前发布的新技术都能支 持开放标准。
在 Techcrunch 这一系列帖子里,我们来看看这些组成新一代 web 的各种元素,并且评估可用的选项,当前支持的标准以及对标准的采用情况。由于 MySpace 刚刚宣布他们在程序里面使用了 Google Gears,那么我们的第一篇就来评估基于浏览器的本地缓存。
基于浏览器的本地存储
随着基于 web 的应用程序逐渐流行,就有了希望能够离线运行这些程序的需求。第一个不需要任何插件或者独立程序的解决方案是那些靠缓存 HTTP 头信息来在浏览器缓存里存储信息的方法。类似 Dojo 对离线 web 应用的支持这样的 Javascript 库使用的就是这样的原理,但是这样的程序应用范围非常狭窄,因为没有一个好的办法在浏览器里存储结构化的数据。(Dojo 现在引用了很多包括 Gears 在内的其他的存储引擎——提示:Dylan)
在 2007 年 5 月,Google 发布了Google Gears, 一个浏览器插件,它允许 web 程序把数据同步到本地存储器,然后可以离线使用这些 web 程序。在 Gears 发布会上,Google Reader 被重写以支持 Gears,Gears 的突出的重点是离线访问应用程序。但是不被所知的是,Gears 不仅仅能够用来离线访问,它还提供这三大功能:
- 缓存资源(HTML 页面、图片等)
- 在数据库中存储结构化数据
- 异步后台工作线程
在这部分我们关注的是本地对象和结构化数据存储。Gears 通过 Javascript API 来提供相应的功能,这些 API 可以被任何 web 程序访问到。Sqlite, 一个轻量级 RDBMS,提供了结构化存储的支持。由于使用了本地数据库,开发者不仅可以执行查询、插入新纪录这样的操作,还能执行更复杂的 SQL 操作,例如连接多表查询等。尽管你可以有多个使用 Gears 的程序,但是每个程序都要运行在一个基于域名的安全模型的沙盒环境里(类似 cookie 和 AJAX 请求)。虽然 Sqlite 已经嵌入 Firefox 2.0 以后的版本,但是它的 API 只能够被 Firefox 核心组件或者附加模块访问到。Gears 插件弥补了这个缺陷,让客户端脚本环境也能够访问到这些 API。
在 Gears 发布前,万维网超文本应用程序技术工作组 (WHATWG) 已经着手制定 Web 程序规范 1.0 草案,这个草案把结构化数据存储包括到了 HTML5 里。该草案当前版本包含了对访问数据库对象和查询本地数据存储的定义。实现的细节虽然交给了各个公司去完成,不过规范里面已经详细说明了 API 的细节。Firefox 将会在 3.0 版里实现一部分和 WHATW 规范一样的存储 API,不过这个版本现在只有预览版可用。WHATWG 规范里的关键部分有:
- 程序缓存 ——在本地浏览器缓存里存储对象(包含校验)。
- navigator.onLine——测试浏览器是否在线(使用缓存,如果需要则加上本地数据存储)。
- 存储界面和事件——用来通过 sessionStorage DOM 属性存储“名称/值”对。
- 数据库界面——用来连接本地数据库。支持 SQL语法(或者其子集,取决于使用的服务器)、版本控制和错误回调事件。
- 线程和回调——这样多个请求就能够异步发送给本地数据存储。
调用本地存储、缓存和离线访问相对来说很简单。程序首先检查是否支持相应的函数,然后通过在后台同步用户数据进程来设置本地缓存。当一个 线程在运行的时候,不管是上传还是下载,你可以查询进程状态并且给用户一个反馈(例如一个进度条)。一旦数据本地化,由于是在本地机器上运行数据库,开发 者就能大幅度的提高查询性能。当下很多 web 程序仅仅把浏览器用作展示层,例如,电子表格软件就是做 =1+1 这样简单的计算也要进行一次到服务器再返回的请求。通过使用本地数据存储和客户端代码,开发者可以减少到处理和存储到客户端的负荷,同时还能提供给用户更加平滑、类似桌面程序的体验。
当前和将来的支持情况
现在的问题是大部分 WHATW 规范都是在 Gears 发布后才写的,导致 Gears 使用的数据库和本地服务器对象和 WHATW 规范不兼容——至少当下是这样的。好消息是 Google 已经发现了这个问题,完全支持 WHATWG HTML5 规范中的存储部分,因此,对于那些运行在安装了 Gears 的 Firefox 3 中的程序的开发者来说,他们可以选择使用 Firefox 原生的还是 Google 实现的存储。Google 还说他们很可能会提供额外的功能,以激励开发者关注那些 Gears 超越 HTML5 的实现(例如桌面快捷方式等)。
其他的本地数据存储可选方案,例如 Flash 本地存储,和 WHATW 规范完全不兼容。WebKit 的开发人员很快声明他 们也开始实现 HTML5 规范中的存储部分。而且在每晚构建的代码里已经可用了,因此很快我们就能看到 Konquror 和 Safari 对本地存储的支持。Opera 也声明了类似的计划,而且当然他实现了 HTML5 和 web 表单后他们会领先于所有人。雅虎 BrowserPlus 昨天才发布,所以现在还不明确他们他们的本地存储支持和工作组发布的规范是否兼容。
本地存储是新一代的 web API 中重要的新功能,开发者不仅有跨浏览器的一致支持,还可以选择使用 Google Gears(已经可用)还是 Yahoo! BrowserPlus(取决于它如果工作)。还有一个浏览器厂商我们到现在一直没有谈到,那就是微软。微软发布了 IE8 的一个早期预览版,而且预告了大量的新特性,其中很多都是基于开放标准的,例如更好的 CSS 和 Javascript 支持(内涵一个更加标准化的对象模型)。最大问题是,IE8 在本地存储方面会不会遵循和其他浏览器厂商一致规范。IE 开发小组声称 IE8 将会支持 DOM 存储,但是这只是全部本次存储规范的一部分(即前面提到的 Storage 对象)。
当前和将来的支持情况
| |
Gears |
BrowserPlus
|
Firefox |
IE8 |
Webkit
|
| 程序缓存 |
很快
|

|

|

|

|
|
侦测在线与否
|

|

|

|

|

|
|
本地服务器
|

|

|

|

|

|
|
存储
|

|

|

|

|

|
|
数据库
|

|

|

|

|

|
|
线程
|

|

|

|

|

|
|
SQL
|

|

|

|

|

|
注:一旦得知 BrowserPlus 的细节,我们就会完成这个表格。Google 保证 Gears 能够适应标准。IE8 宣称不完全的支持。WebKit 的每晚构建里面大部分功能都可用了。Flash 和 Silverlight 支持某种形式的本次存储但是不是 HTML5 标准 API。
一个类似本地浏览器存储这样的新技术被如此广泛的提倡和支持,而且大部分都是基于一个规范,实在是一件罕见的事情。虽然微软还没有宣称完全支持,但 是毫无疑问的,他们会朝向正确的方向。Google Gears 和 Firefox 3 的实现都遵循着 HTML5 的工作组规范也是很鼓舞人心的。虽然短时间内这些新版本的浏览器不可能被广泛的使用,但是 Google Gears 已经可用了,而且,因为所有的厂商都瞄准了同样的 API,开发者现在就可以安心的锁定 Gears 存储 API 然后开工——者在不久以前还是不可能的事情。
有了本地浏览器存储和缓存,开放标准到现在为止都是赢家。而其他的替代解决方案很可能会半途而废,或者改变以实现同样的 API。
1 追求女人你需要时间和金钱,因此:女人=时间×金钱
2 “时间就是金钱”,所以
时间=金钱
3 因此
女人=金钱×金钱=金钱的平方
4 “金钱是一切麻烦的根源”
金钱=麻烦的平方根
5 因此
女人=麻烦的平方根的乘方
女人=麻烦
危险物质数据表
元素:女人
符号:○+
发现者:亚当
原子量:接受值是55公斤,但据知可在45公斤到225公斤之间浮动
物理特性:
1。体表通常覆盖着粉底与化妆品构成的薄膜
2。毫无意义的沸腾-----毫无理由的结冰
3。以不同状态存在于自然界中,从纯净原材料到普通矿物质均有可能
化学特性:
1。极易与黄金、白金以及所有的贵重宝石发生反应
2。可能在没有任何理由及预警下会引起自发性严重爆炸
3。是人类已知的最强的金钱还原剂
用途:
1。高度装饰性,特别是摆在跑车中
2。对于疏解压力有很大的功效
3。非常有效的厨房清洁剂
危害:
1。将另一更优质样本置于旁边时会发青(指忌妒)
2。同时持有一个样本以上为违法,但数个样本可以在不直接接触的情形下保存在不同的场所
男人与女人争论获胜的可能性
绿字为约会期,蓝字为订婚期,黑字为婚姻期
横轴为年份,竖轴为获胜可能性的百分比
任务:去商场买条裤子
蓝线为男人,红线为女人
摄影是一门技术,同样也是经验的积累。下面是无数摄影师的经验汇聚而成的12条最经典、实用的摄影技巧Tips,将其熟记于心,将帮助你应对很多难以掌控的拍摄场景。
1.Sunny 16 Rule (阳光十六法则)
“Sunny 16 Rule”是在没有测光表时,正确估算日光下曝光数值的方法,所以这条法则只有在阳光充足的情况下适合使用。将光圈设为F/16,快门与ISO同步,或者略快。如,ISO设为100时,快门应该设为1/100秒(1/125秒)。所以,根据这个法则,在海滩上摄影时,应该使用F/22光圈,在多云时应使用F/11光圈。
2.Moony 11,8, and 5.6 Rules (月光11,8和5.6法则)
如果你想拍摄月亮,那么这里有一条很好的法则。快门与ISO同步的时候,拍摄满月用F/11光圈,弦月的时候用F/8光圈,新月则使用F/5.6光圈。
3.CameraShake Rule (相机抖动法则)
当你手持相机拍摄时,快门的速度不能小于镜头焦距的倒数。如果快门速度越慢,那么拍摄抖动时就越可能降低锐度。如果用50mm焦距的话,快门就要达到1/60秒以上为宜,只有当环境实在昏暗时,用闪光灯、脚架或者把相机放在硬物上防止抖动。
4.Anatomical Gray Card (灰板法则)
随身携带18%的中灰度板是拍摄的利器。可是如果身上没有灰度板怎么办呢?可以将手掌摊开面向阳光,对手掌进行测光,然后加一档曝光。
5.Depth of Field Rules (景深法则)
当被摄无题比较深的时候,应该对焦点选择在景深的前1/3处,因为这样,对焦点后的景深是之前的2倍。各种光圈和焦段组合都可以使用这个法则。记住,光圈越小,焦距越短,距离被摄物体越远,景深就越大。
6.Largest Digital Print Rule (数码冲印尺寸法则)
如果你想把你的作品打印成大尺寸的照片时,照片的尺寸不能大于数码图片的长宽像素各除以200.如果你对作品要求很高,那么至少得除以250。
7.Exposure Rules (曝光法则)
在处理数码照片时,最普遍的法则是保证高光区曝光准确,低光区随他去。可是当处理负片,特别是彩色负片的时候,你最好增曝一档。
8.Quick Flash-fill Rule (快速闪光输出法则)
当你的相机不能自动输出控制的闪光灯时,将闪光灯的感光度设为胶卷的二被。如果对主体测光,机身选择光圈整档,闪光灯设为同样的光圈。这样,照片的阴影区会比主体的亮度低一档。
9.Flash Range Rule (闪光距离法则)
这个法则很简单:距离乘以2,感光度乘以4。例如,你的闪光灯在ISO 100时,有效距离为20英尺。如果你想使闪光灯的距离达到40英尺时,则需要ISO 400。
10.Megapixel Multiplier Rule (像素翻倍法则)
如果你想使数码相机的分辨率增倍,那么很简单,就是要像素翻两番。
11.Action-stopping Rule (捕捉动态法则)
这条法则是根据角度与速度的经验公式而来的。如果物体沿着镜头的轴线运动你能够用1/125的快门捕捉下,那么它追至于镜头轴线的运动能用1/500捕捉下来。也就是说,如果物体沿镜头轴线称45度运动,只需要1/250的快门速度。
12.Sunset Rule (日落法则)
拍摄落日时,要对落日上部测光,但是不能让太阳出现在你的取景器中。如果想让日落看上去比实际晚一小时,可以在曝光补偿中减1。

3000年的自动刮胡刀不需要乱七八糟的乳液和泡沫也能让爸爸保持好的仪表

到了3000年,你身上的衣服会根据时尚潮流自动更换

到了3000年, 不是你背书包而是书包背你!~

到了3000年,当你生病的时候,特殊的设备会自动照料好你BT不断的鼻子

到了3000年,化妆会变得简单得多

未来,运动也会变得省事。你睡觉的时候机器帮你锻炼就好了

戴上3000年的飞行帽后,想要到处走走可比骑车快多了,也方便多了

到了3000年,职业球员赚的钱多到只要雇人替他们打球就好。

穿上3000年四条腿的牛仔裤,去哪都不怕没地方坐了

到了3000年,如果你敢敲脏话的话,电脑就会惩罚你

为了节约能源,到了3000年,所有的校车司机都会换成独轮杂技演员

到了3000年,在停车标志面前,汽车不停也得停
将来有一天,调台时你也可以不换节目而只是换节目里的某个演员

未来的医生也很神奇,所以他们不用x光也可以检查你的骨骼有没有问题
页码条在网页设计上是必不可少的,因为你不可能老是提供一个按钮“下一页”,这样浏览者会变得很烦躁的。然而,页码的设计也是很讲究的,要好看、简洁还是花哨呢?有些网站的页码设计得非常漂亮,而有些却让人摸不着头脑。这篇文章翻译自Smashing Magizine,列出出将近60个网站的页码设计,当中哪个失败,哪个漂亮,哪个让人摸不着头脑,哪个你最喜欢呢?还是由你来判断吧!点击图片可进入相应的网站。
These are the questions that I usually ask during an interview process with an applicant that is in for a technical assessment interview. These questions assumes that you are well rounded and full blown .NET Web Developer. A .NET web developer should at least know ASP.NET, C#/VB.NET and TSQL.
We just completed the .NET Framework 3.5 update to the Commonly Used Types and Namespaces poster.
Here's a link to the PDF if you want to grab it now and be the first on your block to get it on your wall. We'll be using it at a variety of places, if you think it would be a cool thing to have at a Microsoft event then please go suggest it to some Microsoft employee that you know.

Let me point out the little additive circles diagram at the bottom right. We've found that this is a great way to explain the additive version releases of the .NET Framework 2.0 – 3.0 – 3.5. The primary reason for updating the .NET Framework this additive way instead of the side-by-side nature of .NET Framework 1.1 – 2.0 is to make it easier for customers to upgrade their apps. Here's that diagram again.

项目中我们往往需要更粗或者更细颗粒度的Singleton,比如某个线程是长时间运行的后台任务,它本身存在很多模块和中间处理,但每个线程都希望有自己的线程内单独Singleton对象,其他线程也独立操作自己的线程内Singleton,所谓的线程级Singleton其实他的实例总数 = 1(每个线程内部唯一的一个) * N (线程数)= N。
作者 Jean-Jacques Dubray译者 胡键 发布于 2007年10月31日 上午9时15分
10月30日早上,微软公开了简化SOA的愿景与路线图,桥接软件+服务并将组合应用带入主流。在Redmond举行的第五届SOA和BPM会议上,这家公司宣布了一轮产品投放和给应用平台提供扩展的多年技术投资集合,帮助开发者桥接内部(on-premise)和外部(off-premise)项目。该努力的代码名称是“Oslo”。
Oslo在微软动态IT的模型驱动和启用服务(service-enabled)原则之上构建。
微软商务应用事业部(MBD)的总裁,Jeff Raikes解释说:
“鉴于当前的复杂性,许多客户面临去兑现SOA承诺的挑战,结合我们目前的软件+服务方法和新一轮‘Oslo’技术将使IT交付高品质的业务解决方案。”
互联系统部门的执行副总裁和这次会议的演讲人,Robert Wahbe补充说:
“Oslo将使得新一类互联并简化的应用——从设计到部署——减少复杂性、面向企业和互联网,并简化互操作性和管理。”
在会议上,微软还演示了即将问世的“Microsoft BizTalk Services”社区技术预览版,它为互联性、Web 2.0服务、认证标准和遐想无限的工作流提供了额外支持。
InfoQ采访了互联系统部门的产品管理主管Burley Kawasaki,他给我们介绍这个项目:
今天业务变化的速度远远大于IT可以交付的速度。IT已经开始寻找解决方案,但是在应用构造过程中,我们可以且需要走得更远。Oslo将应用开发的未来定义为强烈关注生产力和组合。微软正瞄准这个领域内的主要挑战。例如,边界依旧是使应用部署困难的一个难题:跨技术(你需要驾驭很多标准)、跨防火墙(SaaS)、跨Web(B2B),以及跨组织。我们想聚焦SOA和组合应用来大大简化解决方案的设计、构建、部署和管理。
我们正以四倍于我们在SOA的投资,瞄准内部(on-premise)和遐想无限(in-the-cloud)两个场景。我们正准备通过5个关键领域中的服务器和工具产品去实现这个愿景。
- 服务器 —— 微软BizTalk Server“6”将继续给开发、管理和部署组合应用提供核心基础。
- 服务 —— BizTalk Services“1”将提供商业支持的基于Web的服务(例如,高级消息传递、认证和工作流能力)发布,支持跨组织边界的驻留组合应用。
- 框架 —— 微软.Net框架“4”发布将进一步使用WCF和WF激活模型驱动开发。
- 工具 —— Visual Studio“10”将通过为分布式应用的模型驱动设计提供的新工具来支持端到端应用生命周期管理。
- 仓库 —— 跨服务器的元数据仓库和工具产品集合的已被连成一线。微软System Center“5”、Visual Studio“10”和BizTalk Server“6”将利用一个仓库技术来管理、版本标定和部署模型。
我们想使模型驱动开发比它已经取得成绩的更加成功。通过以类CAD的生产力改进为目标,我们想使它成为主流。我们也想帮助我们的客户降低技术门槛:找到有能力的SOA开发者、架构师和质量分析师依旧太难。
我们想将模型发送到服务器而不是打印机。MDD正遭受两方面限制:首先,模型业务逻辑代表一个瞬间(point-in-time)快照,在人们将其翻译成代码的过程中,存在很多人们必须填补的空白。其次,人们只将某些视图包含在了模型中,缺少端到端视图。今天,模型集中在竖井中。只要这些竖井存在,模型将依旧是应用开发的外围部件。我们需要创建被新工具、引擎和仓库支持的端到端视图。例如,随着向现代MDD技术的转变,"代码分离"的概念会大大减少。
基于一些测试,我们已经在内部完成了一次大幅提高生产力的经历:大约是普通需要构建解决方案代码的1/10。总的来说,这对我们的用户是一次大的进步,对我们的合作者也是一样,尤其是业务过程联盟。
Oslo预计于2009年的某个时候发布。微软计划于2008年至少有一次主要的“Oslo”技术协同试验计划(CTP)。更多的信息可以在微软的SOA站点获得。
查看英文原文:Oslo: Microsoft Takes Composite Applications to the Mainstream
When your server is hosted out on the “big bad internet”, you need a way to make sure that you don’t get flooded with client requests. In WCF, our services support throttling as a way of mitigating potential DoS (denial of service) attacks. These throttles can also help you smooth load on your server and help enforce resource allocations. There are three service-level throttles that are controlled by ServiceThrottlingBehavior. These are in addition to any transport-specific throttles imposed by your binding. To fully understand the impact of these throttles you should also understand the threading/instancing characteristics of your service.
- MaxConcurrentCalls bounds the total number of simultaneous calls that we will process (default == 16). This is the only normalized throttle we have across all of the outstanding reads that the ServiceModel Dispatcher will perform on any channels it accepts. Each call corresponds to a Message received from the top of the server-side channel stack. If you set this high then you are saying that you have the resources to handle that many calls simultaneously. In practice how many calls will come in also depends on your ConcurrencyMode and InstancingMode.
- MaxConcurrentSessions bounds the total number of sessionful channels that we will accept (default == 10). When we hit this throttle then new channels will not be accepted/opened. Note that this throttle is effectively disabled for non-sessionful channels (such as default BasicHttpBinding).
With TCP and Pipes, we don’t ack the preamble until channel.Open() time. So if you see clients timing out waiting for a “preamble response”, then it’s possible that the target server has reached this throttle. By default your clients will wait a full minute (our default SendTimeout), and then time out with a busy server. Your stack will look something like:
TestFailed System.TimeoutException: The open operation did not complete within the allotted timeout of 00:01:00. The time allotted to this operation may have been a portion of a longer timeout.
[…]
at System.ServiceModel.Channels.ClientFramingDuplexSessionChannel.SendPreamble(IConnection connection, ArraySegment`1 preamble, TimeoutHelper& timeoutHelper)
If instead you are timing out under channel.Send (rather than channel.Open), then it’s possible that you are hitting the MaxConcurrentCalls throttle (which kicks in per-message, not per-channel).
- MaxConcurrentInstances bounds the total number of instances created. This throttle provides added protection in the case that you have an instance lifetime that is not tied to a call or a session (in which case it would already be bounded by the other two throttles). Orcas durable services are one such scenario.
Net-net: if you are testing your services under load, and your clients start timing out, take a look at your throttling and instancing values. On the flip side, do not just blindly set these to int.MaxValue without fully understanding the potential DoS consequences.
转自:kennyw.com
Scenario 1: InstanceContextMode.Single+ConcurrencyMode.Single
Result: 100 sequential invocations of the service method on one thread
Scenario 2: InstanceContextMode.Single+ConcurrencyMode.Multiple
Result: N concurrent invocations of the service method on N threads, where N is determined by the service throttle.
Scenario 3:InstanceContextMode.PerCall+Any ConcurrencyMode
Result: N concurrent invocations of the method on N service instances, where N is determined by the service throttle
9月18日,恰逢中国传统的中秋佳节.而这一天国内三大门户网站之一的网易高层们却无法感受到节日的喜悦,他们焦急地守候在医院里.终于,一个噩耗传来, 年仅38岁的网易代理CEO孙德棣因身患癌症猝然离世.这个创造了将网易股价从0.63美元推向72美元的奇才,就这样永远离开了他为之奋斗的工作.博客 网CEO方兴东感叹道:“死亡的阴影第一次与互联网如此接近.”
A web server handles HTTP (Hypertext Transfer Protocol) requests sent to it by web browsers. When you type in a URL —http://www.digital-web.com, for example—your computer sends out a request to look up the servers needed to handle requests and send responses back quickly. The technique for determining how to route requests to the cluster of web servers efficiently is called load balancing.
最近公司一直在招人,我作为主考官之一 。经常会提问的一个问题,就是让用户介绍自己在缓存方面的经验和心得。绝大多数的面试者只能说ASP.net的页面缓存和局部缓存,稍稍有点经验的,会提到企业库的缓存,只有很少的人会知道Memcached(一个分布式的缓存)。而对于缓存的一些基本思想,却没有一个人能说出来。
Astoria是微软公司开发的,互联网上数据服务的基础架构。它基于
REST架构,帮助开发人员仅通过标准的HTTP协议,如GET,POST,PUT或者DELETE就能访问数据。Astoria构建在ADO.NET Entity Framework之上,使用使用标准的数据格式如XML,JSON或者RDF进行数据传输。现在
CTP已经提供下载,在使用Astoria之前需要安装
ADO.NET Entity Framework和相关
Tools。
MS针对MVC推出新框架,真是一个Big news,另外在Scott Guthrie Blogs 中针对MVC新框架也做一些简要细节介绍,先看看MVC新框架有啥?
引文:
- MVC框架将促进清晰的关注分离,可测试性,和TDD。MVC框架中的所以核心契约都是基于接口的, 可以轻易地通过mock来模拟(包括基于接口的IHttpRequest/IHttpResponse这些基本的东西)。你可以不用在ASP.NET进程 中运行控制器(这使得单元测试很快),就单元测试你的应用。你可以使用你想使用的任何单元测试框架来做单元测试,包括NUnit, MBUnit, MS Test等等。
- MVC框架具有高度的可扩展性和可插拔性。MVC 框架中所有的东西都是这样设计的,它们可以被轻易地替换掉或者定制(譬如,你可以插入你自己的视图引擎,路径转向策略(routing policy),参数序列化等等)。它还支持使用现有的依赖注入(dependency injection)和控制反转(IOC)容器模型(Windsor, Spring.Net, NHibernate等等)。
- MVC框架包括一个非常强大的URL映射组件,允许你使用非常干净的URL来建造应用。URL不需要拥有文件扩展,是设计来轻松支持SEO和REST友好的命名模式的。譬如,在我上面的项目中,我可以轻松地把/products/edit/4映射到ProductsController类的Edit方法上,或者把 /Blogs/scottgu/10-10-2007/SomeTopic/ 映射到BlogEngineController类的DisplayPost方法上。
- MVC 框架支持将现有的ASP.NET .ASPX, .ASCX,和 .Master 标识文件当作视图模板(view template)之用(这意味着你可以轻松地使用很多现有的ASP.NET特性,象嵌套的母版页,<%= %>块 ,声明式服务控件,模板,数据绑定,本地化等等)。但是,它不使用现有的将交互返回服务器的postback模型,取而代之的是,你将把用户的所有交互转给控制器类来调度,这有助于关注的清晰分离和提高可测试性(这也意味着,在基于MVC的视图内没有viewstate或page的生命周期之说)。
- ASP.NET MVC框架将完全支持象forms/windows认证,URL授权,成员/角色,输出和数据缓存,session/profile状态管理,健康监测,配置系统,以及provider架构等等现有的ASP.NET特性。
嗯,总体了解下来,又是一个不错的东西,引言:“用MVC方式建造你的web应用的话", 近期关注!
资源:
Here's some of the buzz around the new Framework. I hope this framework is a harbinger of things to come in future frameworks.