Danas je tema i dalje vrlo relevantna na terenuinformacijska tehnologija, posvećena razvoju i implementaciji arhitekture klijent-poslužitelj. To je zbog činjenice da se informacijski sustavi različitih razmjera sve više koriste u raznim područjima. Osim toga, struktura bilo koje baze podataka kreira se prema određenim parametrima i to na takav način da je s njom moguće raditi u normalnom načinu rada samo uz upotrebu posebnih aplikacija. Stoga je implementacija arhitekture klijent-poslužitelj vrlo važan zadatak s kojim se suočavaju odjeli informacijske tehnologije u raznim objektima, čije će uspješno rješenje omogućiti poduzeću optimalan i nesmetan rad.
Socket zasnovan poslužitelj
Socket poslužiteljomogućuje istovremeno obrađivanje zahtjeva velikog broja korisnika. U ovom slučaju, administrator u bilo kojem trenutku može izvršiti prilagodbe postavki kako bi uveo ograničenje broja istovremeno opsluženih korisnika. Prema zadanim postavkama ovaj parametar ne sadrži ograničenja.
Nakon što se klijent poveže s poslužiteljem, on se otvarazasebni kanal s utičnicom kroz koju se razmjenjuju podaci. Međutim, najoptimalnije je i najsigurnije primijeniti poseban odvojeni postupak za svaku novu vezu.
Shema arhitekture "Klijent - poslužitelj"
Razmotrimo detaljnije shemu implementacije arhitekture, sekvencijalno analizirajući često korištene definicije:
1. Svojstva ServerType i Port.Da bi se korisnik mogao povezati s poslužiteljem, važno je osigurati da priključak koji koriste i poslužitelj i klijent bude isti. Svrha je ovog parametra izrađena u svojstvu Port. Vrsta veze određuje se parametrom ServerType.
2. Postupak otvaranja utičnice. Da biste započeli sesiju klijent / poslužitelj, važno je otvoriti utičnicu i port. Koristi se svojstvo Listen.
3.Nadalje, podaci se razmjenjuju s korisnikom. Pri isključivanju, klijent se prekida. Uz odgovarajuću naredbu administratora sustava, poslužitelj završava svoj posao, prekidajući sve uspostavljene veze i zaustavljajući proces čekanja novih veza.
Korištenje TServerSocket u Delphi klijent-poslužiteljskim programima
Za slanje i primanje podataka odkorisnik koristi događaje OnClientWrite i OnClientRead. U tom slučaju s korisnikom možete komunicirati putem parametra kao što je ClientSocket. Pri radu se često koriste sljedeće metode i svojstva:
- broj trenutno povezanih korisnika;
- broj aktivnih procesa;
- broj besplatnih procesa;
- port, ime hosta i lokalna IP adresa;
- deblokada i blokiranje utičnice.
U zaključku, obratimo pažnju na čestoposebno svojstvo koje se primjenjuje je Data. Ovo se svojstvo odnosi na sljedeću situaciju. Poslužitelj se u pravilu koristi za usluživanje velikog broja korisnika, što znači da postoji potreba za pohranom podataka o svakom klijentu, a ti podaci moraju biti vezani za određenu utičnicu. U takvim je situacijama upotreba ručnog uvezivanja vrlo nezgodna, pa se stoga svojstvo Data široko koristi. Međutim, važno je imati na umu da su podaci pokazivač, pa je stoga važno provjeriti jesu li ispunjena sva pravila za rad s pokazivačima (naznaka tipa, dodjela memorije itd.)
Dokumentacija
Do danas, literatura o razvojuPostoji vrlo malo Delphi klijentskih / poslužiteljskih aplikacija povezanih s razvojem i upotrebom soketa. Stoga se za detaljno proučavanje ovog aspekta možete pozvati na dokumentaciju o Linux i Unix sustavima, budući da detaljno se raspravlja o tehnologiji postavljanja aplikacija pomoću utičnica, međutim, u pravilu, u Perlu ili C ++.
p>