sajioo
پنج شنبه 19 تیر 1393, 08:46 صبح
دوستان عزیزم سلام و وقت بخیر
بنده چند وقتی با کمک اساتید همین سایت تونستم یک برنامه کلاینت سرور ساده طراحی کنم.
حالا می خوام به یک دید کلی در برخی مسائل برسم.
برای مثال فرض کنید کلاینت به سرور متصل میشه و یک عملیات ریاضی را برای سرور ارسال می کنه و سرور عملیات را حل کرده و جوابش رو به کلاینت ارسال می کنه.
این قابل انجام است.
اما می خوام یک دید صحیح در خصوص نحوه ی کار سرور داشته باشم.
حالا فرض کنید قراره سرور یک سری اطلاعات رو از دیتابیس بخونه و به کلاینت بفرسته.
این بازم عملیه اما سوال اصلی من اینه که وقتی مثلا 1000 کلاینت به صورت همزمان به سرور اتصال دارند و هر کدام می خوان اطلاعاتی خاص خودشان را از دیتابیس توسط سرور دریافت کنند چه باید کرد؟
منظورم ایه که سرور شلوغ نمیشه و جوابگو هست یا نه؟
برای مثال نرم افزار بنده یک نام کاربری به سرور ارسال میکنه.
سرور با توجه به IdTCPServer1Execute میاد نام کاربری رو میگیره و در دیتابیس جستجو کرده و اطلاعاتی نظیر سن و تحصیلات و ... رو برای کلاینت میفرسته.
الان در رخداد IdTCPServer1Execute آیا یک ترد ایجاد میشه و اگر 100 یا 1000 کلاینت باهم به سرور وصل بشن برای هرکدام یک ترد ایجاد میکنه و در خواستاشونو به صورت موازی انجام میده یا نه 1000 درخواست رو به صورت یک لیست گرفته و یکی یکی انجام میده و پس از انجام هرکدام نتیجه را به کلاینت مربوط ارسال کرده و میره سراغ بعدی؟
تشکر میکنم در این خصوص یک دید کلی و جامع به بنده بدید و یا نظرات و تجربیات خود را با بنده شریک کنید.
بنده چند وقتی با کمک اساتید همین سایت تونستم یک برنامه کلاینت سرور ساده طراحی کنم.
حالا می خوام به یک دید کلی در برخی مسائل برسم.
برای مثال فرض کنید کلاینت به سرور متصل میشه و یک عملیات ریاضی را برای سرور ارسال می کنه و سرور عملیات را حل کرده و جوابش رو به کلاینت ارسال می کنه.
این قابل انجام است.
اما می خوام یک دید صحیح در خصوص نحوه ی کار سرور داشته باشم.
حالا فرض کنید قراره سرور یک سری اطلاعات رو از دیتابیس بخونه و به کلاینت بفرسته.
این بازم عملیه اما سوال اصلی من اینه که وقتی مثلا 1000 کلاینت به صورت همزمان به سرور اتصال دارند و هر کدام می خوان اطلاعاتی خاص خودشان را از دیتابیس توسط سرور دریافت کنند چه باید کرد؟
منظورم ایه که سرور شلوغ نمیشه و جوابگو هست یا نه؟
برای مثال نرم افزار بنده یک نام کاربری به سرور ارسال میکنه.
سرور با توجه به IdTCPServer1Execute میاد نام کاربری رو میگیره و در دیتابیس جستجو کرده و اطلاعاتی نظیر سن و تحصیلات و ... رو برای کلاینت میفرسته.
الان در رخداد IdTCPServer1Execute آیا یک ترد ایجاد میشه و اگر 100 یا 1000 کلاینت باهم به سرور وصل بشن برای هرکدام یک ترد ایجاد میکنه و در خواستاشونو به صورت موازی انجام میده یا نه 1000 درخواست رو به صورت یک لیست گرفته و یکی یکی انجام میده و پس از انجام هرکدام نتیجه را به کلاینت مربوط ارسال کرده و میره سراغ بعدی؟
تشکر میکنم در این خصوص یک دید کلی و جامع به بنده بدید و یا نظرات و تجربیات خود را با بنده شریک کنید.