Mauvzu: Server va mijoz tushunchalari Reja


Mauvzu: Exo serverni ishlab chiqarish chiqish



Download 371,19 Kb.
bet19/25
Sana22.07.2022
Hajmi371,19 Kb.
#839239
1   ...   15   16   17   18   19   20   21   22   ...   25
Bog'liq
1-Mauvzu Server va mijoz tushunchalari Reja Mijoz-server tushu (1)

Mauvzu: Exo serverni ishlab chiqarish chiqish Reja:

  1. Mijoz / server dasturi

  2. TCP echo server / mijoz

  3. TCP sinxron mijoz

Bu bobda biz kichik mijoz / server dasturini amalga oshiramiz, bu, ehtimol, eng oddiy mijoz
/ server ilovasi bo'ladi. Bu mijozning yozganlarini mijozga qaytaradigan va keyin mijozning aloqasini yopadigan echo -server ilovasi. Server har qanday mijozlar bilan ishlashi mumkin. Yangi mijoz ulanganida, u xabar yuboradi. Server butun xabarni oladi va uni qaytaradi. Shundan so'ng, u aloqani yopadi. Shunday qilib, har bir echo -mijoz serverga ulanadi, xabar yuboradi va server nima javob berganligini o'qiydi, bu uning yuborgan xabari ekanligiga ishonch hosil qiladi va server bilan suhbatni tugatadi.
Biz avval sinxron dasturni, so'ngra asenkron dasturni ishga solamiz, shuning uchun siz ularni osongina solishtirishingiz mumkin:

Bu erda butun kod to'liq ko'rsatilmaydi, faqat uning qismlari, barcha kodni maqolaning oxiridagi havolada ko'rish mumkin.


TCP echo server / mijoz

TCP uchun biz "\ n" belgisi bilan tugaydigan har bir xabarning qo'shimcha afzalliklariga ega bo'lishimiz mumkin. Sinxron echo -server / mijoz yozish juda oson. Biz sinxron mijoz, sinxron server, asenkron mijoz va asenkron server kabi dasturlarga misollar keltiramiz.


TCP sinxron mijoz

Ko'pgina noaniq misollarda, mijoz kodi odatda server kodidan ancha sodda (chunki server bir nechta mijozlar bilan ishlashga to'g'ri keladi). Quyidagi misol qoidadan istisno hisoblanadi:






Funktsiyaga e'tibor bering sync_echo. U serverga ulanish uchun barcha mantiqni o'z ichiga oladi, unga xabar yuboradi va javob qaytarilishini kutadi. Siz o'qish uchun bepul funktsiyadan foydalanayotganimizni payqadingiz read(), chunki biz butun xabarni '\ n' belgisigacha olishni xohlaymiz. Funktsiya sock.read_some()etarli bo'lmaydi, chunki u faqat mavjud bo'lgan narsalarni o'qiydi, lekin bu xabarni to'liq emas. Read () funktsiyasining uchinchi dalili oxirgi ishlovchi. Agar xabar to'liq o'qilgan bo'lsa, u 0 ga qaytadi. Aks holda, keyingi bosqichda (bajarilishidan oldin read) o'qilishi mumkin bo'lgan buferning maksimal hajmi qaytariladi . Bizning holatda, u har doim 1 -ni qaytaradi, chunki biz xato qilgandan ko'ra ko'proq o'qishni xohlamaymiz. Vmain()biz bir nechta mavzu yaratamiz; mijoz yuboradigan har bir xabar uchun bitta mavzu va ularning bajarilishini kuting. Agar siz dasturni ishga tushirsangiz, siz quyidagi natijani ko'rasiz:



server echoed our John says hi: OK server echoed our so does James: OK


server echoed our Lucy just got home: OK server echoed our Boost.Asio is Fun!: OK

E'tibor bering, biz sinxron mijoz bilan ishlayotganimiz uchun qo'ng'iroq qilishning hojati yo'q service.run().




  1. Download 371,19 Kb.

    Do'stlaringiz bilan baham:
1   ...   15   16   17   18   19   20   21   22   ...   25




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish