Skip to content

Johdanto pilvipalveluihin

Posted in Pilvisovellusten tuotanto

Johdanto

Aloitin pilvipalveluiden tuotanto verkkokoulutuksen Hyria koulutuksessa 10.2.2016. Tässä ymmärrykseni ensimmäisestä luentokerrasta. Kirjoitan jatkossa jokaisesta luennosta jotain tällöin oppimistulos on parempi ja asiat jäävät paremmin mieleen.

Mikä on pilvipalvelu?

Pilvipalvelut ovat Internetissä tarjottavia palveluita/sovelluksia. Palveluiden pääluokat ovat: SaaS (Software as a Service), IaaS (Infrastructure as a Service), PaaS (Platform as a Service).

Software as a Service (SaaS)

SaaS tarkoittaa ohjelmiston käyttämistä palveluna perinteisten lisenssien ostamisen sijaan. Käytöstä maksetaan yleensä käytön laajuuden mukaan kuukausittain/vuosittain. SaaS -palveluita käytetään yleensä Internet -selaimella. Esimerkkejä SaaS-palveluista: Gmail, Facebook, Spotify, DropBox. Käyttäjäryhmä: kuluttajat.

Infrastructure as a Service (IaaS)

IaaS tarkoittaa palvelimien ulkoistamista. Kokonaisuuteen liittyy yleensä tallennustila, palvelimet ja niiden ylläpito. Yksi suurimmista ja vanhimmista IaaS -tarjoajista on Amazon Web Services (AWS). Muita palvelun tarjoajia ovat esim. Microsoft, Google ja IBM. Käyttäjäryhmä: sovelluskehittäjät.

Platform as a Service (PaaS)

PaaS tarkoittaa palvelualustan ulkoistamista. Pilvisovellusten kehittäjien ei tarvitse huolehtia ohjelmiston skaalautuvuudesta tai lisääntyneestä tehontarpeesta käyttäjämäärien kasvaessa, koska alustaa on mahdollista laajentaa tarpeen mukaan joustavasti. PaaS -palveluiden tarjoajia ovat esimerkiksi Google App Engine, Heroku, Windows Azure Cloud Services ja Amazon Web Services. Käyttäjäryhmä: IT-arkkitehdit.

Pilvipalveluiden hyödyt

  • Pääomaa ei tarvitse sitoa palvelimiin ja palvelinsaleihin
  • Säästetään henkilöstökuluissa
  • Maksetaan vain käytöstä
  • Luotettava ja skaalautuva

Pilvipalveluiden haitat

  • Tietoturva: data on ulkopuolisen hallussa
  • Tietoturva: datan tallennuspaikkaa ja -maata ei välttämättä tiedetä

Internet-palvelun toteutus

Ennen & Nyt

Ennen Internet-palvelut muodostuivat käyttäjän selaimesta ja palvelun web- ja tietokantapalvelimista. Käyttäjän näkemät sivut tehtiin mahdollisimman valmiiksi palvelimen puolella. Kirjautumislogiikka oli kokonaisuudessaan web-palvelimessa. Kirjautumistiedot talletettiin omalle tietokantapalvelimelle.


Nyt ja Tulevaisuudessa

Nykyään Internet-palvelut ovat hajautuneet useampaan osaan. HTML-sivut muodostetaan vasta selaimessa, vain data liikkuu. Sovellukset ja data data voivat olla eri palveluissa. Kirjautuminen voidaan hoitaa joko suoraan palvelussa tai se voidaan ulkoistaa esimerkiksi Facebook-ja Google-sivuistoille (OAuth).

Käyttöliittymä (front end)

Käyttöliittymät ohjelmoidaan yleensä JavaScriptillä. Suosituimmat JavaScript UI kirjastot taitavat tällä hetkellä olla Googlen AngularJS ja Facebookin RectJS.

Palvelin (back end)

Palvelimen toiminnallisuus voidaan toteuttaa melkein millä ohjelmointikielellä tahansa. Yleisimpiä kieliä ovat Java, C++, PHP, Ruby ja Python (Django). Viime aikoina myös NodeJS on nostanut suosiotaan. Monet isot web-sivustot, kuten LinkedIn, Netflix ja Yahoo!, käyttävät myös sitä.

Tietokannat

Yleisimpiä tietokantahallintajärjestelmiä ovat Oracle, SQL Server, MySQL, PostgreSQL, MariaDB ja MongoDB.

Rajapinnat

Palveluiden toteutus perustuu yleensä REST API-toteutukseen. Data liikkuu pilven ja selaimen välillä joko JSON– tai XML-formaatissa.

Viimeisimmät artikkelit

Kategoriat