Welcome to MSDN Blogs Sign in | Join | Help

My MSDN Magazine Articles

I wrote some MSDN magazine articles but never really blogged about them:

.NET Framework Internals: How the CLR Creates Runtime Objects: http://msdn.microsoft.com/en-us/magazine/cc163791.aspx 

Build Line-Of-Business Enterprise Apps With Silverlight, Part 1: http://msdn.microsoft.com/en-us/magazine/2009.01.entslpt1.aspx

Code download: http://code.msdn.microsoft.com/mag200901Silverlight

Build Line-Of-Business Enterprise Apps With Silverlight, Part 2: http://msdn.microsoft.com/en-us/magazine/dd434653.aspx

Code download: http://code.msdn.microsoft.com/mag200902Silverlight

 

Regards,

Hanu

Posted by hanuk | 0 Comments

Windows 7 and Windows Server 2008 R2 Technet videos

The following videos were recently published; I am posting here so that I can find them some day!

 

Windows 7 Feature Overview

http://go.microsoft.com/?linkid=9670048&clcid=0x409

Demo 1:  Introducing DirectAccess

http://go.microsoft.com/?linkid=9670126&clcid=0x409

Demo 2:  Using Search Federation

http://go.microsoft.com/?linkid=9670127&clcid=0x409

Demo 3:  Using Windows PowerShell 2.0

http://go.microsoft.com/?linkid=9670128&clcid=0x409

Demo 4:  Configuring AppLocker

http://go.microsoft.com/?linkid=9670129&clcid=0x409

Demo 5:  Troubleshooting Windows 7

http://go.microsoft.com/?linkid=9670130&clcid=0x409

Windows 7 Deployment Enhancements

http://go.microsoft.com/?linkid=9670049&clcid=0x409

Demo 1:  Modifying Windows 7 Operating Systems with DISM

http://go.microsoft.com/?linkid=9670131&clcid=0x409

Demo 2:  Automating Deployment Using Windows Deployment Services

http://go.microsoft.com/?linkid=9670132&clcid=0x409

Demo 3:  Provisioning Virtual Machines

http://go.microsoft.com/?linkid=9670133&clcid=0x409

Windows 7 Manageability Solutions

http://go.microsoft.com/?linkid=9670050&clcid=0x409

Demo 1: Configuring Group Policy

http://go.microsoft.com/?linkid=9670134&clcid=0x409

Demo 2: Using Windows PowerShell 2.0

http://go.microsoft.com/?linkid=9670135&clcid=0x409

Demo 3: Using Support Tools

http://go.microsoft.com/?linkid=9670136&clcid=0x409

Demo 4: Exploring System Recovery Options

http://go.microsoft.com/?linkid=9670137&clcid=0x409

Technical Overview of Windows Server 2008 R2 Part 1

http://go.microsoft.com/?linkid=9670051&clcid=0x409

Demo 1:  Using Hyper-V™ Live Migration

http://go.microsoft.com/?linkid=9670138&clcid=0x409

Demo 2:  Booting from Virtual Hard Disk (VHD)

http://go.microsoft.com/?linkid=9670139&clcid=0x409

Demo 3:  Administering Windows PowerShell™ Remotely

http://go.microsoft.com/?linkid=9670140&clcid=0x409

Demo 4:  Using Active Directory® Management Enhancements

http://go.microsoft.com/?linkid=9670141&clcid=0x409

Technical Overview of Windows Server 2008 R2 Part 2

http://go.microsoft.com/?linkid=9670052&clcid=0x409

Demo 1:  Improving Availability and Scalability with Server Core

http://go.microsoft.com/?linkid=9670142&clcid=0x409

Demo 2:  Managing Web Applications with the Configuration Editor

http://go.microsoft.com/?linkid=9670143&clcid=0x409

Demo 3:  Installing and Using the Windows PowerShell™ Snap-In for IIS 7.5

http://go.microsoft.com/?linkid=9670144&clcid=0x409

Demo 4:  Configuring an FTP Server with the New Administration Interface

http://go.microsoft.com/?linkid=9670145&clcid=0x409

Demo 5:  Connecting to Windows 7 Clients Using DirectAccess

http://go.microsoft.com/?linkid=9670146&clcid=0x409

Using the Windows Server 2008 R2 Migration Tools

http://go.microsoft.com/?linkid=9670053&clcid=0x409

Demo 1:  Installing Windows Server Migration Tools

http://go.microsoft.com/?linkid=9670147&clcid=0x409

Demo 2:  Migrating Active Directory®

http://go.microsoft.com/?linkid=9670148&clcid=0x409

Demo 3:  Migrating DNS Servers

http://go.microsoft.com/?linkid=9670149&clcid=0x409

Demo 4:  Migrating IP Settings

http://go.microsoft.com/?linkid=9670150&clcid=0x409

Demo 5:  Migrating DHCP Servers

http://go.microsoft.com/?linkid=9670151&clcid=0x409

Demo 6:  Migrating Local Users and Groups

http://go.microsoft.com/?linkid=9670152&clcid=0x409

Demo 7:  Migrating File Servers

http://go.microsoft.com/?linkid=9670153&clcid=0x409

Demo 8:  Migrating Print Servers

http://go.microsoft.com/?linkid=9670154&clcid=0x409


Cheers,

hanuk

Posted by hanuk | 1 Comments

Public versus Private Clouds

 

There has been lot of talk on the definition of Cloud Computing and the fundamental differences between public and private clouds in the architect and decision maker community. The definition I like for Cloud Computing is: “On-demand utility computing delivered through internet standards and protocols”.   This allows the flexibility of various cloud types including Public Cloud, Private Cloud, and other hybrid variants which may fall in between. These definitions are similar to the web application deployment taxonomy: internet, intranet, and extranet segmented based on the scope of the target audience.

Let us try to compare Public Cloud and Private Cloud ignoring the hybrid version for a moment... the two fundamental differences between the private and its public counterpart are:

1) Economy of Scale

2) Quality of Service

The core assumption behind the following comparison is that the Private Cloud will evolve organically while the Public Cloud will be built from ground up for a true multi-tenant environment.

Public Cloud virtualizes commodity servers, storage and networking thereby creating a massive pool of resources which can be paged in or out based on the on-demand computing needs of the overall ecosystem. The very survival of the Public Cloud depends on the extreme commoditization of the above IT resources and hence will form the core architecture tenet of the system.

Even though the vendors will provide the necessary tooling for enabling Private Clouds, these clouds will have to deal with the typical enterprise legacies and organizational dynamics. Private Clouds are expected to be built upon the same virtualization technologies as the public cloud but with the constraints of the existing virtualization silos and the not so economical resource pools as a result. However, these technologies will be no match to those built from ground up for enabling massive Private Clouds. Moreover, because of the organic nature of the Private Clouds, the resource pools tend to be siloed and the scope of multiplexing of servers will be limited to each silo.

Here are a couple of tables that list the factors that differentiates Public and Private Clouds:

Economy of Scale

Scale Factor

Public Cloud

Private Cloud

Size of the resource pool

100s of thousands of homogenous servers specially built for the cloud.

100s of general purpose servers with mix of old and new.

Abstraction level of the virtualization

A cloud platform can provide application containers running on virtual OS instances taking virtualization to the next degree. This will standardize the OS environment and help increase the density of the applications/OS instance.

Most private clouds will probably provide an OS instance on which the application teams need to build the runtime environment manually.

Effectiveness of service management

The tooling built for service management is massively optimized for Long Tail and hence will require less number of heads /1000 servers to manage the data center when compared to the typical Private Cloud.

More headcount / 1000 servers

Monetization and chargeback accounting

The very survival of this cloud depends on the objectivity of these tools and hence is expected to be part of the core architecture.

Since most private clouds will be based on legacy processes and practices, chargeback accounting will be an afterthought.

Pay as you go

Economies of scale enable public clouds to offer pay-per-use without any upfront fixed costs.

Economies of scale are the enablers of the pay-as-you-go model; not many private clouds will have the scale to pull this off. So, there will be upfront fixed cost followed by per-per-use fees.

Scope of heterogeneity of platforms

Public cloud provider can enter into licensing partnerships to offer a variety of software choices including operating systems, application servers, databases and other middleware components. Public Clouds can also create application marketplaces driving the costs further down for customers.

Limited heterogeneity considering the smaller scale of the operations.

Operational efficiency

Can have hundreds of thousands of servers with highly automated operational management tools. As a result, Public Clouds are 5 to 7 times less expensive to operate.

May contain a few hundred to couple of thousand servers; this kind of scale can’t compete with the Public Cloud in terms of the investments made in automating the operations.

Scale of the resource pool

Virtualization of the servers, network and storage will be across the data center.

Because of the organic nature of the evolution of the private cloud, there will be several silos of resource pools which will limit their application density resulting in less than optimal usage of the servers.  

Maturity of the infrastructure and tools

Public Clouds can invest in state of the art resource managers (E.g. Azure Fabric Controller) which can allocate and garbage collects the resources returning them to the pool when no longer needed.

They Dynamic Data Center toolkit probably is built as an afterthought relies on the existing infrastructure elements (VMM, System Center, Windows Server 2008, etc.) and hence may not be as optimal as its Public counterpart.

 
Quality Of Service

QOS Factor

Public Cloud

Private Cloud

Service level guarantees

The advertized SLA will be met as there are legal frameworks surrounding the cloud deployments. The cloud provider will agree to compensate financially for any losses as a result of the service level failures.

There may not be any legal frameworks for guaranteeing SLA in a private environment.

Quality of human resources

Can afford to get the best of the best in the industry (e.g. power architect, cooling architect, systems architect)

Will have to settle for the existing data center personnel.

R&D Investment

Can afford to pour billions of dollars as it is the core business of the service provider.

The investment is limited as Private Clouds will be constrained by the IT budget. As IT is generally a support function in most non-software companies, the investment can’t compete with its public counterpart.

Security

State of the art security and service management practices. The following are some of security practices from Microsoft Global Foundation Services:

• 24 hour security incident management

• Global Criminal Compliance

• Defense-in-depth approach for data security

• Need-to-know and least-privilege model for Identity and Access Management

• Security Development Lifecycle for ensuring Applications

Private clouds can’t match Public Clouds in terms of the stringent framework driven approach to security.

Compliance

Because of the global nature, the scale of operations and the Service Level Agreements with financial implications, Private Clouds will have to comply with various regulations and standards.

Typical certifications and standards as below:

Data Center Certifications

• ISO/IEC 27001:2005

• SAS 70 Type I and Type II

Operational Compliance

• Payment Card Industry Data Security Standard

• Media Ratings Council

• Sarbanes-Oxley

• Health Insurance Portability and Accountability Act

• Internal audit and privacy assessments

Compliance scrutiny may be less rigorous than their Public counterparts.

Quality of the personnel

Considering the LongTail reach, Public Clouds will spare no cost in getting the best of the best in the industry. For instance, Public Clouds can afford to hire the best security and power architects for designing and operating their data centers.

Private Clouds are organic in nature and may have to leverage the existing skills at whatever level they may be in.

 

For a quantitative discussion of Cloud economics, please refer to the paper from UC Berkeley RAD Lab: http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.html 

I hope this helps!

 

Regards,

Hanu

 

(Disclaimer: This blog post represent my own personal views and do not necessarily reflect the views of the Microsoft Corporation.)

Posted by hanuk | 1 Comments

Designing Generation 4.0 Data Centers

The following couple of postings explore the business challenges associated with the building of next generation data centers:

Designing Generation 4.0 Data Centers: The Engineers’ Approach to Solving Business Challenges - Part 1

Designing Generation 4.0 Data Centers- The Engineers’ Approach to Solving Business Challenges - Part 2

Daniel is the Director of Data Center Services at Microsoft GFS business unit.

Cheers,

Hanu

Posted by hanuk | 1 Comments

Windows PHP Virtual Labs

Here is a list of the recently published PHP virtual labs for those who wants to learn about running PHP applications on Windows Server:

· TechNet Virtual Lab: IIS 7.0 Access Control Features for PHP Applications

· TechNet Virtual Lab: Migrating PHP Applications

· TechNet Virtual Lab: Troubleshooting PHP

· TechNet Virtual Lab: Using IIS 7.0 Media Features in a PHP Application

 

Regards,

Hanu

Posted by hanuk | 1 Comments

IS SOA Dead?

Anne Thomas Manes, a well respected SOA analyst from Burton Group (http://apsblog.burtongroup.com/2009/01/soa-is-dead-long-live-services.html) talks about SOA (as originally envisioned – to reduce costs, increase business agility, compose solutions from existing services, blah blah blah...) being dead and I am only too happy to agree with the observation! SOA will see marginal success in IT optimization in traditional enterprise and will see huge success in cloud computing.

For the past 5 years I have seen so many companies trying to achieve the nebulous goals set by SOA programs and ending up with some kind of green-yellowish goo that could not be washed off their hands easily. Majority of the Enterprise Architecture programs that have been running with SOA are in the danger of shutting down their EA programs taking down SOA with them in the process. Most SOA programs are seen by the business units as an IT optimization (which it really is) with no established proof points for business capability optimization. This chasm is only made wider by the organizational politics.

There are two connotations to SOA: SOA-B (business enablement) and SOA-R (new Revenue streams through SOA enabled business models). If you want to see the differences between these two read the blog post: http://blogs.msdn.com/hanuk/archive/2006/02/12/530727.aspx. SOA-B that supports IT optimization has seen sporadic success in cracking open the data silos. It never was and will be successful in canonicalization and normalization of business processes that span multiple political boundaries within the organization. SOA has seen sporadic success in replacing EDI VAN networks for partner integration. SOA is too good to be true!

However there are cases where SOA directly creates/supports revenue streams (e.g. Amazon web services, Google Apps, Microsoft Azure services platform, companies like Reuters and Infospace that syndicate content ) without which the business cannot exist. In this case it is very easy for IT to show the business value signaling the tight business alignment through quantitative ROI indicators. There will be nothing but success for SOA in these scenarios. SOA-R is the key success factor for delivering solutions in Cloud computing. Please see SaaS (or our own S+S) and SOA relationship at http://blogs.msdn.com/hanuk/archive/2007/04/08/saas-and-soa.aspx . If a company’s main business enabler is reaching out the Longtail (See Chris Anderson’s article on this subject in Wired magazine http://www.wired.com/wired/archive/12.10/tail.html) which is the case with Cloud services providers, SOA will see a huge success there.

Regards and happy New Year,

Hanu

Azure resources

Microsoft Azure Services platform allows the creation of logical application ecosystem from the applications spread across proprietary data centers. This reduces IT inertia in meeting the changing business needs and thereby improving business agility. Microsoft made a slew of announcement at PDC 2008 and the following are a few resources to get more information on the announcements:  

CCR and DSS Toolkit 2008 datasheet

Live Services Fact Sheet (.doc file, 36 KB)

Azure Services Platform Fact Sheet (.doc file, 40 KB)

Windows Azure Fact Sheet (.doc file, 33 KB)

Windows Communication Foundation 4.0, Windows Workflow Foundation 4.0 and Windows Server “Dublin” - Fact Sheet (.doc file, 73 KB)

Oslo Fact Sheet (.doc file, 40 KB)

Microsoft SQL Data Services Fact Sheet (.doc file, 41 KB)

SQL Server – Developer Focus (.doc file, 33 KB)

Blogs

Azure Services Platform Delivers on Microsoft’s Commitment to Openness

Microsoft loves everyone!

Recorded sessions of the Microsoft PDC 2008 keynotes(Ray Ozzie and other executives) and breakouts can be watched online at http://www.microsoftpdc.com .

Cheers,

Hanu

Posted by hanuk | 1 Comments

Microsoft loves everyone!

CEO of Salesforce.com suggests that Microsoft hates everyone( http://venturebeat.com/2008/11/03/salesforcecom-on-microsoft-they-hate-everybody/) by suggesting that we are not an open cloud platform. His assertions are debatable and even his love to everyone is not unconditional (please see http://blogs.zoho.com/uncategorized/mr-benioff-tear-down-that-wall/ ) :)

When it comes to openness of the cloud platform, one has to differentiate between application portability (design time) and runtime interoperability. At its core, every compute cloud is proprietary in nature to some extent from the application portability perspective. Once you go with a service provider like Salesforce, Google, Amazon or Microsoft, you are locked into a Cloud platform. This is similar to SAP, Orcale and Microsoft business applications on-premise. In order for the design time portability to be a reality, lot of work needs to be done in the standards space so that if you don't like a service provider, you can extract your package of data and application and take it somewhere else. I am not sure if that will happen any time soon. Even Mr. Benioff admits that it is still a weakness with Salfesforce platform.

If you look at the runtime interoperability, it is the critical success factor to the very survival of any cloud platform. Considering the heterogeneity of the cloud consumers, run time interoperability limitations will only be detrimental to the provider and am sure even Microsoft is aware of that. Azure Services platform seems to be more comprehensive set of platform capabilities that can seamlessly interoperate with either on-premise systems or in-the-cloud systems. Who can argue with the runtime interoperability of REST and SOAP based layer surrounding Azure platform. For the foreseeable future, we have to live with on-premise systems be it Microsoft or otherwise. Whoever offers a comprehensive platform that will take into account the pure cloud based interoperability combined with organic coexistence of the on-premise systems, will make the transition painless and should be your friend!

So, Microsoft doesn’t hate everyone as Mr. Benioff suggests; they love everyone by offering the most flexible and extensible cloud platform that is interoperable with other cloud and on-premise systems through web services. Azure offers broad language and development tool choices (VB, C#, Java, Ruby, PHP, Python, Ecliplise, ...) than Salesforce.

In my professional life, I have seen the industry inflexion points that were touted as the panacea for all our computing illnesses – CASE, OO, CORBA, DCOM, SOA, MDM, MDA, etc. Whenever I see a new trend  I am a bit cautiously optimistic including our own until I saw Azure in action.

I never been so excited as when I saw Azure cracking open the data center silos through standards based interoperability and in the process reducing IT inertia that often comes in the way  business dynamics. Hammering out business deals between companies (Microsoft/Yahoo deal was an exception of course;)) based on the win/win framework is very straight forward and often IT’s inability to cope with the change (I would like to call this – IT Inertia) comes in the way of these deals from becoming a success. If you picture Azure running the applications of both ends of the partnership, IT risk is minimal compared to proprietary data centers. Even if Azure does not run both ends, partner IT orgs should easily bounce messages off the Azure cloud in a secure manner to attain seamless integration with optimal IT spend.

AZURE Services platform when fully implemented,  creates a logical data center out of several physical proprietary data centers thereby reducing IT inertia and in the process paving way for each creation new business value chains!

Cheers,

Hanu

Silverlight2 RTW Announcement

Here is the Microsoft press release on Silvelright2 RTW:

http://news.moneycentral.msn.com/ticker/article.aspx?Feed=PR&Date=20081013&ID=9263913&Symbol=MSFT

It will be available for public download on October 14th (tomorrow) at http://www.microsoft.com/silverlight.

With this press release we also announced the technology preview of the Soyatec project available today at http://www.eclipse4sl.org, with a complete version available in second half of 2009.

More information and the facts about Silverlight can be found at:

http://www.microsoft.com/presspass/presskits/silverlight/default.mspx.

 

Silverlight is already reaching 25% of the world consumer desktops!

Considering its short history, this is an amazing rate of adoption and is a testament to the fact that consumers will take notice when a good piece of software is out there!

 

Enjoy Silverlight2!

-Hanu

Posted by hanuk | 0 Comments

Apache httpd configuration for IE7 standard mode rendering in IE8

(Note: The following instructions are for information purpose only and correspond to Apache 2.2 on Windows. It should be pretty straight forward to translate them to LINUX and other UNIX variants. The guidance shown here has to be thoroughly tested in a non-production environment before applying it to production web servers. )

IE8 allows web pages to be rendered in IE7 standards mode (and numerous other modes) that can be quite useful for a web site that needs the immediate risk mitigation of rendering issues in IE8 standards mode.  IE8 recognizes the response header X-UA-Compatible and triggers appropriate layout engine and rendering behaviors. The following are various values of the response header and the appropriate behaviors:

Response Header Name

Value

Description

X-UA-Compatible

IE=5

Renders content in IE5 standards mode (aka Quirks mode)

X-UA-Compatible

IE=7

Renders content IE7's standards mode ignoring the <!DOCTYPE> directive.

X-UA-Compatible

IE=EmulateIE7

Use the <!DOCTYPE> directive to determine how to render the content

X-UA-Compatible

IE=8

Renders content in IE8 standards mode

X-UA-Compatible

IE=edge

Renders content in highest mode available… equal to IE=8  if the page is browsed with IE8.

X-UA-Compatible IE=EmulateIE8 Display Standards DOCTYPEs in IE8 Standards mode; Display Quirks DOCTYPEs in Quirks mode. Use this tag to override compatibility view on client machines and force Standards to IE8 Standards.

 

For more details on the compatibility modes, please visit the following URL:

http://msdn.microsoft.com/en-us/library/cc288325(VS.85).aspx

IE=EmulateIE8 is brand new in beta2. Beta2 also creates new user interface for compatibility view and and the details can be found at:

http://blogs.msdn.com/ie/archive/2008/08/27/introducing-compatibility-view.aspx

 

Now coming to our main topic of Apache 2.2 HTTP Server configuration, the response can be set at the server level, directory level or within the individual HTML page as shown in the figure below:

 

 

 

image

 

The setting at the web page  level will override the higher level values.

Follow the instructions below to set the X-UA-Compatible response header for each of the levels indicated above:

Set server level response header

1. Open httpd.conf in a text editor

2. Uncomment (or add)  “LoadModule headers_module modules/mod_headers.so

3. Add the following configuration fragment at the end of the httpd.conf file:

<IfModule headers_module>

   Header set X-UA-Compatible: IE=EmulateIE7

</IfModule>

4. Save httpd.conf file

5. Restart the Apache server

6. Browse the test web page

 

The above setting will insert X-UA-Compatible header in all the HTTP response streams. Presence of the HTTP response header can be confirmed by using tools like Fiddler.

Set directory level response header

Directory level override can be done by following the instructions given below:

1. Open httpd.conf in a text editor

2. For the directory in question (say ie8test) set the override as below:

<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/htdocs/ie8test">

    Options Indexes FollowSymLinks

    AllowOverride All

    Order allow,deny

    Allow from all

</Directory>

                (Note: AllowOverride All will make the server read .htaccess file located in the directory)

3. Create .htaccess file in the directory if not already present

4. Open .htaccess file in a text editor

<IfModule headers_module>

Header set X-UA-Compatible: IE=EmulateIE7

</IfModule>

5. Restart the Apache server

6. Browse the web page

For additional syntax on request and response headers for Apache 2.x visit:

http://httpd.apache.org/docs/2.2/mod/mod_headers.html

 

Set page level response header

1. Open the html page in a text editor

2. Insert   <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />  inside the <head>  element as shown below:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Strict//EN">

<html>

<head>

  <!– Tell IE8 to display in IE7 standards mode -->

  <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />

  <title>IE7 emulation test page</title>

</head>

<body>

  <p>IE7 specific content goes here</p>

</body>

</html>

3. Save the web page

4. Browse to test the behavior

 

If the entire site needs to run in IE7 standards mode with the exception of a few directories which need to override, create .htaccess file in each directory and set X-UA-Compatible value appropriately. In the following figure, entire server (e.g. Directory3 and other directories not shown) content runs on IE7 standards mode while Directory1 runs in "quirks mode" for IE5 behavior and Directory2 runs on IE8 standards mode

 

 

image

 

 

Use may use the sample HTML  given below for testing the correctness of the compatibility setting.  This HTML renders well in IE7 compatibility mode but the DIV elements get overlaid in IE8 standards mode:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

<head>

  <title> Test Page</title>

  <style type ="text/css">

   #OuterDiv {

       text-align: center; width: 300px; height: 150px; border:  5px black solid;

   }

   #Paragraph {

       width: 150px; border: 2px red solid; background: green; color: white;

   }

   #InnerDiv {

       position: absolute;  top: 50px; left: 20px; width: 50px; height: 50px;

       background:blue; color: white; text-align: center;

   }

  </style>

 </head>

 <body>

  <div id="OuterDiv"> Outer Div

   <p id="Paragraph"> This is a paragraph</p>

  </div>

  <div id="InnerDiv">InnerDiv</div>

 </body>

</html>

 

Before each test, make sure that you touch the file so that the server will send the entire file contents instead of a HTTP 304. 

Here are a few useful links for IE8 compatibility:

http://blogs.msdn.com/ie/archive/2008/08/27/introducing-compatibility-view.aspx

http://blogs.msdn.com/ie/archive/2008/06/10/introducing-ie-emulateie7.aspx

http://support.microsoft.com/kb/952030

http://MSDN.com/IECompat

 

For the latest on IE8, please visit: http://blogs.msdn.com/ie/

 

Hope this helps!

Cheers,

hanuk

Posted by hanuk | 7 Comments

Distributed in-memory cache - Velocity

Distributed in-memory cache from Microsoft at last!

Velocity is the code name for this distributed in-memory cache with the following features:

  • Distributed in-memory cache
  • A cluster of cache hosts provides fault tolerance
  • Supports optimistic as well pessimistic locking of cached objects
  • Manage the memory footprint through cache expiration (TTL) and LRU based eviction
  • Supports named caches and searchable regions
  • Client side cache using cache-aside pattern
  • ASP.NET session synchronization
  • Uses TCP/IP between the cache client and the cache cluster
  • The cache host is a Windows service running on a physical server. The host service can run on the same server as the cache client (e.g. web farm) or on a separate physical server with which the cache client (web server or other application client) can communicate with.

The above are a few aspects of Velocity as in the first CTP1 bits. The above may change during subsequent iterations of the product.

Velocity can be downloaded from the following location: http://www.microsoft.com/downloads/details.aspx?FamilyID=B24C3708-EEFF-4055-A867-19B5851E7CD2&displaylang=en

The Velocity team blog can be found at: http://blogs.msdn.com/velocity/

Cheers,

Hanu

Posted by hanuk | 2 Comments

.NET 3.5 SP1 Beta Feature Information

The best all-up run-down of all the features (WPF, ASP.NET, WinForms, VS etc.) can be found on Scott Guthrie’s blog:

http://weblogs.asp.net/scottgu/archive/2008/05/12/visual-studio-2008-and-net-framework-3-5-service-pack-1-beta.aspx

Tim Sneath's write-up of the WPF-specific features on his blog:

http://blogs.msdn.com/tims/archive/2008/05/12/introducing-the-third-major-release-of-windows-presentation-foundation.aspx

And lastly, Brad Abrams’ post has a ton of screenshots of the various features:

http://blogs.msdn.com/brada/archive/2008/05/05/visual-studio-2008-and-net-framework-3-5-sp1-beta.aspx

 

Cheers,

Hanu

Posted by hanuk | 1 Comments

Silverlight 2 Beta 2 is available now

We recently released Silverlight 2 Beta2 for public.  

Silverlight 2 Beta 2 plug-in (runtime), Beta 2 SDK, Silverlight 2 Tools Beta 2 for Visual Studio 2008 can be installed together from the following link:

http://go.microsoft.com/fwlink/?LinkId=120319

Blend 2.5 June Preview provides Silverlight 2 Beta 2 support and can be installed from the following link:

http://www.microsoft.com/expression/try-it/default.aspx?filter=prerelease

 

Here is a list of new features in Siverlight 2 Beta 2:

  • .NET programming support (Visual Basic.NET, C#.NET, Iron Python, IronRuby)
  • Isolated Storage for caching support on the client
  • WCF support
  • ADO.NET Data Services
  • LINQ to Objects and LINQ to XML
  • Deep Zoom technology
  • XML programming
  • Media content protection
  • Rich managed control framework
  • New set of controls to improve developer productivity (CheckBox, TextBox, RadioButotn, DataGrid, TabControl, etc.)

For more details please look at the following link: http://silverlight.net/GetStarted/overview.aspx

Cheers,

Hanu

Silverlight for the Enterprises - where are my dlls?

I recently spoke to a customer who wanted to know if Silverlight extracts the dlls (from the XAP) and stores them in the temp directories before building the type system in memory. The reason for the question was that they have a monitoring system that looks for patterns of unwanted files (e.g. *dll) and gets rid of them from directories except from the well known directories. When Silverlight downloads XAPs, it takes advantage of the browser cache in storing the packages. 

Once a package is located ( through download or from the cache), Silverlight runtime streams the IL code out of the XAP and constructs the assembly in memory. From there, construction of type system is straight forward.

So, as of beta1, Silverlight 2 will not leave any dlls persistently on the disk.

Cheers,

Hanu

Posted by hanuk | 8 Comments
More Posts Next page »
 
Page view tracker