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?
Vastaukset 11
- 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 kirjoitti:
Kuinka tuollaista HTTP API:ia käytetään?
No sillä HTTP:llä.
Ei sitä HTTP protokollan tukea sattumalta ole joka puolella. Tästä voit tutustua protokollan ominaisuuksiin tarkemmin: https://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol - 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
Ampuminen kylpylässä
Onko vornasen timbe käynyt hiukan kylpemässä vai mikä tämä ampumatapaus on kylpylässä? Tuntuu aika villi meno olevan naa741670- 231172
Kemijärvellä vesionnettomuus
Pitkänsillan ja taiteilijanniemen välillä nähty henkilön painuvan veden alle. Mitä on tapahtunut? Onko vesihiisi taas as321073Hei, voitko kuunnella
Voisitko auttaa minua selvittämään asioita? En halua ajaa sinua hulluuteen kanssani, en sitoa sinua, en esittää vaatimu134906Joku porukka lähtenyt täältä
Ihmeen hiljainen on palsta nyt. Yleensä tänne tulvii aloituksia yms, mutta nyt on kyllä erikoisen hiljaista.189826- 64694
Olipa yllätys
Kuten hyvin moni tiesi/arvasi että valetta alusta loppuun toi *olemme ystäviä* satu. Instassaan käsi kädessä kuva kertoo192619On todella ikävää
Todella ikävää, että asiat ovat menneet tällaisiksi. Tämä ei ollut missään vaiheessa tarkoitukseni. Olen tehnyt virheit79598- 49561
- 71547
Se kun olit pitkästä aikaa silmieni edessä
Oli kyllä sykähdyttävää. Tiedätkö, mikä laittaa minut ikävöimään sinua? Kun palautan mieleeni valtavan ihanan olemuksen,32518- 55507
- 57485
Oletteko koskaan torjuneet kaivattuanne?
Minä olen, kun en silloin tajunnut vielä ihastuneeni. Yritin paikata tapahtunutta, mutta ei onnistunut enää.25457Kai sä mies ymmärrät..
..ettet jättänyt vaihtoahtoa. Tottakai toivon vielä, että pystyisit toimimaan niin että asiat korjaantuisivat. Vahvast28432- 34424
- 33423
- 40417
- 16409
- 82398