TCP/IP serveri?

Eli siis tietääkö joku jotain esimerkkiä reippaasti skaalautuvasta, tehokkaasta ja nopeasta tcp/ip serveri-esimerkistä joka olisi hyvin dokumentoitu ja toimii kaikinpuolin?

Eli siis sellainen yleispätevä serveri-runko johon voisi implementoida haluamansa palvelun "kohtuullisen" helposti, mielellään myös esimerkki vaikka siitä kuinka on tehty joku http-serveri tyyppinen sovellus?
6700
Äänestä

Muut lukivat myös

Vastaukset 6

Vanhimmat

... hyvät ohjeet kuinka Indy-komponentteja oikein käytetään tässä suhteessa...

Äänestä
  • Inyn mukana tulee monia esimerkkiprojekteja. Katsoppa vaikka send/receive records......

    Äänestä

  • zerobyte kirjoitti:

    Inyn mukana tulee monia esimerkkiprojekteja. Katsoppa vaikka send/receive records......

    Löytyykö noista Indy komponenteista mitään suomenkielistä tietoa?

    Löysin tämän sivun

    http://wiki.mureakuha.com/wiki/Indy_Project

    mutta tähän mennessä siihen ei oltu vielä lisätty paljoakaan

    Äänestä

yrität oikein kysyä?

Äänestä
  • n00bien kysymys oli aivan selkeä. Et taida vain itse ymmärtää näistä asoista mitään, sää.

    Äänestä

Indy käyttää ns. Blokkaavaa mallia.

"hätätilassa" laita formille TIdAntiFreeze...

parempi ratkaisu Indyn kanssa on käyttää säikeitä (TThread)... niiden käyttö kuitenkin vaatii erityistä huolellisuutta...

2. vaihtoehto: Käytä Indyn sijasta ICS:ää.

http://www.overbyte.be/frame_index.html

ICS käyttää ei-blokkaavaa mallia, joten kaikki hoituu tarvittaessa yhdellä säikeellä.

Ainiin, etsi ja korvaa kaikki sleep(0) -kutsut sleep(1):llä...

Jos ikinä ajat ohjelmaasi kannettavalla PC:llä, huomaat nopeasti miksi....

... jos ohjelmassa on sleep(0):lla tehty silmukka, niin kannettavan termostaattiohjattu tuuletin huutaa täysillä ja puhaltaa erittäin lämmintä, jopa kuumaa ilmaa...

.. kun taas sleep(1) antaa CPU:n levätä, jos I/O:n odottelu kuitenkin vie suurimman osan ohjelman ajasta...

ICS:ssä ainakin FTP -komponentista (ja ehkä HTTP) löytyy tuo sleep...

Avointa koodia, ja TWSocket -komponentilla voit halutessasi tehdä matalan tason TCP/IP -koodausta, eli juuri sellaisen protokollan kuin haluat.

Olemassa myös Kylix -versio Linuxille, siinä tosin kannattaa huomata, että kylix -versiossa komponentin tapahtumat liipaistaan eri säikeestä!
(käyttöliittymää tulee käsitellä vain ohjelman pääsäikeestä !) Windows -versiossa ei ole tätä ongelmaa...

Äänestä

Kommentoi aloitusta


N00bie kirjoitti:

Eli siis tietääkö joku jotain esimerkkiä reippaasti skaalautuvasta, tehokkaasta ja nopeasta tcp/ip serveri-esimerkistä joka olisi hyvin dokumentoitu ja toimii kaikinpuolin?

Eli siis sellainen yleispätevä serveri-runko johon voisi implementoida haluamansa palvelun "kohtuullisen" helposti, mielellään myös esimerkki vaikka siitä kuinka on tehty joku http-serveri tyyppinen sovellus?

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu