At the Intersection of PHP and Microsoft
I saw a Tweet on Monday that nicely summed up the start to my week:The only thing worse than a Monday is a Monday after #DrupalCon. I’m not sure I’ve quoted it exactly, but I’m sure I’ve captured the sentiment. My Monday wasn’t bad as in 3-day-hangover bad, it was just bad in that it was a let down after the fun and intensity of DrupalCon Denver. I met lots of great people, had many interesting conversations, and learned a ton. Mix in a few parties, and it was an excellent week.
The highlights for me were Alessandro Pilotti’s pre-conference training: Deploying Drupal at Scale on the Microsoft Platform. Alessandro did a live demo of using Application Request Routing and Web Farm Framwork to very quickly create a Drupal web farm that could be easily scaled out. That he was able to do this in less than an hour (the demo, not the entire training) was impressive (as was the 480 GB SSD, 16 GB RAM laptop he used to simultaneously run 4 Windows VMs!). You can read a summary of the demo and get the detailed training slides here.
Alessandro followed Monday’s training with a Lightning talk on Tuesday about using PhoneGap to develop mobile applications for any platform, including Windows Phone. After hearing Luke Wroblewski’s keynote address on Thursday (he talked about the growth of mobile, the importance of developing for mobile, and the opportunities mobile creates…nice summary here), I’m keen to dig a bit deeper into PhoneGap.
Training aside, the highlight of the conference for me was meeting people and learning from the conversations I had with them. I still got a lot of “So, what is Microsoft doing at DrupalCon?” questions that I got 2 years ago at DrupalCon SF, and it was nice to be able to say what we’ve been doing. We’ve been working with community members to improve PHP performance on Windows, improve IIS functionality and tooling around PHP, improve the Drupal installation experience on Windows, develop Drupal modules that leverage the Microsoft platform, improve Drush on Windows, and develop free training courses (like Alessandro’s). And, this time around, some people even had specific Microsoft-related questions…
The question I was asked most often was something along the lines of “When will you support Drupal/Sharepoint integration?” The short answer was, “We do now!” Sharepoint 2010 provides several APIs – the tricky part is in determining which one to use. Since most people I talked to wanted some way to surface Sharepoint data (from internal-facing Sharepoint deployment) on an public facing Drupal deployment, I’m guessing that the Sharepoint 2010 Web Services API is going to be the easiest path (I’m assuming familiarity with REST). And, another option is the Content Manageability Interoperability Services (CMIS) connector.
That’s it for me. Hopefully, you got a chance to stop by our booth and chat a bit. If you did (and even if you didn’t), I’d be interested in hearing your thoughts in the comments below.
Share this on Twitter
I did a core conversation with Damien on a plan to adopt PHPCR. Not sure if you are aware but PHPCR is a PHP adaption of JCR with JCR being a language level API for storage persistence. CMIS is a protocol level API for storage persistence Apache Chemistry can basically expose any JCR repository via CMIS.
Now as there are teams looking into defining an API to expose nodes in some exchange format, I suggested to explore to do something similar for PHPCR, i.e. work on a generic library to expose any PHPCR repository via CMIS.
I am sure the Alfresco guys would be quite keen on that as well as they have been busy writing various CMIS modules for D7.
Thanks for sharing...sounds great. I'm assuming this is the conversation you are referring to: lanyrd.com/.../spzfq
we had php5.3.10, mysql, iis7, windows 2008 sp2 installed on one box
but we has a problem of loading php page slowly. We investigated the problem and we are sure there is a problem between request and iis. Because we change the db connection host 127.0.0.1 and none exist ip address, they both took a while to response the request. We researched the problem for a week. some people say is ipv6 problem. we disabled ipv6 still not solved. it seemed to a problem since the os is updated with patch.
You can use Failed Request Tracing (FRT) to troubleshoot your issue.
Here's a tutorial about how to enable it:
Set "Status Code(s)" to "200-399" and in "Select Trace Providers" choose "WWW Server", "Verbose" and e.g. all Areas.
This way it is possible to discover many bottlenecks related to IIS.