90 likes | 214 Views
UiO Web Service UiOWS. UiOWS - Bakgrunn. Samle tjenester tilknyttet UiOs nettstedsarkitektur og enhetshierarki I første omgang forenkle Vortex «Flytte» allerede eksisterende tjenester i Vortex ut i egen tjeneste Tilby generell funksjonalitet til andre applikasjoner Person-/enhet-søk
E N D
UiOWS - Bakgrunn • Samle tjenester tilknyttet UiOs nettstedsarkitektur og enhetshierarki • I første omgang forenkle Vortex • «Flytte» allerede eksisterende tjenester i Vortex ut i egen tjeneste • Tilby generell funksjonalitet til andre applikasjoner • Person-/enhet-søk • Studier (timeplaner, beskjeder etc.)
UiOWS – Forarbeid • Mulighet til å «starte ferskt», tenke nytt • Teknologi • Rammeverk • Arkitektur • Ønske om å forenkle • Gå bort fra trygge, men «store» Java/Spring/Resin/JBoss? • Ønske om å forbedre • Vurdere andre typer teknologier
UiOWS - Forutsetninger • JVM • Kjent teknologi • REST • Mest fornuftig (ingen tilstand, ingen formell kontrakt etc.) • JSON • Mest «lettvekts» • «XML is like violence: if it doesn't solve your problem, you're not using enough of it.»
UiOWS - Teknologivalg Scala & Spray (ingen servletcontainer!)
UiOWS - Teknologivalg • Scala – http://www.scala-lang.org • Utvidelse av Java • Objektorienterte + funksjonelle konsepter • Mer uttrykksfullt => mindre kode • Mer produktiv (over tid) • Færre bugs • Kjører på JVM, sterk kompatibilitet med Java => lav risiko • Sterk framgang => levende språk!
UiOWS - Teknologivalg • Spray – http://spray.io • Bibliotek (byggeklosser) for REST/HTTP-baserte systemer • Asynkront, actorbasert • Akka – http://akka.io • Støtter Servlet 3.0 spek • Offisiell del av Scala (annonsert okt. 2013)
UiOWS – Gevinst • Bedre, mer riktig tjenestearkitektur • Teknologisk framgang • Faglig utvikling => MOTIVASJON!