Mikä on Lumen Framework?

Verkkosovelluksen luomiseksi ei yleensä ole järkevää kehittää sitä itse tyhjästä. Ensinnäkin se edellyttäisi hyvin kattavaa tietämystä. Toisaalta siihen kuluva aika olisi hyvin suuri, joten se tuskin olisi kannattavaa. Tästä syystä tähän tarkoitukseen käytetään usein kehyksiä.

Nämä sisältävät jo kaikki vastaavan tehtävän kannalta olennaiset toiminnot. Sitten ne on vain koottava yhteen ja mukautettava yksilöllisiin vaatimuksiin.

Verkkokehysten alalla on kuitenkin hyvin laaja valikoima. Siksi on tärkeää valita sopiva paketti. Yksi mahdollisuus tähän on Lumen. Tämä on suhteellisen uusi ratkaisu – se julkaistiin vasta vuonna 2015.

Toinen erityispiirre on, että sama kehittäjä vastaa suunnittelusta kuin Laravel-verkkokehyksestä. Tämä viittaa jo siihen, että joitakin yhtäläisyyksiä on olemassa. Tässä artikkelissa esitellään, mikä Lumen on, sen erityispiirteet ja sen ero Laraveliin.

Verkkosovellusten käyttöönotto mikropalvelun kautta

Johdannossa esiteltiin jo Lumenin karkeat ominaisuudet: Se on web-sovellusten kehittämiseen tarkoitettu kehys, jonka on suunnitellut sama henkilö kuin paljon tunnetumpi kehys Laravel. On kuitenkin myös joitakin muita tärkeitä ominaisuuksia. Erittäin tärkeää on esimerkiksi se, että se on mikropalveluihin perustuva kehys. Tämä tekniikka ei ole toistaiseksi kovin yleinen tällä alalla. Siksi on erittäin tärkeää selvittää tarkemmin, mitä mikropalvelut oikeastaan ovat ja mitä etuja ja haittoja ne tarjoavat.

Mikä on mikropalvelu?

Monien vuosikymmenten ajan tietokoneohjelmat olivat lähes aina monoliittisia ohjelmia. Tämä tarkoittaa, että ne koostuvat suljetusta yksiköstä, joka toimii vain kokonaisuutena. Jo muutaman vuoden ajan mikropalvelut ovat kuitenkin kasvattaneet suosiotaan. Tämä tarkoittaa, että ohjelma koostuu monista yksittäisistä osista, jotka ovat toisistaan riippumattomia ja toimivat myös itsenäisesti. Ohjelma voi sitten käyttää erilaisia tällaisia palveluja. Nämä tekevät työnsä täysin itsenäisesti ja välittävät vain tuloksen. Yhteys on vain löysä. Esimerkiksi eri sovellukset voivat käyttää samoja mikropalveluja.

Viestintä API:n kautta

Mikropalveluja käytettäessä on erittäin tärkeää kiinnittää huomiota sopivaan viestintämuotoon. Tähän tarkoitukseen käytetään niin sanottuja sovellusrajapintoja. Tämä lyhenne tarkoittaa Application Programming Interface (sovellusohjelmointirajapinta). Jokaisen mikropalvelun on tarjottava vastaava API. Varsinainen sovellus voi sitten käyttää näitä ja tehdä vastaavan pyynnön. Tarvittaessa tämä pyyntö todennetaan. Jos tämä onnistuu, mikropalvelu suorittaa tehtävänsä ja lähettää tuloksen takaisin sovellukselle. Jälkimmäinen voi sitten käyttää sitä. Jotta järjestelmä toimisi, on tärkeää valita sopivat tietomuodot. Yksityiskohtainen dokumentaatio on myös tarpeen, jotta mikropalvelua käyttävät kehittäjät tietävät tarkalleen, mitä tietoja he saavat mikropalvelusta.

Mitä etuja mikropalveluiden käytöstä on?

Kun haluat päättää, haluatko käyttää Lumenia verkkosovellukseesi, on tärkeää, haluatko käyttää monoliittista ohjelmaa vai mikropalveluja. Siksi on erittäin tärkeää tarkastella tarkkaan mikropalvelujen käytön etuja ja sitä, missä tapauksissa tämä tekniikka on järkevää.

Merkittävä etu on näiden järjestelmien suuri joustavuus. Tarvittaessa uusia toimintoja voidaan helposti lisätä sopivan mikropalvelun kautta ilman, että muihin palveluihin tarvitsee tehdä muutoksia. Siksi laajennukset voidaan toteuttaa paljon helpommin kuin monoliittisissa ohjelmissa. Järjestelmien skaalautuvuus on myös hyvä, sillä uusien palvelujen lisääminen ei ole ongelma. Kehitysvaiheessa on myös eduksi, että perustoimintoja voidaan käyttää jo lyhyen ajan kuluttua. Voit sitten lisätä hieman vähemmän tärkeitä toimintoja, kun käytät ohjelmaa jo. Kunnossapitotoimenpiteet on myös helppo toteuttaa, koska ne voidaan toteuttaa erikseen kunkin yksittäisen palvelun osalta.

Mikropalveluille on ominaista myös se, että kokonaissovellusta voidaan kehittää useissa itsenäisissä tiimeissä. On vain määriteltävä, mitkä tehtävät kunkin yksittäisen palvelun on suoritettava. Sitten tiimi voi kehittää sitä melko itsenäisesti. On jopa mahdollista käyttää eri ohjelmointikieliä yksittäisissä palveluissa. Tämä ei johda ainoastaan suunnittelun suureen joustavuuteen. Lisäksi kuhunkin palveluun voidaan valita tekniikka, joka soveltuu täydellisesti kyseiseen tehtävään. Lisäksi voit aina käyttää uusinta teknologiaa laajennuksissa – vaikka muut palvelut toimisivatkin vielä vanhemmilla teknologioilla. Tällä tavoin asteittainen nykyaikaistaminen on mahdollista.

Lopuksi voit yleensä hyötyä suuresta suoritusnopeudesta. Pienten itsenäisten palveluiden käyttö tarkoittaa, että vastaavien tehtävien suorittamiseen tarvittava laskentatyö on yleensä huomattavasti pienempi kuin käytettäessä suurta monoliittista sovellusta. Siksi mikropalveluiden käyttö on suositeltavaa, jos arvostat tehokasta toteutusta.

Lumen ja Laravel

Olemme jo sanoneet, että Lumenilla on paljon yhteistä tunnetun verkkokehyksen Laravel kanssa: Molemmat tekniikat on kehittänyt sama henkilö – Taylor Otwell. Siksi on ilmeistä, että on olemassa myös joitakin yhtäläisyyksiä. Näin on todellakin, ja monissa hankkeissa on jopa järkevää käyttää molempia tekniikoita yhdessä.

Yhteensopivuus Laravelin kanssa

On jo sanottu, että mikropalvelut tarjoavat pieniä itsenäisiä palveluja. Juuri tähän tehtävään Lumen on tarkoitettu. Nämä palvelut ovat back-end-sovelluksia. Näitä palveluja käyttäviä etusovelluksia ei kuitenkaan voi luoda Lumenilla. Voit käyttää tähän useita muita kieliä ja kehyksiä. Erittäin suosittu ratkaisu on käyttää tähän Laravel-ohjelmaa. Nämä kaksi kehystä ovat täydellisesti koordinoituja, joten erittäin tehokkaita sovelluksia voidaan luoda helposti.

Lisäksi syntaktiset yhtäläisyydet ovat suuret. Laravel-ohjelmiston hallitseva kehittäjätiimi voi myös luoda mikropalveluja Lumenilla suhteellisen lyhyellä koulutusajalla. Lisäksi Lumen-sovellukset voidaan tarvittaessa vaihtaa Laraveliin.

Yksinkertainen ja tehokas kehitys

Toinen tämän kehyksen tarjoama etu on, että sitä on erittäin helppo kehittää. Oppimiskäyrä on hyvin jyrkkä. Näin eri alojen kehittäjät voivat tutustua nopeasti. Myös kehitysaika on yleensä hyvin lyhyt. Käytettävissä on laaja valikoima toimintoja, joten niitä ei tarvitse kehittää itse. Tämä vähentää merkittävästi sovellusten luomiseen tarvittavaa työtä.

Johtopäätös: Lumenien käyttö takaa nopean toteutuksen.

Lumen-kehys on mielenkiintoinen vaihtoehto aiemmille web-kehitysmahdollisuuksille. Erityisen kiinnostavaa tässä yhteydessä on mikropalvelujen käyttö, mikä ei ole mahdollista useimmilla muilla tekniikoilla. Tämä johtaa erinomaiseen joustavuuteen kehityksessä ja erinomaisiin ylläpito- ja laajentamismahdollisuuksiin. Lisäksi toteutusnopeus on erittäin suuri. Jos arvostat näitä näkökohtia, tämä kehys on erinomainen valinta projekteihisi.

Mielenkiintoisia artikkeleita:

Lumenin virallinen sivu

Tietoa kehyksestä Githubissa

Vastaa