
Ruslan Yakushev began working as a Program Manager on the Internet Information Services (IIS) team about two years ago. During this time, he led the development and release of several key components of IIS: FastCGI, URL Rewriter, Dynamic IP Restrictions.
In addition to this, one of the activities of Ruslan is interaction and collaboration with the PHP community of developers to improve the functionality and performance of PHP applications on the Windows platform.
Before joining the IIS team, Ruslan worked for 5 years in the BizTalk Server team, where he participated in the release of Microsoft BizTalk Server 2004 and 2006. For more information about Ruslan, see his blog ruslany.net.
Questions for the interview
were asked in this topic .
')
I apologize for the long delay in posting responses. Interview with Eugene Osovetsky and Alex Mogilevsky on the way .The text of the interview with Ruslan
What have you recently written in PHP for yourself (personal use)?[RY]: During my last few months in my free time, I’m writing a WordPress plugin (
http://wordpress.org/extend/plugins/wp-media-player/ ). I published the first version in January of this year and since then there have been about 900 downloads of the plugin. I recently released a new version that contains several new features.
Why, with a lot of metabase nodes, is the memory size consumed by IIS7 more than 5 times larger than in IIS6?[RY]: As the user who asked the question (
dmach ) correctly noted, IIS 7 uses an XML-based configuration system, and this increases memory consumption compared to IIS6. Also in IIS 7, delegation and configuration isolation is added, which makes it necessary to store multiple copies of the configuration. However, the IIS team made many optimizations to reduce memory consumption, since IIS 7 is positioned as a server that can be used in hosting companies with multiple sites on a single server. The problem of increased memory consumption was never mentioned by the hosters with whom we worked. But this may be because hosters use separate workflows for different sites, and not all workflows are active at the same time.
dmach seems to use one workflow for thousands of web sites. This is a supported configuration, but not recommended. Maybe this causes a fivefold increase in memory consumption. It's hard to say without knowing the details. If
dmach can provide configuration details where it observes an increased memory consumption, then it will be possible to more specifically understand what caused it. Also, the IIS team recently released a QFE, which fixed a bug causing increased memory consumption in some situations. dmach can try to install this QFE. For more specific information on this issue, you can contact me directly through my blog:
ruslany.net/contactI really want in future versions to be able to see how much memory individual sites or executable requests consume within one workflow. Is this opportunity being considered?[RY]: No, it does not. The recommended configuration in IIS is the separation of sites into separate workflows. All monitoring tools in IIS are configured for this configuration.
Will the next version of IIS understand the bindings of IDN-domains in the form of xn - blablabla as I can now do all other web servers including IIS version 6? IIS version 7, unfortunately, can not. Read more here - dmach.livejournal.com/136446.html[RY]: In the next version of IIS, IDN-domain bindings will occur as in IIS7. To specify an IDN domain in IIS7, you must use the Unicode format. The conversion to punycode will be done automatically in IIS. For more information on how to work with IDN-domains in IIS7, you can read here:
blogs.iis.net/thomad/archive/2008/03/05/hosting-220-bersites-iis7-support-for-international-domain-names -idn.aspxSince this change may break sites when migrating from IIS6 to IIS7, the IIS Web Deployment team is considering adding support for punycode conversion when migrating sites with IDN domains from IIS6 to IIS7.
Is it possible to execute php executable processes in FastCGI mode under IIS version 6 with rights different from those of the IIS workflow with a module? If not, is it planned to develop this module for previous versions of IIS with this (or any other, irrelevant) functionality or is it fixed in its current form and will not be developed?[RY]: Now this is not possible. There is impersonation, but as far as I understand, this is not exactly what dmach asks. Technically, this is not difficult, and theoretically it sounds like an interesting opportunity. Just no one asked about it until now. I am interested in learning more in which specific cases impersonation is not enough. If there are real situations where it will be useful to configure permissions to run FastCGI processes, then I do not see any special problems with the addition of such functionality in future versions of the FastCGI module. We just recently released FastCGI extension 1.5 Beta and reviews and suggestions are still being accepted. You can send suggestions on functionality specifically to me, or to the forum:
forums.iis.net/1103.aspx (
or via gaidar - ca. gaidar )
In future versions of IIS, will the management console be optimized to work from the keyboard and to minimum screen extensions such as 800x600? It makes sense to work with IIS in conditions other than ... good, for example, in ds on an unknown monitor, which can no longer or on a laptop (or, forgive my God, netbook) via RDP.[RY]: IIS console supports keyboard operation. You can also work with it at a resolution of 800x600. This of course is not as convenient as with a higher resolution - you have to scroll more. No changes, as I know, are not planned in this regard.
Does Microsoft plan in future versions to create for IIS / FTP its user base not associated (or optionally) with Windows users (as is now done, for example, in SQL Server)? What are the disadvantages of this approach in relation to IIS?[RY]: IIS has its own user base. There is support for IIS Management Users that can be used with FTP:
learn.iis.net/page.aspx/321/configure-ftp-with-iis-70-manager-authentication . The same user base can be used for remote administration of web sites
learn.iis.net/page.aspx/159/configuring-remote-administration-and-feature-delegation-in-iis-7 .
Inside Microsoft, IIS is positioned as a solution to support one or two sites on a server or as a solution for a wide range of tasks? Have IIS version 7 been tested internally in tens of thousands of sites per IIS-unit? If so, was the testing team satisfied with the results of such testing?[RY]: Inside Microsoft, IIS is positioned as a solution for a wide range of tasks. For example, one of the directions is hosting support. A number of internal testing of IIS7 as a hosting platform was conducted. When testing, up to 4000 sites of various types (ASP, APS.NET, PHP, static) were used on one server. The server configuration complies with all the recommendations we give to hosting companies (
learn.iis.net/page.aspx/31/hosting-guidance-for-the-microsoft-web-platform ). With this configuration, the test results were quite acceptable and met the requirements of the hosting.
How big is the development team working on IIS?[RY]: Compared to other teams at Microsoft, IIS is quite small — just over 40 people.
What difficulties did Ruslan face in the work of the program manager? How were such problems solved?[RY]: The biggest difficulty was when I started working in Microsoft. It was not at all clear what was expected from the program manager and what should be done. Developers write code, testers test, and PMs don't seem to do anything concrete. Only after a while I began to understand what exactly should be done and how I can benefit.
Another difficulty that exists not only in the work of PM, but also among developers and testers is constant randomization. Over time, you begin to understand that it is necessary to prioritize tasks very hard and you must learn not to be distracted and, if necessary, refuse, when someone asks you for something. Otherwise, it is simply not possible to do any work with high quality.
What features are planned for the future?[RY]: I will not talk about specific features, as this is confidential information. Now the team has several priority areas of work, so basically new features will be associated with these areas. For example, it is very important that popular web applications are supported on IIS, easily installed and configured. The Microsoft Web Platform Installer is the first step in this direction and the IIS team will continue to work on this project. Also, PHP support in IIS continues to be a priority because most popular web applications currently use PHP. Now PHP in Windows still lags behind Linux in performance. IIS team is actively working in this direction.