Thursday, December 12, 2013

_vti still around?

The hallmark of an old IIS site, the _vti_cnf , _vti_pvt, _vti_script, _vti_txt directories in the root. Yes, the FrontPage server extensions.

But FrontPage has been discontinued for over 5 years now. Why would anyone still have those?

Most .NET Microsoft products obsoleted this in favor of WebDAV, but Visual Studio 2005 and 2008 still publishes ClickOnce applications to websites with FrontPage Server Extensions.

IIS 6 to IIS 7

IIS 7 : Manage web farms from one place.

IIS 7 : You can have SITE OWNERS and thus delegate management to them.
Also, you can DEPLOY APPLICATIONS PRECONFIGURED.
...configuration settings are housed in the site's directory (instead of centrally for entire server)...web.config .


IIS 7 has central config file : %WINDIR%\System32\InetSrv\Config\applicationHost.config
instead of IIS 6's metabase.xml.
There is no "configuration service" required for IIS 7 (IISADMIN not required).

IIS 7: No "in-memory representation of a configuration". That means once a config file is changed, it is picked up immediately.

C:\Windows\System32\inetsrv\config\schema\IIS_schema.xml also has default values for any property not specified in individual config files.


IIS 7 has BUILT-IN SUPPORT FOR PHP !

The tool provided by MS for migrating was called "MS Deploy".

IIS 6 Script Maps ===> IIS 7 Handler Mappings (both are for customizing how certain files and file extensions are handled by server)

IIS 7 has AppCmd.exe, a command line tool for managing IIS.

IIS 7 still has following concepts: site/application/virtual directory

In IIS 6.0, the concepts of virtual directories and applications were confusing. Although they were discussed as separate concepts, (and they were conceptually different from a functionality standpoint), an application was not a physically separate object from a virtual directory. In IIS 6.0, an application was really just a virtual directory with one or a combination of the following properties in the metabase: AppFriendlyName, AppRoot, AppIsolated, and AppPoolID.

Note: The site root is an exception, as it was implicitly treated as an application even if those properties were not set.

Applications were less important to IIS than to the technologies that extended Web server functionality, such as Active Server Pages (ASP), Internet Server Application Programming Interface (ISAPI), and ASP.NET. These technologies provided additional features and processing for applications hosted in IIS 6.0, and enabled developers to create more complex applications. The important question for IIS 6.0 was isolating such applications in a way that would prevent applications in one application pool from affecting applications in another application pool on the server.

IIS 7 and above formalizes the concepts of sites, applications, and virtual directories. Virtual directories and applications are now separate objects, and they exist in a hierarchical relationship in the IIS configuration schema. Briefly, a site contains one or more applications, an application contains one or more virtual directories, and a virtual directory maps to a physical directory on a computer. (and furthermore, each site contains at least one default application which also contains at least one virtual directory)

Difference between UDP and TCP

UDP = User Datagram Protocol, a connectionless protocol that, like TCP, runs on top of IP networks. Unlike TCP/IP, UDP/IP provides very few error recovery services, offering instead a direct way to send and receive datagrams over an IP network. It's used primarily for broadcasting messages over a network.

Connectionless means a host can send a message without establishing a connection with the recipient. That is, the host simply puts the message onto the network with the destination address and hopes that it arrives. Examples of connectionless protocols include Ethernet, IPX, and UDP.

In contrast, connection-oriented protocols, such as TCP, require a channel to be established between the sender and receiver before any messages are transmitted... streams of data are exchanged...
TCP guarantees delivery of data and also guarantees that packets will be delivered in the same order in which they were sent.

Indigo = WCF

...part of Longhorn (which became both Vista and Windows Server 2008)...
Microsoft's product offering for creating Service Oriented architected (SOA) solutions...

What was the reason for Services now (as opposed to, say, just a component ... )

" Many applications can call a service, and the service won't crash if one of the consuming applications breaks."

Wednesday, December 4, 2013

XAML was originally promoted as bringing 3D to Windows apps....

"‘Avalon’ is the code name for the next generation of the windows presentation system. This will provide a whole new vector-based 3D graphics system that will combine windows, documents and media content into a new rich presentation layer that can be programmed using XAML (Extensible Application Mark-up Language – pronounced “zammel”).
Avalon takes and combines the relative strengths of programming with WinFX and mark-up language (XAML) to provide a greater level of abstraction between data and rendering in the user interface. This all amounts to a more lightweight and easier-to-program 3D graphical interface. "

Java Terminology

Swing is the primary Java GUI widget toolkit.
JavaBeans are reusable software components for Java. Practically, they are classes that encapsulate many objects into a single object (the bean).

Component-based vs Service-based

Win32 -> WinFX (.NET)
CBA vs SOA
COM vs .NET