Building a Web 2.0 Portal with ASP.NET 3.5 (Paperback)
暫譯: 使用 ASP.NET 3.5 建立 Web 2.0 入口網站 (平裝本)

Omar AL Zabir

  • 出版商: O'Reilly
  • 出版日期: 2008-01-29
  • 定價: $1,480
  • 售價: 6.0$888
  • 語言: 英文
  • 頁數: 310
  • 裝訂: Paperback
  • ISBN: 0596510500
  • ISBN-13: 9780596510503
  • 相關分類: .NETASP.NET
  • 立即出貨(限量) (庫存=9)

買這商品的人也買了...

相關主題

商品描述

Description 

If you think you're well versed in ASP.NET, think again. This exceptional guide gives you a master class in site building with ASP.NET 3.5 and other cutting-edge Microsoft technologies. You learn how to develop rock-solid web portal applications that can withstand millions of hits every day while surviving scalability and security pressures -- not just for mass-consumer homepages, but also for dashboards that deliver powerful content aggregation for enterprises.

Written by Omar AL Zabir, co-founder and CTO of Pageflakes, Building a Web 2.0 Portal with ASP.NET 3.5 demonstrates how to develop portals similar to My Yahoo!, iGoogle, and Pageflakes using ASP.NET 3.5, ASP.NET AJAX, Windows Workflow Foundation, LINQ and .NET 3.5. Through the course of the book, AL Zabir builds an open source Ajax-enabled portal prototype (available online at www.dropthings.com), and walks you though the design and architectural challenges, advanced Ajax concepts, performance optimization techniques, and server-side scalability problems involved.

You learn how to:
  • Implement a highly decoupled architecture following the popular n-tier, widget-based application model
  • Provide drag-and-drop functionality, and use ASP.NET 3.5 to build the server-side part of the web layer
  • Use LINQ to build the data access layer, and Windows Workflow Foundation to build the business layer as a collection of workflows
  • Build client-side widgets using JavaScript for faster performance and better caching
  • Get maximum performance out of the ASP.NET AJAX Framework for faster, more dynamic, and scalable sites
  • Build a custom web service call handler to overcome shortcomings in ASP.NET AJAX 1.0 for asynchronous, transactional, cache-friendly web services
  • Overcome JavaScript performance problems, and help the user interface load faster and be more responsive
  • Solve scalability and security problems as your site grows from hundreds to millions of users
  • Deploy and run a high-volume production site while solving software, hardware, hosting, and Internet infrastructure problems
Building a Web 2.0 Portal with ASP.NET 3.5 also presents real-world ASP.NET challenges that the author has solved in building educational and enterprise portals, plus thirteen production disasters common to web applications serving millions of users. If you're ready to build state-of-the art, high-volume web applications, this book has exactly what you need.

 

Table of Contents

Preface

1. Introducing Web Portals and Dropthings.com

     Defining a Web Portal

     Defining a Web 2.0 Portal

     Using a Web Portal

     Navigating Dropthings

     Using ASP.NET AJAX

     Using C# 3.0 and .NET 3.5

     Summary

2. Architecting the Web Portal and Widgets

     Using a Widget Framework

     Adding Widgets

     Maximizing the First-Visit Experience

     Rendering a Second-Visit Experience

     Improving ASP.NET AJAX Performance

     Adding Authentication and Authorization

     Preventing Denial-of-Service Attacks

     Summary

3. Building the Web Layer Using ASP.NET AJAX

     Implementing the Start Page of a Web Portal

     Building a Custom Drag-and-Drop Extender for a Multicolumn Drop Zone

     Implementing WidgetContainer

     Building Widgets

     Page Switching: Simulating a Nonpostback Experience

     Using the Profile Object Inside a Web Service

     Implementing Authentication and Authorization

     Implementing Logout

     Summary

4. Building the Data and Business Layers Using .NET 3.5

     Introducing LINQ to SQL

     Building the Data Access Layer Using LINQ to SQL

     Introducing Windows Workflow Foundation

     Building the Business Layer Using WF

     Implementing the DashboardFacade

     Summary

5. Building Client-Side Widgets

     Delaying Server-Side Widget Loading

     Content Proxy

     Building a Client-Side RSS Widget

     Building a Client-Side Flickr Widget

     Summary

6. Optimizing ASP.NET AJAX

     Combining Multiple Ajax Calls into One Call

     Timing and Ordering Ajax Calls to the Server

     Using HTTP GET Calls Instead of HTTP POST

     Working with the this Function

     Summary

7. Creating Asynchronous, Transactional, Cache-Friendly Web Services

     Scalability Challenges with Web Services

     Asynchronous Web Methods

     Modifying the ASP.NET AJAX Framework to Handle Web Service Calls

     Developing Your Own Web Service Handler

     Making an Asynchronous and Cache-Friendly Proxy

     Scaling and Securing the Content Proxy

     Summary

8. Improving Server-Side Performance and Scalability

     Instrumenting Your Code to Identify Performance Problems

     Optimizing the HTTP Pipeline

     Optimizing ASP.NET 2.0/3.5 Before Going Live

     Optimizing Queries in the ASP.NET Membership Tables

     Optimizing the ASP.NET 2.0/3.5 Profile Provider Before You Go Live

     ASP.NET Production Challenges

     Redirecting Traffic from an Old Web Site to a New One

     Summary

9. Improving Client-Side Performance

     Understanding Web Caching

     Content Delivery Networks

     Optimizing Internet Explorer JavaScript Performance

     Reducing the Web Service Call Payload

     Loading the UI on Demand

     Using Read-Ahead Caching for Ajax Calls

     Hiding HTML Inside <textarea>

     Summary

10. Solving Common Deployment, Hosting, and Production Challenges

     Deploying Your Web Site in a Web Farm

     Thirteen Production Disasters That Could Happen at Anytime

     Choosing the Right Hosting Provider

     Choosing a Web Site Monitoring Tool

     Configuring Proper Performance Counters

     Summary

Index

商品描述(中文翻譯)

描述

如果你認為自己對 ASP.NET 了如指掌,那就再想想。這本卓越的指南為你提供了使用 ASP.NET 3.5 和其他尖端 Microsoft 技術進行網站建設的專業課程。你將學會如何開發堅如磐石的網頁入口應用程式,能夠承受每天數百萬的訪問,同時應對可擴展性和安全性壓力——不僅僅是針對大眾消費者的首頁,還包括為企業提供強大內容聚合的儀表板。

本書由 Pageflakes 的共同創辦人及首席技術官 Omar AL Zabir 撰寫,使用 ASP.NET 3.5 建立 Web 2.0 入口網站 展示了如何使用 ASP.NET 3.5、ASP.NET AJAX、Windows Workflow Foundation、LINQ 和 .NET 3.5 開發類似 My Yahoo!、iGoogle 和 Pageflakes 的入口網站。在本書的過程中,AL Zabir 建立了一個開源的 Ajax 啟用入口網站原型(可在線訪問 www.dropthings.com),並帶領你了解設計和架構挑戰、高級 Ajax 概念、性能優化技術以及伺服器端可擴展性問題。

你將學會如何:
- 實現高度解耦的架構,遵循流行的 n-tier、基於小工具的應用模型
- 提供拖放功能,並使用 ASP.NET 3.5 建立網頁層的伺服器端部分
- 使用 LINQ 建立數據訪問層,並使用 Windows Workflow Foundation 建立作為工作流集合的業務層
- 使用 JavaScript 建立客戶端小工具,以獲得更快的性能和更好的緩存
- 從 ASP.NET AJAX 框架中獲得最佳性能,以實現更快、更動態和可擴展的網站
- 建立自定義的網路服務調用處理程序,以克服 ASP.NET AJAX 1.0 在異步、事務性、友好的緩存網路服務中的不足
- 克服 JavaScript 性能問題,幫助用戶界面更快加載並更具響應性
- 隨著網站用戶從數百人增長到數百萬人,解決可擴展性和安全性問題
- 部署並運行高流量的生產網站,同時解決軟體、硬體、託管和網際網路基礎設施問題

使用 ASP.NET 3.5 建立 Web 2.0 入口網站 也呈現了作者在建立教育和企業入口網站時所解決的現實世界 ASP.NET 挑戰,以及十三個常見於服務數百萬用戶的網頁應用程式的生產災難。如果你準備好建立最先進的高流量網頁應用程式,這本書正是你所需要的。

目錄

前言

1. 介紹網頁入口網站和 Dropthings.com
- 定義網頁入口網站
- 定義 Web 2.0 入口網站
- 使用網頁入口網站
- 瀏覽 Dropthings
- 使用 ASP.NET AJAX
- 使用 C# 3.0 和 .NET 3.5
- 總結

2. 設計網頁入口網站和小工具
- 使用小工具框架
- 添加小工具
- 最大化首次訪問體驗
- 渲染二次訪問體驗
- 改善 ASP.NET AJAX 性能
- 添加身份驗證和授權
- 防止拒絕服務攻擊
- 總結

3. 使用 ASP.NET AJAX 建立網頁層
- 實現網頁入口網站的起始頁
- 為多列拖放區建立自定義拖放擴展
- 實現 WidgetContainer
- 建立小工具
- 頁面切換:模擬非回發體驗
- 在網路服務中使用 Profile 物件
- 實現身份驗證和授權
- 實現登出
- 總結

4. 使用 .NET 3.5 建立數據和業務層
- 介紹 LINQ to SQL
- 使用 LINQ to SQL 建立數據訪問層
- 介紹 Windows Workflow Foundation
- 使用 WF 建立業務層
- 實現 DashboardFacade
- 總結

5. 建立客戶端小工具
- 延遲伺服器端小工具加載
- 內容代理
- 建立客戶端 RSS 小工具
- 建立客戶端 Flickr 小工具
- 總結

6. 優化 ASP.NET AJAX
- 將多個 Ajax 調用合併為一次調用
- 設定 Ajax 調用到伺服器的時間和順序
- 使用 HTTP GET 調用而非 HTTP POST
- 使用 this 函數
- 總結

7. 創建異步、事務性、友好的緩存網路服務
- 網路服務的可擴展性挑戰
- 異步網路方法
- 修改 ASP.NET AJAX 框架以處理網路服務調用
- 開發自己的網路服務處理程序
- 創建異步和友好的緩存代理
- 擴展和保護內容代理
- 總結

8. 改善伺服器端性能和可擴展性
- 儀表化你的代碼以識別性能問題
- 優化 HTTP 管道
- 在上線前優化 ASP.NET 2.0/3.5
- 優化 ASP.NET 會員表中的查詢
- 在上線前優化 ASP.NET 2.0/3.5 配置提供者
- ASP.NET 生產挑戰
- 將流量從舊網站重定向到新網站
- 總結

9. 改善客戶端性能
- 了解網頁緩存
- 內容傳遞網路
- 優化 Internet Explorer JavaScript 性能
- 減少網路服務調用的有效載荷
- 按需加載 UI
- 使用預讀緩存進行 Ajax 調用
- 隱藏 HTML 在 中
- 總結

10. 解決常見的部署、託管和生產挑戰
- 在網頁伺服器群中部署你的網站
- 十三個隨時可能發生的生產災難
- 選擇合適的託管提供商
- 選擇網站監控工具
- 配置適當的性能計數器
- 總結

索引