Das Internet, wie wir es heute kennen, basiert im Grunde genommen auf der simplen Funktion, Computer miteinander zu vernetzen. Genau genommen sind es meist Server, die angesprochen werden und bestimmte Inhalte aufweisen, die uns dann wiederum angezeigt werden können. Texte, Bilder, Musik und Videos, all das lässt sich auf anderen Servern finden und über das Internet auf den eigenen Computer übertragen. Soweit der recht simplen Erklärung.

Doch was genau ist denn nun Server-Side und Client-Side? Was bedeuten die Begriffe, welche Technik steckt dahinter und welche Vor- und Nachteile liefern die beiden Möglichkeiten? Genau um diese Fragen soll es heute gehen, denn wir dachten uns, es wäre mal interessant, ein paar gebräuchliche Techniken im Web genauer zu beleuchten. Heute dreht sich also alles um Server-Side vs. Client Side.

Server-Side vs. Client-Side: Was es bedeutet und wie es genutzt wird 1

Was ist Server-Side?

Server-Side ist das, was nicht auf dem eigenen Computer, sondern auf dem jeweiligen Server stattfindet. PHP ist ein schönes Beispiel dafür, welches die meisten von WordPress bereits gut kennen. Der Server verarbeitet den PHP-Code des CMS, den des jeweiligen Themes und den aktivierten Plugins, zieht dann die Inhalte und Funktionen aus der MySQL-Datenbank und setzt aus all diesen Einzelteilen dann die jeweilige Website oder den fertigen Blog zusammen. So funktioniert WordPress. Bevor die Website angezeigt wird, geschieht auf dem Server also eine ganze Menge im Hintergrund. Nur das fertige Ergebnis wird übertragen.

All das geschieht demnach nicht bei euch im Browser, sondern auf dem Server selbst. Der muss bei jedem Seitenaufruf deshalb auch kräftig arbeiten, um den Code entsprechend zu lesen, auszuführen und die Befehle zeitnah umzusetzen. Ihr selbst seht am Ende das Ergebnis all dieser Aktionen, nicht aber den Quellcode oder was dafür alles notwendig war. Die eigentliche Arbeit erledigt also der Server.

Was ist Client-Side?

Client-Side ist das genaue Gegenteil. Javascript ist ein schönes Beispiel dafür, weil es direkt im Browser ausgeführt wird, nicht auf dem Server selbst. Der Code kann also direkt in die HTML-Seite integriert werden, der Browser liest ihn, versteht ihn und interpretiert ihn dann. So lassen sich viele Dynamiken realisieren, auch Tracking und Co findet meist über solche Scripte statt, die vom Browser gelesen und entsprechend ausgeführt werden.

Client-Side bedeutet also, dass Code direkt im Browser bzw. bei dem Client selbst ausgeführt wird. Der Server liefert demnach wirklich nur die blanken Codezeilen, die vom Browser dann verstanden und umgesetzt werden müssen. Hier kann jeder den Quellcode einsehen, da er direkt in der Datei vorhanden sein muss, die der Client erhält.

Client-Side kann theoretisch so ziemlich alles sein, der Browser muss die Sprache dafür nur beherrschen und interpretieren können. Das ist bei Javascript der Fall, nicht aber bei PHP. Zudem gibt es nicht viele Sprachen, die Client-Side funktionieren, da auch immer alle Browser die Unterstützung liefern müssen, damit es nicht zu Kompatibilitätsproblemen kommt. Im Grunde ist das nur bei Javascript der Fall, genau wie natürlich bei HTML und CSS, die ebenfalls erst im Browser entsprechend interpretiert werden.

Vor- und Nachteile der Methoden

Das alles ist gar nicht so kompliziert, wie es erst einmal erscheint. Server-Side bedeutet meist nämlich auch, dass es sich um relativ umfangreiche Software handelt. SaaS-Lösungen zum Beispiel, die entsprechend komplexe Programme darstellen. So etwas kann nicht mal eben bei Abruf vom Browser übernommen werden und der Code für die Software soll auch nicht unbedingt öffentlich einsehbar sein, zumal er recht groß ausfallen wird, je komplexer das Ganze ist.

Client-Side hingegen spart Server-Ressourcen. Der Server selbst muss dann nicht mehr viel Arbeiten, alles übernimmt der Browser. Javascript wird deshalb vom Browser direkt interpretiert, weil dies schnell und effizient möglich ist. Auch das spielt natürlich eine Rolle, denn komplexe Abläufe oder Programmiersprachen lassen sich nicht einfach im Browser zusammensetzen und ausführen.

Am besten ist immer eine Kombination aus beiden. Was komplex und entsprechend aufwendig ist, wird Server-Side umgesetzt. Alles andere dann Client-Side, was nicht zuletzt durch Techniken wie Ajax (Asynchronous JavaScript and XML) noch effektiver wird. So ermöglicht es Ajax beispielsweise, im Hintergrund Daten zwischen Server und Client auszutauschen. Weitere Vorschläge bei Texteingabe, das Nachladen der Blogbeiträge beim Scrollen und vieles mehr sind mit Ajax dann umsetzbar.

Server-Side vs. Client-Side: Was es bedeutet und wie es genutzt wird 2

Fazit

Im Grunde kommt es immer auf den Anwendungsfall an. Geht es um Dynamiken, die direkt auf der Website vorhanden sind, reicht es meist, Javascript einzusetzen und das ganze Client-Side zu verwirklichen. Das spart Server-Ressourcen und in der Regel kommen alle Browser mit der Technik gut zurecht.

Geht es um große Anwendungen wie ein Content Management System oder Software as a Service, reicht ein wenig Javascript in der Regel aber nicht mehr aus. Wäre auch viel zu unsicher, weshalb hier dann auf Server-Side Scripting zurückgegriffen wird. Dort ist wesentlich mehr möglich, die Performance ist bei umfangreichen Projekten ebenfalls besser und die Sicherheit deutlich höher, da Server-Side weniger manipulierbar ist.

So richtig die Wahl habt ihr heutzutage sowieso nicht mehr. Was Javascript ist, wird im Browser und demnach Client-Side bewältigt, alles andere landet auf dem Server. Das sind dann meist Sprachen wie PHP, Python, Ruby, Perl und weitere. Kurz gesagt: Wann immer Web-Projekte komplexer sind oder gar Software entstehen soll, die weit mehr als die übliche Website kann, wird Server-Side gearbeitet. Für alles andere gibt es dann HTML, CSS und Javascript.

by A-DIGITAL one

Unsere Herzen schlagen Digital, unsere Projekte leben Digital, unsere Kunden lieben und schätzen Digital! Die einzigartige digitale Performance die wir seit 1999 an den Tag legen.

Mit unserem Team von über 25 Experten begleiten wir Sie auf Ihrem Weg der digitalen Transformation. Mit klaren Strategien, persönlicher Betreuung und exzellenter Ausführung entwickeln wir, innovativ und individuell, maßgeschneiderte digitale Lösungen, die performen und verkaufen können.