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?
Microservices - olenko ymmärtänyt oikein?
11
1796
Vastaukset
- 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
Ja taas ammuttu kokkolassa
Kokkolaisilta pitäisi kerätä pois kaikki ampumaset, keittiöveitset ja kaikki mikä vähänkään paukku ja on terävä.354289Kuinka kauan
Olet ollut kaivattuusi ihastunut/rakastunut? Tajusitko tunteesi heti, vai syventyivätkö ne hitaasti?1141586Milli-helenalla ongelmia
Suomen virkavallan kanssa. Eipä ole ihme kun on etsintäkuullutettu jenkkilässäkin. Vähiin käy oleskelupaikat virottarell2481546Helena Koivu on äiti
Mitä hyötyä on Mikko Koivulla kohdella LASTENSA äitiä huonosti . Vie lapset tutuista ympyröistä pois . Lasten kodista.2181400- 351266
Ja taas kerran hallinto-oikeus että pieleen meni
Hallinto-oikeus kumosi kunnanhallituksen päätöksen vuokratalojen pääomituksesta. https://sysmad10.oncloudos.com/cgi/DREQ881078Löydänköhän koskaan
Sunlaista herkkää tunteellista joka jumaloi mua. Tuskin. Siksi harmittaa että asiat meni näin 🥲1321072Kun näen sinut
tulen iloiseksi. Tuskin uskallan katsoa sinua, herätät minussa niin paljon tunteita. En tunne sinua hyvin, mutta jotain471054Purra saksii taas. Hän on mielipuuhassaan.
Nyt hän leikkaa hyvinvointialueiltamme kymmeniä miljoonia. Sotea romutetaan tylysti. Terveydenhoitoamme kurjistetaan. ht2671031- 62994