xamfia
دوشنبه 26 اسفند 1387, 14:21 عصر
مقدمه ای بر سرویس های وب
امروزه دیگر بسیاری از توسعه دهندگان آینده وب را در سرویس های وب(web service (http://www.w3.org/2002/ws/)) خلاصه می کنند و معتقد می باشند تنها راه رهایی از پیچیده گی به وجود آمده که ناشی از گسترش بی حد و حصر سیستم های نرم افزاری مختلف می باشد بهره گیری از سرویس های وب می باشد.
سرویس های وب را می توانیم مهمترین،قویترین و محوریترین ابزار معماری سرویس گرا(SOA (http://en.wikipedia.org/wiki/Service-oriented_architecture)) نامید و می توان گفت اگر سرویس های وب را از معماری سرویس گرا جدا کنیم این فرایند جدید دیگر هیچ قدرتی برای به کرسی نشاندن حرف هایش ندارد!!
اگر بخواهم تعریف ساده ای از سرویس های وب داشته باشم باید عرض کنم که این پدیده با بهره گیری از XML که امروزه تقریبا برای همه سیستم های توسعه قابل شناسایی و تدوین است می تواند بین سیستم های مختلف که با زبان های مختلف ،روی Platform های مختلف،با معماری و تکنولوژی های مختلف پیاده سازی شده اند ارتباط برقرار کند.(به تکرار بیش از اندازه کلمه "مختلف" توجه کنید)
سرویس های وب با بهره گیری از تکنولوژی XML- RPC (http://www.xmlrpc.com/spec)که از تکنولوژی های جدید سیستم عامل ها برای فراخوانی توابع راه دور می باشد می توانند با XML توابعی را از را دور صدا بزنند!! که این نعمت خود دنیای جدیدی را در معماری سرویس گرا باز کرده است به طوری که همینک سازمانها بجای اینک کد و کامپوننت خود را در اختیار مشتری قرار دهند میتوانند به او قابلیت فراخوانی توابع مورد نیازش را بدهند که در واقع همین مهم است که امروزه زمینه ساز چیزی به نام خدمات و تجارت سرویس شده است.
در این میان احتمال دارد سوالات فراوانی به ذهن شما خطور کرده است.مثل اینکه:
آیا ما از هر نوع استاندارد و حالتی می توانیم برای ساخت XML سرویس هایمان استفاده کنیم؟
آیا اصلا استانداردهایی وجود دارد؟؟
برای انتقال XML بین مشتری و خادم باید از پروتکل خاصی استفاده کرد؟؟
آیا هر کسی می توانند سرویس های خود را منتشر کند و به چه شکل؟
آیا جایی برای شناسایی سرویس هایی که قبلا دیگران نوشته اند وجود دارد؟
ما چطور سرویس هایمان را به دیگران معرفی کنیم؟
سرویس هاس مختلف با فرمت های متفاوت چگونه می تواند بین هم ارتباط برقرار کنند؟؟
چه ابزارهایی امروزه برای توسعه سرویس های وب و معماری سرویس گرا عرضه شده است؟؟
...
امیدوارم در آینده نزدیک بازهم وقت کنیم تا در این تاپیک مطالبی را پیرامون سرویس های وب درج کنم.بدون شک در آن مطالب سعی خواهم کرد تا حد ممکن بازهم به زبان ساده(!) جواب بسیاری از سوالات بالا را بدهم.
البته امیدوارو در این بین دوستانی پیدا شوند و به برخی ار این سوالات پاسخ های گره گشایی بدهند.
سپاسگزارم.
میثم نوایی
WWW.PersianWebService.com
Meysam.Navaei@Gmail.com
امروزه دیگر بسیاری از توسعه دهندگان آینده وب را در سرویس های وب(web service (http://www.w3.org/2002/ws/)) خلاصه می کنند و معتقد می باشند تنها راه رهایی از پیچیده گی به وجود آمده که ناشی از گسترش بی حد و حصر سیستم های نرم افزاری مختلف می باشد بهره گیری از سرویس های وب می باشد.
سرویس های وب را می توانیم مهمترین،قویترین و محوریترین ابزار معماری سرویس گرا(SOA (http://en.wikipedia.org/wiki/Service-oriented_architecture)) نامید و می توان گفت اگر سرویس های وب را از معماری سرویس گرا جدا کنیم این فرایند جدید دیگر هیچ قدرتی برای به کرسی نشاندن حرف هایش ندارد!!
اگر بخواهم تعریف ساده ای از سرویس های وب داشته باشم باید عرض کنم که این پدیده با بهره گیری از XML که امروزه تقریبا برای همه سیستم های توسعه قابل شناسایی و تدوین است می تواند بین سیستم های مختلف که با زبان های مختلف ،روی Platform های مختلف،با معماری و تکنولوژی های مختلف پیاده سازی شده اند ارتباط برقرار کند.(به تکرار بیش از اندازه کلمه "مختلف" توجه کنید)
سرویس های وب با بهره گیری از تکنولوژی XML- RPC (http://www.xmlrpc.com/spec)که از تکنولوژی های جدید سیستم عامل ها برای فراخوانی توابع راه دور می باشد می توانند با XML توابعی را از را دور صدا بزنند!! که این نعمت خود دنیای جدیدی را در معماری سرویس گرا باز کرده است به طوری که همینک سازمانها بجای اینک کد و کامپوننت خود را در اختیار مشتری قرار دهند میتوانند به او قابلیت فراخوانی توابع مورد نیازش را بدهند که در واقع همین مهم است که امروزه زمینه ساز چیزی به نام خدمات و تجارت سرویس شده است.
در این میان احتمال دارد سوالات فراوانی به ذهن شما خطور کرده است.مثل اینکه:
آیا ما از هر نوع استاندارد و حالتی می توانیم برای ساخت XML سرویس هایمان استفاده کنیم؟
آیا اصلا استانداردهایی وجود دارد؟؟
برای انتقال XML بین مشتری و خادم باید از پروتکل خاصی استفاده کرد؟؟
آیا هر کسی می توانند سرویس های خود را منتشر کند و به چه شکل؟
آیا جایی برای شناسایی سرویس هایی که قبلا دیگران نوشته اند وجود دارد؟
ما چطور سرویس هایمان را به دیگران معرفی کنیم؟
سرویس هاس مختلف با فرمت های متفاوت چگونه می تواند بین هم ارتباط برقرار کنند؟؟
چه ابزارهایی امروزه برای توسعه سرویس های وب و معماری سرویس گرا عرضه شده است؟؟
...
امیدوارم در آینده نزدیک بازهم وقت کنیم تا در این تاپیک مطالبی را پیرامون سرویس های وب درج کنم.بدون شک در آن مطالب سعی خواهم کرد تا حد ممکن بازهم به زبان ساده(!) جواب بسیاری از سوالات بالا را بدهم.
البته امیدوارو در این بین دوستانی پیدا شوند و به برخی ار این سوالات پاسخ های گره گشایی بدهند.
سپاسگزارم.
میثم نوایی
WWW.PersianWebService.com
Meysam.Navaei@Gmail.com