All 2 entries tagged Linux
View all 55 entries tagged Linux on Warwick Blogs | View entries tagged Linux at Technorati | There are no images tagged Linux on this blog
September 21, 2008
The future of MS in the SME…
My grand plan has been to write a nice web based accounting package that’s simple to use and effectively can replace my use of Microsoft Money. All it needs do is track the accounts and also on-line updates and share pricing would be handy too. It also needs to work from any computer, no matter what it is running. Sure, Flash is on most computers around the world but really it should be a nice combination of AJAX and a suitable back end. Immediately half the world is thinking PHP/MySQL sounds ideal for this kind of use. It’s no surprise that this combination has caught on being relatively simple to learn and quick. In general though PHP is coded with the Business Logic and the Presentation Layer in the same files. Basically having ruled out PHP for this purpose, that leaves me with the choice of ASP.NET or Java (Built on J2EE & EJB 3.0). The chosen solution also has to tie in with my intentions to have a Content Management System, Online Photo Album/Media server and calendaring.
Since I’m a bit of a geek and like my Mac as well as Windows, I thought I’d give the Java solution the shot first. I could use MySQL to host the database and TomCat to do the serving, the only thing being that TomCat doesn’t support EJB 3.0. It has never been in my nature to use something older when a newer shinier toy is on the market so I set about looking for alternates. At work we have a sizeable amount of WebLogic servers and Oracle databases. As it happens I’ve spent most of the weekend playing working to get Oracle 11g running. I have a MacBook Pro with too much Ram and VMWare Fusion, and the experiences were… varied.
Looking at Weblogic first, this is really rather impressive. Using an on-line guide I was able to get Weblogic up and running on Mac OS.X, an unsupported platform but as it’s Unix and Weblogic is at heart a Java program, it worked successfully. Next point to mention is that Weblogic is FAST, scary fast. On the same hardware running a sample Java app (Alfresco) the Weblogic server Alfesco instance was many times quicker to respond than the version hosted on Tomcat. Both were using the default HSQL database too. I can’t quantify the measurement, but everything just moved quicker with less stutters. Score one for Oracle/BEA on that. The only issue I have is when shutting down WebLogic my memory use stays high for a long time after.
I didn’t fancy trying to install Oracle 11g on OS.X too because it’s not a Java app it’s a proper hardcore database, possibly THE hardcore database right now. OK, yes I know DB2 hosts a lot of OLTP databases too and MS SQL Server is also in the market at the lower end but Oracle has held the majority of the mid-range/top-end market for a long time. My first inclination was Sun Solaris 10 but unfortunately Oracle 11gis not supported on Solaris unless you have SPARC processors. Nice and meaty but I have an X86_64 architecture. That meant Linux. I’ve never been a big fan of Linux so far in life. My main issue with it is that there are just so many different distributions it’s almost impossible to pick one that “should work” with everything you want to throw at it. If your intended use is LAMP then it will work beautifully. Likewise if you want to serve files off it, no problem at all. The established components work very well. When it comes to administration though, you’d better be liking your Terminal windows though. Just about all my Administration experience is on Windows, with a smattering of OS.X too. But as Clarkson says ‘how hard can it be?’. Well very as it happens. I picked a distro of Linux. I wanted Red Hat being the biggest player, but you have to pay for that, so I went for the next best thing – Oracle Enterprise Linux. In other words Red Hat with a different badge. The install is quick and painless (remember to install the developer tools to allow compiling of VMWare Tools) and I was fairly confident up to this point. Then I started to run 11g setup. This was less exciting as an experience. Doing the sensible novice thing, I accepted all the defaults, confident in the knowledge that Oracle know a lot more about their product that I do. First time around I hit an error, my chosen user was not in the sudoers file and therefore I couldn’t sudo some of the install scripts. Logging in as root and attempting to add myself using visudo was an experience of a lifetime. Easy to get in, not a clue how to save and exit after. visudo appears to work differently to pico and has no helpful hints. Using su to temporarily become root and run the scripts, I completed the setup. Boldly pointing my browser at the address given, I attempted to log in to the Oracle Administrator interface. This is given as https://localhost.localdomain:1158/em/ and a very nice link it is too. Except if you leave out the s in https then you get it wanting to download a binary in Firefox, that doesn’t work well. When you don’t spot this you make things even harder for yourself. When you restart Linux you now have to work out how the hell to get the instance running again. This in itself can be something of a challenge and to be honest I’ve spent a good few hours looking for how to do this. (Script here)
This brings me nicely round to just why for the foreseeable future, Microsoft will continue to be dominant in the SME. It’s pretty much a given that any company will have a majority of Windows Desktop machines. There may be a few Macs in there, maybe even a few Sun or Linux boxes, but without fail the overwhelming majority in business today will be Windows. The biggest thing that today has brought out for me is just how complete and cohesive the MS Solutions are. Large companies, the ones that use Oracle, Weblogic and Solaris etc pay people to admin such programs. They most likely have dedicated Oracle Database admins who know almost nothing about say Active Directory but everything about how to keep Oracle performing at its best. When you’re a small company you don’t have an army of specialists. Usually the IT support starts with the one person that ‘knows a bit’ and grows from there. When you’re trying to do a day job, ease of use is everything and while the command line offers you ‘ultimate control’, it’s just not as friendly as a nice GUI. So why should an SME bother to learn Oracle/Weblogic/*NIX when they have a perfectly function Windows network anyway? This is why MS remain and will remain dominant here. If you already admin a small network with Active Directory, it’s not too much of a step to bring Exchange on board for your email and Calendaring. Yes it’s complex and you won’t get the best out of it like an Exchange admin would, but for your SME you don’t need that last 20% of performance either. Then you need a database, why learn another when SQL Server is available and works almost the same as Windows in terms of how the commands operate? Lastly you need a decent snappy server to serve a proper Web App. Chances are you’ll be able to find equivalent apps based on ASP.NET and Java at this level, so why bother to spend thousands on Weblogic or Websphere when you have IIS already. When it comes to patching, updating and protecting such setups too, MS can centralise all that under one roof, rather than checking one place to keep your mail servers patched, another for your database and more for your software.
Someone that wants to play will willingly learn how to make the heavy iron programs work in a semi-skilled way. Microsoft Server technologies make it possible to get there one heck of a lot faster though, and with a less steep learning curve. If you’re a FTSE 100 company then the performance and results you’ll get from the heavy iron architecture is worth every penny, to the SME though, there is little compelling reason to move to the higher end technologies. As SQL Server moves to version 2008 too, there is even less reason to move on as it comes ever closer to the Oracle feature set. If I was Oracle I’d start being a little worried about my market share vs my cost of ownership to some extent. Companies growing organically with an SQL Sever base are going to be less likely to move to Oracle for larger installs in future, simply because the time and investment is not going to provide the benefit. Of course, what do I know really? I’m just an amateur playing with professional tools… kind of like the IT department in most small companies.
As for me? Well I’m going to spend another day or so playing with Oracle, then I may well end up with an ASP.NET solution. Heck it might even be marketable as a package as all people would need is SQL Express (free), IIS (free with Windows XP Pro and better) and that’s it – one simple server.
June 16, 2007
Is the Enterprise ready for Open–Source?
If you look at the market share these days for internet web servers it’s clear what the winning Web Server is… Apache with a market share of about 56% currently according to Netcraft while Microsoft’s IIS comes second with 31.59%. Interestingly if you compared these figures in March 2006, Microsoft were down on about 18% and Apache had 75% of the market. Some of that is down to IIS 6.0 (Windows 2003) being noticeably more secure than IIS 5.0 (Windows 2000) but some of it may be down to the increase in availability of shared hosting solutions based on Windows not Linux. Nonetheless the principle development stack of dynamic websites today is the LAMP stack of programs – Linux, Apache, MySQL and PHP. All of these are available for free and all of them are used widely by sites like Wikipedia, Google and Amazon.
What I’ve been searching for is a content management system with an integrated Wiki for a side project I’m working on for my secondary “day job”. Of course that lead me down a couple of paths in the end… the high-cost, high-end solution and the Open Source solutions. At the end of the “Evaluation” phase I’d come up with a few systems that looked plausible…- Alfresco which was started by the guys that originally wrote one of the early big players, Documentum. Based on Java, PHP, Apache Tomcat as the JSP server and any database you like behind the scenes… I’m using MySQL to keep things common. Available free or with a support contract.
- DotNetNuke based on VB.NET and Microsoft SQL Server and must of course be served from IIS for ASP.NET 2.0 support.
- Jadu Intranet 2.0 is a commercial package that is built on PHP, Apache Tomcat and either MySQL or you can use Oracle or SQL Server should you so wish.
- Jahia uses Java, which means Tomcat again, with MySQL behind it but you can use SQL Server, Oracle or others.
- RedDot is a propritory solution, built on Windows only with support for using just about any language under the sun in the content, but server from IIS with Oracle, DB2 or SQL Server behind the scenes.
- MediaWiki is the engine behind WikiPedia and while it’s not a content management system as such, Novell have used it as one successfully, it’s also probably the most developed Wiki engine in the world too built again on PHP and MySQL.
So those are the contenders and the only ones I can’t get samples of are RedDot and Jadu as they are commercial and rather pricey with it.
So the big question after all this is whether the open source solutions can offer the same as the commercial ones. It certainly seems that Jahia and Alfresco offer just what is needed in a CMS from an Open Source but supported solution.
If you look at where Apache and IIS are used, you find that the top companies, the Fortune 100 companies are where IIS is more popular. It stands to reason, they run Windows anyway and they have more than enough licences in their site licence to drop a couple more on their Intranet hosting. Large companies also have security implications to consider, not DoS attacks, but who can see what information. IIS allows authentication against Active Directory, Microsoft SQL server also allows authentication against Active Directory. While you can do LDAP authentication with Apache it’s a bit of a fudge and MySQL would be reliant on specific servers authenticating against each other. What this really means is that a Windows host is needed so with that in mind my host environment is a Windows 2003 SP2 (not R2) server fully patched.
So far I’ve installed Jahia and MediaWiki on a Server running:- Active Directory/DNS/DHCP
- IIS 6.0
- MySQL 5.0.24
- PHP 5.2.3
- Java SDK 6.0.1
I have to confess I had issues with everything to start with. I began with MediaWiki. I could not get things working for love, money and I even tried seduction. I was trying to use MySQL 5.0.41 and a cryptic note I eventually found told me that there is a problem with MySQL beyond version 5.0.24 when hosted on Windows. I have yet to find out what the problem is, but it did worry me because I tend to use the latest version of any software if I can.
Installing MySQL under Windows is a breeze, I simply set it up to run as a service and used all the defaults. It went really well up to this point and I was totally impressed with the improvement in installations give that the though of compiling source code filled me with dread, I’m an administrator not a coder.
Next up came PHP 5.2.3. Now a search of MediaWiki’s installation instructions showed me thatin actual fact there were a few potential issues if I wanted to serve with IIS. However it seemed that the guide had been written and not many people had bothered to correct it here and there, just appending notes rather than doing a full rewrite. This means I got completely lost. The PHP installation could be better. I opted for a CGI/IIS Installation, but despite this I still had to:- Create Sessiondata and Uploadtemp folders that were not associated with the user account I was downloading to
- Edit php.ini to turn off forced cgi redirects.
Both of these tasks could easily be done by the install process, but they aren’t. On the plus side if you select the add ins during install (like the MySQL driver) then you can save finding which lines to comment in to support your database.
Now we come to installing mediawiki. I haven’t worked out how to configure mediawiki so I can use
http://mediawiki.server/
at present if I try and change it from the URL
http://server/
using an IIS host header I get some nasty things happening and that scares me. Learning some PHP here so I know what I’m telling it is what’s going to be needed. You can see my install steps here where steps 2.1 through 2.3 indicate how I did the install. I didn’t like to get rid of all the rest of the data.
So we come to Jahia. Jahia runs on Java, which has necessitated the installation of a Java engine and Apache Tomcat to host it. I’m reliably informed that by adding the isapi_redirect.dll file to IIS I can use that to serve my Java applications but I haven’t gotten that far just yet. The first time I installed the wrong version of Java, having picked the Enterprise edition which I assumed would be the same but more fully featured. I was wrong.
Jahia requires you to add a path to your Environment Variables in windows in order to function and because I had the wrong version of the Java SDK this caused all manner of problems. With the right version however Tomcat, Java, MySQL and more all play well together. I had to create the MySQL database and user manaually however because Jahia’s generally good install routine couldn’t do this automatically. In use Jahia seems very neat and presentable but I feel I should give my poor (256Mb RAM) server some more to play in, because it’s really beginning to struggle now. I have also managed to get Alfresco to install on the box, but again this needs Tomcat and more and I haven’t gotten that far. Again you have to configure your database yourself.
Opensource Software clearly can offer what the enterprise needs but there are penalties. As IIS cannot server Java natively the fudge of running TomCat as well places extra load on the box. MySQL works perfectly well as a database and for basic use seems to be an equal of SQL Server, though SQL Server wins by miles in terms of ease of use with the Database manager application. PHP needs some install work done on it still in order to have things auto configure on installation, but otherwise works fine.
Web applications are a new area for me and it’s only one day I’ve been properly working on them. It has to be said though, if this is what they can offer someone who doesn’t know too much about them, then Open Source has a bright future. It still needs some tweaks to get the ease of use up with a Windows or Mac OS.X native coded application but it’s not so far away and the eventual end user experience is as good with any of them.
Christopher Hinds
Please wait - comments are loading

Loading…

