Architectuur van Informatiesystemen

Uit Roncalli Wiki
Ga naar: navigatie, zoeken

Inhoud

Inleiding

Informatiesystemen zijn systemen om informatie te verzamelen, bewerken en beheren. Deze Wiki is zo'n informatiesysteem. Het ondersteunt het primaire proces van Lesgeven op de Roncalli Mavo. De leerlingen zelf hebben ook een informatiesysteem: een leslog op basis van Wordpress.

Hoe werken deze systemen? Wat is de rol van databases en hoe worden ze verbonden met de programma's?

Database - Architectuur

Het werkpaard van de IT

Het werkpaard van de IT is de database: daar worden de gegevens opgeslagen, bewaard, teruggevonden en gewijzigd. De meeste computerprogramma's en websites zijn alleen maar een gelikte schil op die database.

Database-architectuur.png

Hoe werkt de database

Elk programma dat een database wil gebruiken praat tegen de database-server in de taal SQL: de database-vraagtaal. De antwoorden op de vragen van het programma bestaat uit de opgevraagde gegevens. Het kan ook zijn dat de database-server gegevens invoegt in de database. De data zelf staat verdeeld over meerdere bestanden op de harddisk van deze server.

Client-Server

Deze communicatie gebeurt volgens het client-server model. Hierbij is de database-server de server en het programma (in de gele vierkanten) de client. Deze client kan zich bevinden op dezelfde computer als de server, of op een ander computer.

Internet-architectuur

Web browser en web server

In de Internet-architectuur draaien de programma's op de computer van de webserver. De gebruiker van het programma heeft op zijn computer alleen een webbrowser (Internet Explorer, Firefox, Safari, Chrome). De pagina's met programmacode gelezen en uitgevoerd door speciale modules van de Webserver.

Apache-php-architectuur.png

Webserver Programma's

Veel bekende websites zijn eigenlijk standaard programma's die op de webserver worden gedraaid.

  • roncalli.nu is het programma Wordpress - een kopie van wordpress.com
  • wiki.roncalli.nu is het programma Mediawiki - een kopie van Wikipedia.
  • Facebook heeft eigen programmacode geschreven voor de webserver die niet is uitgebracht.

Al deze drie websites gebruiken PHP als programmeertaal en zij praten alledrie tegen MySql databases. Deze programma's bestaan uit een aantal PHP-bestanden die ook gewoon op de harddisk staan, en, op het moment dat er een bezoeker dat wil, worden gerund.

Dit betekent:

  • Alle roncalli.nu nieuwsberichten staan in de database.
  • Alle wiki.roncalli.nu pagina's staan in de database
  • Alle Facebook berichten staan in de database.

Opdrachten

Huiswerk-Opdracht

De opdracht is nu klaar voor gebruik. Huiswerk!

Opdracht 1. Apachefriends

Installeer het pakket XAMPP van apachefriends op je computer. Lees hiervoor de bijbehorende (English) Installation instructie.

Start nu het gedeelte Apache van Xampp. Je webserver loopt nu.

Opdracht 2. Kleine Test

2.1 Intro

De volgende stap is dat je een bestandje ergens neerzet binnen de "web root" van apache. Het gaat dan om de bestanden die de website zijn. Wij gebruiken twee mini test bestandjes. Je moet proberen om ze op de goede plek op de harde schijf te zetten. Daarna kun je ze dan met de web browser opvragen.

2.2 Waar zet je de bestanden?

In de Windows-pagina op die website zie je een aantal vragen. Vraag 2 is interessant: waar laat ik de 'web content' - dus de bestanden die ik online wil zetten? Het antwoord staat hier:

  • Op Windows: The main directory for all WWW documents is \xampp\htdocs. If you put a file "test.php" in this directory, you can access it with the URI "http://localhost/test.php". Dus kijk nu waar je die xampp hebt neergezet, en dan in de map htdocs.
  • Op de Apple: in de map Webpagina's. In jouw home jantje (als je useraccountje is), opvragen met http://localhost/~jantje/ gevolgd door de naam van de pagina die je wilt (test.php). Dus: http://localhost/~jantje/test.php

Dit is het eerste test bestand. Kopieer het in Notepad++ of als het lukt, gewoon Kladblok en sla op als test.php. Op apple: gebruik Editra.

//  http://localhost/~jantje/test.php. A simple testscript
<?php
   echo 'Hallo ik ben Jantje ';   // Vervang Jantje door jouw naam!
?>

2.3 Vraag de pagina op

Als het bestandje er staat, test de boel door met de web browser de lokale website op de vragen. In bovenstaande tekst staat de URL al getipt.Maak een screenshot van deze pagina in werking op je eigen systeem. Dus nu bezoek je je eigen website op je eigen systeem!

Opdracht 3. De echte test

Plaats nu de pagina test2.php. Die kun je vinden in de download media:Test2php.zip.

  • Test2.php is een stuk php code die het volgende doet wanneer je de pagina bezoekt met je web browser:
  • maakt een database verbinding met wiki.roncalli.nu.
  • selecteert de ingevoerde visitors uit de visitor database.
  • toont een klein invoer formulier.. als je t gebruikt, dan komt jouw 'record' ook in de database.

Veel plezier!

Hulp bestanden

Wil je de voorbeeld database zelf maken op je eigen systeem, gebruik dan deze SQL code:

create table visitor (
     vid INT not null   auto_increment,
     name varchar(64),
     ip varchar(64),
     ontime timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
     primary key (`vid`)
  );

Je moet natuurlijk eerst Mysql starten en wie weet nog een hoop meer doen....

Ga verder

Ga verder met de theorie Inleiding Database-architectuur.

Persoonlijke instellingen