PDA

View Full Version : اتصال کلاینت ویندوز به سرور/کلاینت لینوکس



yasercomeng
سه شنبه 14 اسفند 1386, 11:02 صبح
سلام من میخوام برنامه ای بنویسم که بتونه ارتباطه کلاینت هایه ویندوز رو با سرور لینوکس انجام بده اما نمیدونم باید از کجا شروع کنم تو سایتایه خارجی هم گشتم ولی چیزی نبود.زبان برنامه نویسی ای که من توش خیلی کار کردم c#.net و vb.net هست اگه تونستین بهم کمک کنین چون خیلی کم با لینوکس کار کردم.
ممنون.
my email:yaserkeneshloo@gmail.com
please mail me your help

حامد مصافی
سه شنبه 14 اسفند 1386, 19:54 عصر
تصمیم دارید از چه تکنولوژی برای ارتباط فی ما بین برنامه ها استفاده کنید?
در واقع به زبان ساده تر این ارتباط چه نوع ارتباطی خواهد بود?

سرور شما Notify Server خواهد بود یا یک Database Server یا ... ?
یا صرفا سروری برای مدیریت برنامه هایی که تحت استاندرد هایی مثل Socket یا Data Gram کار میکنن?

yasercomeng
چهارشنبه 15 اسفند 1386, 23:25 عصر
سروری که ما استفاده میکنیم هم از نوع database server هست هم notify server ولی بیشتر رویه database قراره کار بشه.در ظمن ما یه کلاینت متصل به این سرور تو خود لینوکسم داریم.
با این فرض چی کار باید کنیم در ظمن اگه میشه تفاوت بین کار با datagram و sucket و موارد استفاده از اونو واسم توضیح بدین.

حامد مصافی
جمعه 17 اسفند 1386, 23:53 عصر
اگر تصمیم دارید Database Server راه اندازی کنید نباید نگران مسئله پروتکل ها باشید. نقل و انتقالات اطلاعات توسط قیسمت کلاینت و DBMS صورت خواهد پذیرفت. لذا از MS Sql Server نمی تونید استفاده کنید. چون در لینوکس پشتیبانی نمیشه. اما می تونید از MySQL یا Oracle استفاده کنید. که هر دو نیاز های شما را بر آورده خواهند کرد.

چون شما با دات نت کار می کنید به سادگی می تونید سمت کلاینت رو با Oracle پیاده سازی کنید اما Oracle در سمت سرور (لینوکس) پیچیدگی های خاص خودش را داراست.
ضمناً شما قادر خواهید بود تا این کار رو با MySQL انجام دهید. این لینک (http://dev.mysql.com/tech-resources/articles/dotnet/index.html) به شما کمک خواهد کرد.

تفاوت اصلی سوکت و دیتا گرام در این است که سوکت اتصال گراست اما دیتا گرام چنین نیست.

yasercomeng
یک شنبه 19 اسفند 1386, 17:18 عصر
اتصال کلاینتمون به notify server چی ؟هیچ محدودیتی در این زمینه وجود نداره؟
سروری که ما داریم فقط برای اعمالی روی database ها نیست بلکه علاوه بر اون کارایی مثل انتقال اطلاعاتی به جز اطلاعات بانک اطلاعاتیمون هم انجام میده (هر اطلاعاتی که می تونه شامل اطلاعات یه fax modem یا اطلاعات یه دوربین مدار بسته یا هر چیز دیگه باشه)
برای یه همچین سروری چه کار باید کرد.
اگر شما با برنامه samba تویه لینوکس کار کرده باشین اون می تونه این کارا رو انجام بده ولی چه جوریشو هنوز کامل نمی دونم.
در ضمن اگه شما برنامه ای چه تویه لینوکس و چه تویه ویندوز میشناسین که بتونه این کارو واسم انجام بده ممنون میشم معرفیش کنین و اگه چنین برنامه ای نبود اگر اصول کاری رو واسم توضیح بدین احتمالا بتونم برنامشو بنویسم.

حامد مصافی
چهارشنبه 22 اسفند 1386, 00:22 صبح
اگر منظورتون نوشتن برنامه ای (یا بهتره بگم پروتکلی) مثل سامباست، باید زیر ساخت مورد نظر رو خودتون پیاده سازی کنید. شما مجبور خواهید شد دو بخش برای این سامانه طراحی کنید. بخش سرویس دهنده و بخش سرویس گیرنده. اما قدر مسکل هر دو بخش باید از چهارجوبی یکسان استفاده کنند. خوشبختانه امروزه تمام پروتکل های زیرین شبکه توسط تمامی سیستم عامل ها پشتیبانی می شود.
اگر بخواهید این قسمت ها را با استفاده از فناوری سوکت بنویسید هیچ محدودیتی نخواهید داشت. می تونید بخش کلاینت رو با استفاده از NET. و بخش سرور رو تحت چهارچوبی مثل Qt بنویسید. حتی می تونید هر دو قسمت رو با استفاده از NET. بنویسید و در نهایت بخش سرور رو با استفاده از mono-runtime روی لینوکس اجرا کنید.
شما حتی می توانید سرویس های asp.net تولید و روی لینوکس اجرا کنید.

yasercomeng
چهارشنبه 22 اسفند 1386, 10:59 صبح
سلام ممنون از راهنمایی های فوق العاده تون اما من بازم تویه بعضی از قسمتهای حرفاتون مشکل دارم مخصوصا با Qt و mono-runtime در مورد Qt منظورتون اینه که بیایم یه برنامه بنویسیم یا نه کار دیگه رو باید با اون انجام بدیم؟و این که ابزار mono-runtime عملا برای چه کارهایی استفاده میشه یه کم بیشتر توضیح بدین من همون طور که گفتم تویه لینوکس تازه کارم.

حامد مصافی
پنج شنبه 23 اسفند 1386, 20:53 عصر
سلام
این موضوع بستگی به این داره که بخواهید قسمت سرور رو با چه زبانی پیاده سازی کنید.
اگر بخواهید از ++Cاستفاده کنید (زبان بومی و عمومی لینوکس) می تونید از کتابخانه هایی مثل Qt استفاده کنید.
اما اگر بخواهید این بخش رو با استفاده از Microsoft .NET Framework بنویسید،این قدرت رو خواهید داشت تا با استفاده از mono-runtime اون رو تحت لینوکس اجرا کنید.

پی نوشت:
1 -Qt یک کتابخانه برای برنامه نویسی است (مثل .NET Framework)
2-پروژه mono برای اجرا و توسعه برنامه های .NET تحت لینوکس خلق شده.

yasercomeng
جمعه 24 اسفند 1386, 20:34 عصر
منظورتون از این که سرور رو با QT یا با mono پیاده سازی کنم چیه؟
مگه سرور یه برنامه هست که بخوایم بنویسمش!!!؟
آقا حامد من نمی خوام samba یا چیزی مثل اون بنویسم میخوام طریقه کار با اون و پیکربندی اونو با توجه به شرایطی که تععین کردم بدونم.اگه واسه اون سواله ابتداییم این جواب رو دادین من یه کمی اون اول کار،راه رو اشتباه رفتم ولی الان دیگه می دونم مشکل طریقه پیاده سازی samba است.
یعنی واقعا لازمه که من یه چیزی مثل samba بنویسم یا اینکه ما راه رو درست رفتیم و samba میتونه همه نیازهمون رو برطرف کنه؟
اگه یه مقداری در مورد وب سرور apache هم توضیح بدین که چه کاری رو واسه ما تویه شبکه میکنه ممنون میشم.

حامد مصافی
شنبه 03 فروردین 1387, 11:24 صبح
من مسئله QT یا mono رو با این فرض که تصمیم دارید سمت سرور برنامه سفارشی خودتونو بنویسید مطرح کردم.
اگر file server مشکل شما رو حل می کنه می تونید از همون samba استفاده کنید.
apache یک سرویس دهنده اینترنته. یعنی می تونه فایل های php یا html رو پردازش کنه و به مشتری تحویل بده.

yasercomeng
یک شنبه 04 فروردین 1387, 02:26 صبح
اگه میشه یه مقداری در مورد NFS(Network File System) توضیح بدین و اینکه بگین آیا برای این پروژه به این استاندارد نیاز هست یا نه چون من تویه یه کتاب خوندم که علاوه بر samba به این ابزار هم نیاز است.ولی توضیح نداده بود برای چی.
ممنون