Microsoft vs Linux

Author Message

Sean McGovern

Wednesday 20 October 2010 11:30:43 am

Anyone had any experience or thoughts about inherent pros or cons of working in a linux vs microsoft platform? Will we be able to find developers in each? Any technical issues to be aware of?

Christian Rößler

Wednesday 20 October 2010 1:20:27 pm

Hy,

I / we use GNU/Linux together with apache as webserver environment for ezPublish. We have done so several years and are very happy with it. But we are not totally linux commited - for some customer software we have to use windows so i think i might give a fair technical comparison of linux and windows as server operating system. If you choose to use windows as server, try to use Windows Server 2008 and IIS 7.x . Do not use win2003 as much improvements in Windows, IIS and its php integration are introduced.

.

This is why we are not using windows and iis for hosting eZPublish, but instead gnu/linux:

- windows has a larger footprint (GB) and is thus not as 'clean' (kiss keep it simple stupid) as a linux-server installation (2GB max).

- configuration on linux is done via files which can be copied on other servers in a cluster easily. No need to 'click' your configurations together which is error prone and dumb if to b done on several machines.

- a cleaner way to maintain upgrades for third party, non microsoft software + no need to heavily restart services (or the whole server) upon new patches are installed

- remote maintenance is a pain the a** on windows

- moving one server to another location using virtualized instances of a server os done easily using xen+linux and is horrible using esxi+windows admin tool for it. (virtual server solutions)

- how would you realize access to the server for a customer which is secure and saves bandwith on windows?

- maintaining multiple ip-adressess, networks and firewall-rules are a pain in the a** on windows. maintaing the windows 2008 firewall is horrible, have you tried to "grep firewall for port 3306" ?

- several windows services are installed by default which no one knows what they are doing and why they are broadcasting ip packages into the net m( .

- the network-stack of windows was greatly improved over the years but seems still way behind the one of linux or especially BSD which is great

- making backups which are usable/restorable on windows is not done very easily and not all files can be restored (registry, weired settings in some wizards, ...). Incremental backups are hard on windows (without paying horrible € for more software), thus we have to snapshot a complete windows-server machine to maintain correct states of it. This affects performance of the virtual guest of course.

- everything must be downloaded from remote and installed using dumb installers which cannot be upgraded using a unified and centralized mechanism (like linux apt or cron-apt)

- windows tries to hide important stuff administrators need to maintain software and services behind wizards and fancy user interfaces. Its counterpart the command line is mostly not really usable (usability)

- scheduled tasks cannot be configured in a cool manner like on linux using cron or similar

- linux has nicer integration of remote filesystems, local filesystems, LVM, raid, ... and so on. Those may be changed (for whatever reason) without reinstalling everything.

- windows has its powershell, but i personally think bash is way nicer and more usable

- i personally miss the services feedback and centralized logs (log facility) on windows. everything seems to be hidden under a shiny surface. If you encounter problems you really have to guess solutions instead of being able to search for problems.

.

A few components might run a bit better/faster/more stable on linux as on windows, but you have to test it yourself with your requirements.

Most of open-source software was build on/for gnu/linux so the chance to encounter weired behaviour or simple non-working-stuff of windows ports seems to be high. eZPublish makes widely use of open source software. Make sure all your software and its components (librarys, 3rd party tools, php-modules, sql-databases, ...) are running smoothly on windows if you plan to use win-server for eZPublish.

.

Generally eZPublish, php and mysql/postgres/oracle, ezFind (java) are running nicely on windows. So all the above points i mentioned are to be understood as "daily work issues encountered on windows which would be no problem on linux" and so are highly personal and my meaning and might not reflect your experience with windows as server system...

.

All these points are of course point of discussion and there are of course things that are done better on windows than on linux. So you should stick with those you know well. I hope this does not start a flaming war like win vs. linux ...

.

 Will we be able to find developers in each?

Of course. I know some who are developing on windows and are using windows as server OS since years and are happy with it.

On www.ez.no and share.ez.no are lists with community-partners and enterprise-partners which might help you planning, realizing and maintaining your eZPublish.

--

chris

Hannover, Germany
eZ-Certified http://auth.ez.no/certification/verify/395613

Powered by eZ Publish™ CMS Open Source Web Content Management. Copyright © 1999-2014 eZ Systems AS (except where otherwise noted). All rights reserved.

eZ debug

Timing: Jan 18 2025 10:21:48
Script start
Timing: Jan 18 2025 10:21:48
Module start 'layout'
Timing: Jan 18 2025 10:21:48
Module start 'content'
Timing: Jan 18 2025 10:21:49
Module end 'content'
Timing: Jan 18 2025 10:21:49
Script end

Main resources:

Total runtime0.7614 sec
Peak memory usage4,096.0000 KB
Database Queries54

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0057 587.9141152.6250
Module start 'layout' 0.00570.0065 740.539139.4531
Module start 'content' 0.01220.7479 779.9922503.7344
Module end 'content' 0.76010.0013 1,283.726612.1719
Script end 0.7614  1,295.8984 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00370.4802160.0002
Check MTime0.00160.2102160.0001
Mysql Total
Database connection0.00090.111910.0009
Mysqli_queries0.706092.7125540.0131
Looping result0.00060.0731520.0000
Template Total0.724395.120.3622
Template load0.00210.270720.0010
Template processing0.722394.852520.3611
Template load and register function0.00010.018510.0001
states
state_id_array0.00170.218510.0017
state_identifier_array0.00120.153020.0006
Override
Cache load0.00170.2258380.0000
Sytem overhead
Fetch class attribute can translate value0.00050.070520.0003
Fetch class attribute name0.00110.150420.0006
XML
Image XML parsing0.00020.025720.0001
class_abstraction
Instantiating content class attribute0.00000.000920.0000
General
dbfile0.00130.1727100.0001
String conversion0.00000.001740.0000
Note: percentages do not add up to 100% because some accumulators overlap

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
2content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
3content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
1content/datatype/view/ezxmltags/literal.tpl<No override>extension/community/design/standard/templates/content/datatype/view/ezxmltags/literal.tplEdit templateOverride template
1print_pagelayout.tpl<No override>extension/community/design/community/templates/print_pagelayout.tplEdit templateOverride template
 Number of times templates used: 8
 Number of unique templates used: 5

Time used to render debug report: 0.0001 secs