33
Server Side Server Side Technologies Technologies by: by: Michael Wakahe, Michael Wakahe, Entrepreneur Entrepreneur 2010 2010

Server Side Technologies

  • Upload
    tawi123

  • View
    301

  • Download
    3

Embed Size (px)

Citation preview

Page 1: Server Side Technologies

Server Side Technologies Server Side Technologies

by:by: Michael Wakahe, Michael Wakahe,

EntrepreneurEntrepreneur20102010

Page 2: Server Side Technologies

Definition of ServerDefinition of Server Client-Server model is where client Client-Server model is where client

modules make requests for modules make requests for information to a server module, the information to a server module, the server processes and sends back server processes and sends back responseresponse

Server usually more capable than Server usually more capable than clients, servers usually fewer in clients, servers usually fewer in number than clientsnumber than clients

Page 3: Server Side Technologies

Definition of Server – Client-Definition of Server – Client-ServerServer

Page 4: Server Side Technologies

Definition of ServerDefinition of Server Other model: Peer-to-peerOther model: Peer-to-peer

In Peer-to-peer, participants act both In Peer-to-peer, participants act both as clients and serversas clients and servers

Participants are equally capable, Participants are equally capable, have equal privilegeshave equal privileges

Page 5: Server Side Technologies

Definition of Server – Peer-to-Definition of Server – Peer-to-peerpeer

Page 6: Server Side Technologies

Definition of ServerDefinition of Server

What exactly is a What exactly is a server?server? HardwareHardware SoftwareSoftware A combinationA combination

Page 7: Server Side Technologies

Server HardwareServer Hardware 3 main categories3 main categories

Tower, Rack Mount, BladeTower, Rack Mount, Blade

Page 8: Server Side Technologies

Server Hardware - TowerServer Hardware - Tower

Dell PowerEdge T300

Page 9: Server Side Technologies

Server Hardware – Rack Server Hardware – Rack MountMount

Dell PowerEdge R200

Page 10: Server Side Technologies

Server Hardware – BladeServer Hardware – BladeHP Blade Server

Page 11: Server Side Technologies

Server Hardware - FeaturesServer Hardware - Features Generally more capable than desktops Generally more capable than desktops

and laptopsand laptops More RAM, storage spaceMore RAM, storage space Powerful processor(s), multiple processorsPowerful processor(s), multiple processors RAIDRAID Hot swappable componentsHot swappable components

Page 12: Server Side Technologies

Server Hardware - FeaturesServer Hardware - Features

More connectivity – multiple ethernet More connectivity – multiple ethernet / fibre ports/ fibre ports

Redundant power supplyRedundant power supply Robust casingRobust casing Remote monitoringRemote monitoring

Page 13: Server Side Technologies

Server Hardware - FeaturesServer Hardware - Features Native virtualization support – Cloud Native virtualization support – Cloud

ComputingComputing Can run for years without rebootingCan run for years without rebooting Better support & warrantyBetter support & warranty Main worldwide vendors: IBM, HP, DellMain worldwide vendors: IBM, HP, Dell Expensive: Kshs. 100,000/- upwardsExpensive: Kshs. 100,000/- upwards

Page 14: Server Side Technologies

Server Hardware - LocationServer Hardware - Location Usually stored in special server rooms, within Usually stored in special server rooms, within

business premises or colocation facilitiesbusiness premises or colocation facilities Features of server rooms and colocation Features of server rooms and colocation

centres:centres: SecureSecure Temperature controlledTemperature controlled CabinetsCabinets Redundant Power Redundant Power Public IPs (world viewable)Public IPs (world viewable)

Page 15: Server Side Technologies

Server Hardware - LocationServer Hardware - Location Features of server rooms and colocation Features of server rooms and colocation

centres (continued):Spike and Surge protectioncentres (continued):Spike and Surge protection High bandwidth availability - redundantHigh bandwidth availability - redundant Monitoring – cameras, sensorsMonitoring – cameras, sensors Fire proof, Earthquake proofFire proof, Earthquake proof Qualified staffQualified staff

Local examples: Access Kenya, UUNET, KDNLocal examples: Access Kenya, UUNET, KDN

Page 16: Server Side Technologies

Server Hardware - LocationServer Hardware - Location

Page 17: Server Side Technologies

Server Hardware - LocationServer Hardware - Location

Page 18: Server Side Technologies

Server Software – Operating Server Software – Operating SystemsSystems

Control hardware, provide abstraction for Control hardware, provide abstraction for softwaresoftware

2 main categories: Windows based and 2 main categories: Windows based and Unix derivativesUnix derivatives

Windows: based on Windows NT; Windows Windows: based on Windows NT; Windows Server 2000, 2003, 2008Server 2000, 2003, 2008

Each version has different flavours, e.g. Each version has different flavours, e.g. small business, standard, enterprise, data small business, standard, enterprise, data centrecentre

Page 19: Server Side Technologies

Server Software – Operating Server Software – Operating SystemsSystems

Unix based: old Unix (AT&T, Bell Unix based: old Unix (AT&T, Bell Labs), BSD, Solaris, LinuxLabs), BSD, Solaris, Linux

Windows servers more prevalent Windows servers more prevalent because of easy-to-use Graphical because of easy-to-use Graphical User InterfaceUser Interface

Page 20: Server Side Technologies

Server Software – Operating Server Software – Operating SystemsSystems

Features of Server Operating SystemsFeatures of Server Operating Systems Robust – even during HW failureRobust – even during HW failure Multiple security features including firewalls Multiple security features including firewalls

& intrusion detection& intrusion detection Remote administrationRemote administration Extensive audit trail – both people & Extensive audit trail – both people &

softwaresoftware Tight coupling with hardwareTight coupling with hardware

Page 21: Server Side Technologies

Server Software – Operating Server Software – Operating SystemsSystems

Features of Server Operating SystemsFeatures of Server Operating Systems Generally more capable on operating system Generally more capable on operating system

features e.g. threading (concurrency)features e.g. threading (concurrency) handle more varied and larger file systemshandle more varied and larger file systems handle more RAM & virtual memoryhandle more RAM & virtual memory Support for many hardware platformsSupport for many hardware platforms better performancebetter performance

Page 22: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Application layer is what “talks” Application layer is what “talks” directly to mobile applicationsdirectly to mobile applications

Traffic can be circuit switched e.g. Traffic can be circuit switched e.g. SMS or packet switched (Internet)SMS or packet switched (Internet)

Circuit switched traffic usually Circuit switched traffic usually converted to packet switched (Short converted to packet switched (Short Message Peer-to- Peer - SMPP)Message Peer-to- Peer - SMPP)

Page 23: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Packet switched information is “layered”Packet switched information is “layered” Mobile applications usually communicate in Mobile applications usually communicate in

one of the 3 following layers:TCP / UDPone of the 3 following layers:TCP / UDP Application e.g. HTTP, FTPApplication e.g. HTTP, FTP Protocols built on application layer e.g. XML, Protocols built on application layer e.g. XML,

SOAP, RMISOAP, RMI

Page 24: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Software that services client requests: Software that services client requests: Application ServerApplication Server

Various application servers, can be Various application servers, can be classified by programming languageclassified by programming language

Main languages for server side Main languages for server side programming: Microsoft .NET framework programming: Microsoft .NET framework (C Sharp, J Sharp), Java & J2EE, PHP(C Sharp, J Sharp), Java & J2EE, PHP

Page 25: Server Side Technologies

Server Software - Server Software - ApplicationApplication

.NET framework offers libraries that are .NET framework offers libraries that are tightly coupled with the operating tightly coupled with the operating system that can act as an application system that can act as an application serverserver

Java Application Servers: Tomcat, Java Application Servers: Tomcat, Weblogic, Websphere, Glassfish, JBossWeblogic, Websphere, Glassfish, JBoss

Main PHP application server: ApacheMain PHP application server: Apache Other application servers in other Other application servers in other

languageslanguages

Page 26: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Server side requires persistence – Server side requires persistence – SQL databasesSQL databases

Main vendors: Oracle, MySQL, Main vendors: Oracle, MySQL, Ingress Microsoft SQL Server, Ingress Microsoft SQL Server, Postgres, Sybase, DB2Postgres, Sybase, DB2

Some offer special features e.g. Some offer special features e.g. replication, clusteringreplication, clustering

Oracle is the leaderOracle is the leader

Page 27: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Special features of application Special features of application servers and databases:servers and databases: RobustnessRobustness Clustering / Load balancingClustering / Load balancing VirtualizationVirtualization Security (code isolation, cryptography)Security (code isolation, cryptography) Remote monitoringRemote monitoring Advanced programming techniquesAdvanced programming techniques

Page 28: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Some application servers and Some application servers and databases may have yet other databases may have yet other additional features e.g. portal additional features e.g. portal development, OS integration, mobile development, OS integration, mobile integrationintegration

Usually they come with special Usually they come with special developer tools: programming, developer tools: programming, debugging, testing etcdebugging, testing etc

Page 29: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Software models:Software models: Closed vs Open SourceClosed vs Open Source Proprietary vs FreeProprietary vs Free

Page 30: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Server side software captures Server side software captures business logicbusiness logic

Client should be as thin as possibleClient should be as thin as possible Software is built in modulesSoftware is built in modules Multi-tiered approachMulti-tiered approach

Page 31: Server Side Technologies

Server Software - Server Software - ApplicationApplication

Case Study: Strathmore Mobile SystemCase Study: Strathmore Mobile System Strathmore wants an SMS and Mobile Strathmore wants an SMS and Mobile

Application SystemApplication System Students can check grades, fees, Students can check grades, fees,

timetablestimetables Some of the modules: Communication, Some of the modules: Communication,

Authentication, Billing, Audit, Remote Authentication, Billing, Audit, Remote Monitoring & Administration, BackupMonitoring & Administration, Backup

Page 32: Server Side Technologies

Servers - The Big PictureServers - The Big Picture

Page 33: Server Side Technologies

Server SoftwareServer SoftwareThe EndThe End

Michael Wakahe,Michael Wakahe,Tawi Commercial Services LtdTawi Commercial Services Ltd

+254 (0)20-239-3052+254 (0)[email protected]