Microservices - olenko ymmärtänyt oikein?

Anonyymi

Esim. C ohjelma voi sisältää useampia DLL:iä, minkä funktioita voi kutsua headeria käyttämällä. Onko microservices tälle web-maailman analogia, missä DLL:ää vastaa joku WebAPI?

11

1804

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Anonyymi

      Webbipalvelu voi koostua muutamasta mikropalveluista, kuten ingressistä, frontendistä, backendeistä, tietokannoista jne.

    • Anonyymi

      Lopeta nää sekoavaukset!

    • Anonyymi

      Ei.

      DLL on kirjasto. Microservicessä kyse on palvelusta. Windowsin tulostusjono esimerkiksi on palvelu. Webservicessä palvelua käytetään HTTP API:lla.

      Palvelu on keskeinen tapa tehdä uudelleen käytettävä komponentti backendiin.

      • Anonyymi

        Kuinka tuollaista HTTP API:ia käytetään?


      • Anonyymi

      • Anonyymi

        Tai sitten Amazon Aws tapauksessa Sqs-jono ja Sns S3


      • Anonyymi
        Anonyymi kirjoitti:

        Kuinka tuollaista HTTP API:ia käytetään?

        "DLL on kirjasto. Microservicessä kyse on palvelusta"

        Niin: HTTP APIa voit käyttää suoraan omasta ohjelmastasi tekemällä HTTP GET tai POST -kutsun (joka nykyaikaan on kyllä yleensä HTTPS eikä enää HTTP kuten oli vielä 2000 -luvun alussa pankkipalveluja lukuunottamatta, jotka ovat aina olleet HTTPS).

        Vaihtoehto:

        Jos jokin taho on tehnyt DLL:n, joka tekee HTTPS -kutsun puolestasi, silloin voit omasta ohjelmastasi käyttää tuon DLL:n sisältämiä funktioita, jolloin ko. DLL tekee sen HTTPS -kutsun puolestasi.


      • Anonyymi
        Anonyymi kirjoitti:

        "DLL on kirjasto. Microservicessä kyse on palvelusta"

        Niin: HTTP APIa voit käyttää suoraan omasta ohjelmastasi tekemällä HTTP GET tai POST -kutsun (joka nykyaikaan on kyllä yleensä HTTPS eikä enää HTTP kuten oli vielä 2000 -luvun alussa pankkipalveluja lukuunottamatta, jotka ovat aina olleet HTTPS).

        Vaihtoehto:

        Jos jokin taho on tehnyt DLL:n, joka tekee HTTPS -kutsun puolestasi, silloin voit omasta ohjelmastasi käyttää tuon DLL:n sisältämiä funktioita, jolloin ko. DLL tekee sen HTTPS -kutsun puolestasi.

        DLL ei tähän liity oikeasti millään tavalla.

        DLL Windowseissa käytetty dynaamisesti linkattava kirjasto. Käytännössä on käännetty läjä koodia palikaksi mitä voi käyttää sellaisenaan. Sillä ei ole mitään tekemistä serviceiden kanssa.


    • Anonyymi

      Eikös tästä ollu joku tehnyt mikrokerneleinä käyttöjärjestelmänkin, ts. tiedostojen tallennus oli palvelu(mikrokernel), jota muut osat käyttivät halutessaan tallentaa tietoja, jne. En muista, miksi tämä ei yleistynyt, mutta kai siihen oli jokin tekninen syy. Periaatteessa tulee kuitenkin helpommin ylläpidettävää koodia, joka on erittäin selvärajaista - sopii hyvin olio-ohjelmoinnin kanssa yhteen!

      • Anonyymi

        Mikrokernel ei ole palvelu, mikrokernelissä esimerkiksi tiedon tallennus tai verkkopino ovat palveluita.


    • Anonyymi

      Ei ole. Tuo on linkkaamista, ei microservice.

      Microservice on sitä että ohjelma palastellaan serviceihin, jokainen service on prosessi, ja niitä sitten käytetään jollain protokollalla. Aika tavallisesti serviceihin laitetaan kommunikointia varten publish-subscribe patternin mukaisesti jokin millä välitetään viestit. Servicet voivat tietenkin olla eri laitteilla myös, että protokollat laitetaan toimimaan verkkosocketien läpi.

      Idea tietenkin on se että voi päivittää jotain serviceä koskematta muuhun ohjelmaan mikä on käynnissä ja on helppo testata niitä serviceitä. Samalla järjestelmä huomioi laitteella rinnakkaisuuden myös automaattisesti, että ei tarvitse käydä vaikka kikkailemaan säikeiden kanssa.

      Temppu toki onnistuu C-kielellä myös vaikka se onkin huono siinä. Helpoin tapa olisi määrittää servicet vaikka Apache HTTP serverillä ja laittaa sinne C-kieliä prosesseja vastaamaan queryihin. Näitähän voi sitten vaihdella ajon aikana helposti.

      Tästä enempää C-tyylillä ei asiaa oikein voi tehdä. On huomioitava että C on tarkoitettu käytännössä matalammella tasolle, ilman että hajautetaan ohjelmaa useille laitteille, että tässä lähinnä vastine olisi "init" ja "systemd".

      Init on se vanha mikä oli aikoinaan käytössä yleisesti unixeissa mutta ne kun vaihtuivat suurelta osin linuxeihin niin on siirrytty systemd serviceihin

      https://en.wikipedia.org/wiki/Init
      https://en.wikipedia.org/wiki/Systemd

      Eli toki voi tehdä serviceistä koostuvan järjestelmän tietokoneelle hajauttamatta sitä useammalle laitteelle. C-kieli tosin on aikoja sitten jäänyt vanhaksi että sitä käytetään enää tällaissa vain matalalla tasolla, käyttöjärjestelmän palveluiden muodossa.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Tänään pyörit ajatuksissa enemmän, kun erehdyin lukemaan palstaa

      En saisi, silti toivon että sinä vielä palaat ja otetaan oikeasti selvää, hioituuko särmät ja sulaudummeko yhteen. Vuod
      Ikävä
      22
      5494
    2. Huomenta ihana

      Kauniskasvoinen ihanuus 😘 saan sut vielä
      Ikävä
      32
      4810
    3. Hei rakas...

      Miten on työpäivä sujunut? Rakastan sinua 💗
      Ikävä
      28
      2731
    4. Edelleen sitä on vaikea uskoa

      Että olisit oikeasti rakastunut muhun
      Ikävä
      34
      2354
    5. Toiveikas vai toivoton

      torstai? Ajatuksia?
      Ikävä
      37
      2058
    6. Vitsi mihin menit. Heti takasin.

      Mä näin sut tuu takasin! Oli kiire, niin en ehtiny sin perään!
      Ikävä
      15
      2008
    7. En ole koskaan kokenut

      Ennen mitään tällaista rakastumista. Tiedän että kaipaan sinua varmaan loppu elämän. Toivottavasti ei tarvitsisi vain ka
      Ikävä
      19
      1647
    8. Mukavaa päivää

      Mun rakkauden kohteelle ❤️ toivottavasti olet onnellinen
      Ikävä
      12
      1601
    9. Ei tämä etene ikinä

      Kun kumpikaan ei enää ota yhteyttä. Mä en ainakaan uskalla.
      Ikävä
      23
      1472
    10. Voi ei! Jari Sillanpää heitti keikan Helsingissä - Hämmästyttävä hetki lavalla...

      Ex-tangokuningas on parhaillaan konserttikiertueella. Hän esiintyi Savoy teatterissa äitienpäivänä. Sillanpää jakoi kons
      Suomalaiset julkkikset
      25
      1449
    Aihe