基本信息
- 原书名:Building a Web 2.0 Portal with ASP.NET 3.5
- 原出版社: O'Reilly Media, Inc.
- 作者: (美)Omar AL Zabir
- 译者: 罗江华
- 丛书名: 华章图文公司O'Reilly系列
- 出版社:机械工业出版社
- ISBN:9787111239949
- 上架时间:2008-8-6
- 出版日期:2008 年7月
- 开本:16开
- 页码:279
- 版次:1-1
- 所属分类:计算机 > 软件与程序设计 > .NET > ASP.NET

编辑推荐
本书将指导您开发出一个坚如磐石的Web2.0门户站点以经受住每天数百万次的访问,同时能够在扩展性和安全性的双重压力下生存下来。
内容简介
计算机书籍
如果您认为自己的ASP.NET应用已经非常熟练,那么请在阅读完本书后再次进行确认。这本特别的指南提供了高级的站点构建技术,如ASP.NET 3.5以及其他前沿的微软技术。它将指导您开发出一个坚如磐石的Web门户站点以经受住每天数百万次的访问,同时能够在扩展性和安全性的双重压力下生存下来。这个门户站点不仅能作为客户量巨大的站点的主页,还可以作为企业传递强大内容集合的平台。.
本书由Pageflakes公司CTO及合伙创始人Omar AL Zabir编著,全书展示了如何应用ASP.NET 3.5、ASP.NET AJAX、Windows Workflow Foundation、LINQ以及ASP.NET 3.5来开发一个类似于My Yahoo!、iGoogle以及Pageflakes这样的站点。由Zabir构建的一个开源的而且基于AJAX应用的Portal原型(在线访问地址为www.dropthings.com)贯穿本书始终,并引领您解决在设计架构上面临的挑战,同时,本书还探讨了很多高级主题:高级AJAX应用、性能优化技术以及服务端扩展性等。
您将从本书中了解到:
采用流行的N层、基于Widget部件的应用程序模型实现一个低耦合的系统架构。
提供页面上的拖拽功能,并使用ASP.NET 3.5来构建Web层的服务端部分。..
使用LINQ构建数据访问层以及使用Windows Workflow Foundation以工作流集合的方式来构建业务层。
为提高性能和实现更高效率的缓存功能,采用JavaScript来构建基于客户端的Widget部件。
深度挖掘ASP.NET AJAX框架所提供的最大性能,使站点运行得更快、用户体验更高、可扩展性更强。
构建一个自定义的Web服务调用处理程序来克服在ASP.NET AJAX 1.0中实现异步、事务化以及缓存友好的Web服务调用出现的缺陷。...
作译者
目录
第1章 Web Portals和Dropthings.com简介
Web Portal定义
Web 2.0 Portal定义
使用Web Portal
Dropthings导航
使用ASP.NET AJAX
使用C# 3.0和.NET 3.5
小结
第2章 Web Portal和Widget架构
使用Widget框架
添加Widget
最大化用户的第一次访问体验
呈现再次访问的用户体验
提高ASP.NET AJAX的性能
添加验证和授权
预防拒绝服务(DoS)攻击
小结
第3章 使用ASP.NET AJAX构建Web界面层
实现Web Portal的首页
译者序
“Web 2.0”的概念开始于一个会议中,展开于O'Reilly公司和MediaLive国际公司之间的头脑风暴部分。所谓互联网先驱和O'Reilly公司副总裁的戴尔·多尔蒂(Dale Dougherty)注意到,同所谓的“崩溃”迥然不同,互联网比其他任何时候都更重要,令人激动的新应用程序和网站正在以令人惊讶的规律性涌现出来。更重要的是,那些幸免于当初网络泡沫的公司,看起来有一些共同之处。那么会不会是互联网公司那场泡沫的破灭标志了互联网的一种转折,以至于呼吁“Web 2.0”的行动有了意义?我们都认同这种观点,Web 2.0会议由此诞生。
在那个会议之后的一年半的时间里,“Web 2.0”一词已经深入人心,从Google上可以搜索到千万以上的链接。也从此刻开始,基于Web 2.0的门户铺天盖地。..
在后来的发展过程中,基于Ajax技术构建的门户是Web 2.0这一代中最为成功的Web应用程序。正如书中说说,在这块市场上iGoogle和Pageflakes这两大站点已经走在了时代的前列,同时他们也首次把Ajax的真正潜能挖掘了出来。这些门户站点为个人用户提供了非常个性化的主页,使得他们仅仅通过一个站点就能获取整个互联网上自己关心的信息和娱乐信息,同时也为企业信息内容整合带来了巨大的帮助。
本书通过使用微软当前最新技术来构建一个Web 2.0门户站点。其目的是为了使你在深入理解Web 2.0的同时还可以体验更多微软最近技术的实践实现机会,包括:.NET 3.0、.NET 3.5框架、LINQ、Windows Workflow Foundation等最新技术。同时本书中也针对ASP.NET AJAX框架的很多特性进行了探讨。
由此可见,本书的适用读者对象十分广泛。无论你是ASP.NET 2.0 或3.5的一般开发人员,还是新技术追随者,但不适合初级读者,本书都同样具有指导和参考意义。
本书在翻译过程中得到了很多朋友的支持和帮助,再次特别感谢你们。他们是:邓惠晶,陈曦,袁君,王明涛,李英,朱永光,米小波,Grace,肖生翰,谢道杰。
由于本书的翻译进度要求高,涉及技术面广,翻译难度较大;加之译者水平有限,书中难免有疏漏或错误,欢迎广大读者批评指正。...
罗江华
2008年4月
前言
本书使用微软最新、最尖端的技术并以崭新的视觉来看待Portal的解决方案。在开发个人、教育、社区以及企业Portal的过程中,我曾遇到过很多有趣的有关设计、开发、可扩展性、性能及生产方面的挑战。在本书中,我试图通过构建一个开源的、基于Web 2.0的Portal原型来展示解决这些问题所要面临的一系列挑战,然后循序渐进地告诉你需要面对的包括设计和架构、高级的Ajax应用、性能优化技术,以及服务端可扩展性等在内的挑战。该Portal原型也为你带来了很多新技术的实践实现机会,它们包括:.NET 3.0和.NET 3.5框架、LINQ、Windows Workflow Foundation等最新技术。此外,还探讨了实现基于Ajax技术的Web站点构建细节,及面临的一些挑战,如浏览器的性能、兼容性、安全性等方面,同时也针对ASP.NET AJAX框架的优点和缺点进行了探讨。
关于该案例可参见www.dropthings.com站点。Dropthings是一个开源的案例,它用以说明使用微软的最新技术到底能实现什么样的功能。本案例仅供学习使用。虽然就它在一系列特性如:性能、安全和可扩展性等而言并不接近一个真实的Web Portal,但是很好地展示了如何在一个商业Web应用程序中使用很多新技术。
本书读者对象
本书主要针对ASP.NET 2.0或ASP.NET 3.5的开发人员,他们应该已开发过一个或多个Web应用程序并且对JavaScript和ASP.NET 2.0已相当熟悉。也包括希望对ASP.NET AJAX技术有充分了解的读者。这些信息在很多出版物中都能见到,其中包括很多本书里介绍的O'Reilly的书。
对于中级开发人员,即为了寻找一种新途径来深入了解Web开发所面临的挑战,并想学习如何成功构建一个真正的Web站点使之正常运行起来的读者,将从这本书中获得更大的益处。高级开发人员将学习到如何构建一个坚固结实的Web程序,使其能够承受每天数百万次的点击访问量、因突发事件而引起的功能扩展需求、阻止黑客攻击和拒绝服务(DoS)攻击、利用内容传送网络(CDN)将站点部署和运行在一个分布式集群环境中以及面对真实产品环境中的问题挑战,等等。
本书组织结构
本书首先描述了什么是一个基于Ajax技术的Web Portal(确切的说应为一个基于Web 2.0的Portal,并且讲述了如何为更多类型的Web站点提供一种有用的模式,如个人站点、企业内部网或大众消费的Web应用。然后为你讲解该类应用程序所面临的架构挑战,并为解决这些设计问题提供一种循序渐进的指导。阐述了什么是Widget部件以及如何架构设计Widget部件来满足在Web站点上添加无限多特性的情况下,能创建一个高度解耦的Web应用程序。
随后的各章中,你会一步一步找到对应内容的导航,通过使用ASP.NET 2.0/3.5和ASP.NET AJAX 1.0开发某些Web工程的组件、使用Workflow Foundation构建业务层以及使用LINQt。SQL构建数据访问层。一旦这些基础设施建立起来,就会面临很多稍微困难的挑战,像用户第一次访问时站点的性能问题、浏览器兼容和内存泄露问题、高级缓存技术问题、把太多的内容和功能放到一个单独页面所出现的问题,等等。然后,还会面临一些现实生活中有关Ajax和ASP.NET 2.0/3.5应用的挑战,同时在我构建过的一个高伸缩性的商业Portal中这些挑战都已经得到了解决。
贯穿本书,我也分享了一些实际场景的开发心得,并突出显示了我在构建Portal的过程中所遇到的一些实际问题(如Dropthings)。因此,无论“实际情况(Real-Life)”这个术语出现在本书中在哪里都并不奇怪。
最后,针对基于Ajax技术构建的Portal展示了一些很难解决的问题:扩展性的挑战、安全性的挑战,以及对于一些普通的其站点用户分布全世界并达数百万的Web应用程序会出现的13种灾难问题。
本书共包括10章,每章的主要内容如下:
第1章,“Web Portals和Dropthings.com简介”
介绍Web Portal的一些概念,以及将在本书中构建的案例概述。第1章中还展示了如何在你的产品中应用ASP.NET AJAX和.NET 3.5技术。
第2章,“Web Portal和Widgets架构”
展示Dropthings.com站点的一个架构概况。也阐述了Widget部件的架构以及如何使用Widget部件构建一个高度解耦的Web应用程序。这会涉及一些基于Ajax的Web站点所面临的性能和安全方面的挑战。
第3章,“使用ASP.NET AJAX构建Web界面层”
从主页到Widget部件,对于如何构建这种Web应用程序给出了一个详细地阐述。也展示了如何使用.NET框架提供的ASP.NET AJAX 1.0实现拖拽功能、如何构建一个真实的Widget部件,以及如何使用ASP.NET 3.5来构建服务端的Web界面层。
第4章,“使用.NET 3.5构建数据和业务层”
展示了如何使用LINQ来构建数据访问层和使用.NET 3.0中的Workflow Foundation来构建业务层。
媒体评论
----Micke Pope, Microsoft User Education ...
书摘
基于Ajax应用的Web Portal竭力将功能实现在一个单一的页面上。对于这类系统的架构来说,需要满足在不危及客户端或服务器端性能的情况下实现在一个页面上应用如此多的技术,确实是一项巨大的挑战。在Web Portal中所见到的某些特有的挑战,是需要把很多特性融合到一个站点上去以及从各种不同的站点获取内容。
本章对Dropthings Portal的系统架构进行了一个诠释,你也可以按照我们提供的这些方法自己设计一个系统。我们将进行一系列针对架构的挑战,其中包括:如何在一个页面上运行多个widget部件,如何快速地加载一个Web Portal以及如何处理一些安全威胁,比如拒绝服务(DoS)攻击、企图损害用户数据等。
任何一个Web Portal的核心都需要能够提供对widget部件的支持。这种机制使得用户能够对首页进行自定义设置,并且这意味着无论公司部门或第三方部门都能够使用这些有效的服务,比如说Reuters。
在AsP.NET的执行过程中(就像本书中提到的执行过程),。Default.aspx页面是用来显示widget,部件的首页,并且它允许在不触发刷新或回传的情况下执行添加、删除、移动和自定义这些widget部件的操作。
应用程序会记住用户的行为和自定义设置,所以当用户下次访问站点的时候能看到自己离开站点时由相同widget部件填充的界面。一般来说,在用户没有注册的情况下,WebPortal仍然允许未注册的用户使用很多功能,如添加widget部件、编辑、删除、创建多页面以及改变页面的参数等操作。
……