ورود

View Full Version : سوال: jabber و activeMQ



m44miri
جمعه 05 آذر 1389, 20:47 عصر
کسی میدونه تفاوت سرور openfire و activeMQ در چیه؟
میدونم که openfire مبتنی بر پروتوکل xmpp است اما activeMQ را نمی دونم.
و یه سوال دیگه اینکه میشه با jms به openfire و یا سرورهای مبتنی بر xmpp/jabber متصل شد؟

javaphantom
شنبه 06 آذر 1389, 08:55 صبح
کسی میدونه تفاوت سرور openfire و activeMQ در چیه؟
میدونم که openfire مبتنی بر پروتوکل xmpp است اما activeMQ را نمی دونم.
و یه سوال دیگه اینکه میشه با jms به openfire و یا سرورهای مبتنی بر xmpp/jabber متصل شد؟




اگر منظورت از jms همان api های استاندارد سان اراکل هست بله با activeMQ می تونی کار کنی. اما در مورد محصولات داغون Microsoft نظری ندارم

m44miri
شنبه 06 آذر 1389, 15:21 عصر
منظور شما از microsoft چیه؟
مگه پرتوکل xmpp متعلق به ماکروسافته؟
میشه بیشتر توضیح بدید؟
من کد های openfire را دیدم... با java نوشته شده!

m44miri
شنبه 06 آذر 1389, 15:26 عصر
http://en.wikipedia.org/wiki/Openfire
کجای این نوشته شده ماکروسافت..فکر میکنم اشتباه متوجه شدید

javaphantom
شنبه 06 آذر 1389, 19:58 عصر
http://en.wikipedia.org/wiki/Openfire
کجای این نوشته شده ماکروسافت..فکر میکنم اشتباه متوجه شدید

درسته من به خاطر jabber که نوشته بودی فکرم اشتباه رفت.

کلا Message broker هایی که الان معروف هستن و توی بازار ایران من می دونم داره کار می کنه

active MQ بعد از اون OpenMQ بعد از او Rabbit MQ که ماله spring هست و در نهایت Hornet MQ هست که ماله JBoss هست. اینها همشون شامل Advanced Message Queuing Protocol هستند و استاندارد هستند.

m44miri
شنبه 06 آذر 1389, 20:28 عصر
ممنون
خوب با توجه به اینکه activeMQ از xmpp هم پشتیبانی میکنه میشه بگید تفاوت xmpp با Advanced Message Queuing Protocol در چیه؟

m44miri
شنبه 06 آذر 1389, 20:34 عصر
http://en.wikipedia.org/wiki/Advanced_Message_Queuing_Protocol
http://en.wikipedia.org/wiki/Extensible_Messaging_and_Presence_Protocol
ولی تفاوتشون در چیه؟

m44miri
شنبه 06 آذر 1389, 20:37 عصر
مطلب دیگه که یادم رفت بگم اینه که گوگل هم در google talk از XMPP استفاده میکنه

javaphantom
شنبه 06 آذر 1389, 21:50 عصر
ممنون
خوب با توجه به اینکه activeMQ از xmpp هم پشتیبانی میکنه میشه بگید تفاوت xmpp با Advanced Message Queuing Protocol در چیه؟

چندتا خاصیت هست که اگر یک broker داشته باشتش به اون می گن AMQP

شامل دو pattern زیر باشه یعنی بتونه پشتیبانی کنه

point to point , publisher - topic

بحث reliable باشه اینکه پیغامات گم نشه. یعنی transactional باشه یا اینکه بشه توی یک جایی خارج از حافظه موقت مثل hard disk به یک روشی ذخیرش کرد.

اینها شرطهای اصلیشه که می گن این broker یک AMQP هست.

اما گیر اساس دادی به این xmpp. داستان AMQP داستانش خفنتر از این حرفهاست.

اینکه ما از این broker می تونیم هم به صورت Asynchronous و هم Synchronous استفاده کنیم و اینکه می تونیم messsage هامون رو به چند نوع مختلف از جمله byte stream یا بصورت یک Object یا بصورت یک String همراه با یک سری مخلفات بین ماشینها رد و بدل کنیم. می تونیم روی Message هامون حتی query بزنیم. از همه مهتر توی SOA یعنی توی این معماری بسیار کار آمد هست. ما بحثی یا بهتر بگم معماری داریم به نام ESB یا همان Enterprise Service Bus که پیغام های ما حتی بصورت web service یا همون xml فایلی که دوست داری گیر دادی بهش ولم نمی کنی رو به صورت Async و Sync بین ماشین ها و بهتر بگم معماری های enterprise دیگه که به این Bus وصل هستن از این MOM یا همین broker استفاده کنیم.

می خوام بهت بگم که داستان خیلی خفن تر از این خرفهاست. من نمی دونم google چی کارکرده در این حدم نیستم که بخوام اصلا نظر بدم. من فقط دارم در مورد MOM و کمکش توی SOA صحبت می کنم. خیلی کارایهای خفن داره مثل قسمت Test گرفتن. واقعا معجزه می کنه. خیلی راحت می تونی وضعیت module ها و componenet ها تو track کنی. و و و .

ما برای پیاده سازی SOA با جاوا که من اطلاع دارم Pattern های مختلفی داریم که به کمک این MOM شدنی هست نه فقط Web service ها یا همون XML بازی.

خلاصه من اینها رو بلدم و کار کردم دیگه google چی کار می کنه به امید رهایی از این زندان. اگه رفتم اونجا بهت قول می دم برات تعریف می کنم. همرو

m44miri
یک شنبه 07 آذر 1389, 19:23 عصر
البته من شاگرد شما هم نیستم توی زمینه EJB و مباحث مربوط به اون
خوب یک سوال برام پیش اومده..
اگه شما خودت قصد داشته باشی که یک چت سرور راه بندازی که تحت وب هم باشه از چه سرویسی استفاده میکنی؟اصلا از چی استفاده میکنی؟اون دوتا خصوصیتی را هم که گفتی را openfire هم داره
من گیر ندادم به xmpp . گفتم که activeMQ از xmpp هم پشتیبانی میکنه.میخوام بدونم که آیا از طریق این پروتکول amqp میشه تصاویر وب کم را هم منتقل کرد؟حالا واقعا هم نمیدونم اون چیزی که گوگل داره ازش استفاده میکنه همین xmpp است یا خیر .. خودش که میگه xmpp است.واقعیتش اینه که گوگل اگه ۵۰ تا کار انجام بده و جزییاتشو بگه مطمعنا ۱۰۰تا کار پشت پرده هم داره که مخفی نگه داشته...
یه منبع هم که حق الانصافی بدون کش و قوص این amqp یا activeMQ را بشه از طریقش یاد گرفت و کلا این چیزایی که برام گفتی و من اصلا سر در نیاوردمو بتونم بفهمم معرفی کن:ناراحت:
اصلا این تست ماژول که گفتی به چه دردی میخوره؟کاربردش چیه؟ لطفا توضیح بیشتر بده دوست عزیز

m44miri
یک شنبه 07 آذر 1389, 19:47 عصر
http://www.opensourcery.co.za/2009/04/19/to-amqp-or-to-xmpp-that-is-the-question/
اینو پیدا کردم اما نمیدونم چقدر درست نوشته
یه نگاهی بنداز و نظرتو بگو

javaphantom
دوشنبه 08 آذر 1389, 09:56 صبح
البته من شاگرد شما هم نیستم توی زمینه EJB و مباحث مربوط به اون
خوب یک سوال برام پیش اومده..
اگه شما خودت قصد داشته باشی که یک چت سرور راه بندازی که تحت وب هم باشه از چه سرویسی استفاده میکنی؟اصلا از چی استفاده میکنی؟اون دوتا خصوصیتی را هم که گفتی را openfire هم داره
من گیر ندادم به xmpp . گفتم که activeMQ از xmpp هم پشتیبانی میکنه.میخوام بدونم که آیا از طریق این پروتکول amqp میشه تصاویر وب کم را هم منتقل کرد؟حالا واقعا هم نمیدونم اون چیزی که گوگل داره ازش استفاده میکنه همین xmpp است یا خیر .. خودش که میگه xmpp است.واقعیتش اینه که گوگل اگه ۵۰ تا کار انجام بده و جزییاتشو بگه مطمعنا ۱۰۰تا کار پشت پرده هم داره که مخفی نگه داشته...
یه منبع هم که حق الانصافی بدون کش و قوص این amqp یا activeMQ را بشه از طریقش یاد گرفت و کلا این چیزایی که برام گفتی و من اصلا سر در نیاوردمو بتونم بفهمم معرفی کن:ناراحت:
اصلا این تست ماژول که گفتی به چه دردی میخوره؟کاربردش چیه؟ لطفا توضیح بیشتر بده دوست عزیز

من قبل از اینکه بخوام چیزی راه بندازم اینکه قبلش نگاه می کنم ببینم چقدر هزینه دارم چقدر زمان دارم اطلاعاتم و درک نسبت به راه اندازی و چه ابزارهایی نیاز هست و دانشم نسبت به استفاده درست از ابزار ها هست. تیمی که می خوام داشته باشم و و و و و و و

اون تست ماژولی که به شما گفتم یک مثال بود. کلا شما باید به کاربرد کلی test اهمیت بدی . برنامه نویسی که ارزش تست رو ندونه و نتونه تست بنویسه مفت نمی ارزه. مفت نمی ارزه. حالا بگیر بیا بلا تر تا سطح معماری ها ی بزرگ که می خوای خراب کاری ها رو در بیاری و دنبال کنی تا اینکه مشکل رو حل کنی اونجاست که کلا message broker چون همونطر که بهت گفتم به صورت AMQP هست کلی بدرد می خوره.

m44miri
دوشنبه 08 آذر 1389, 14:01 عصر
ممنون از اینکه یادآوری کردی که مفت هم نمی ارزم!!! :)
بغیر از این message broker که گفتی منظور کلی من چت و چت رومه...شما بگو تانکیه که آخرین تجهیزات نظامی و مدرن روشه..چقدر توی مباحثه چت و وب چت و بکاربردن وب کم در چت کاربردیه؟
اینکه بگی برو بابا دوزار هم نمی ارزی چون message broker را بلد نیستی بنظرم از شما بعیده... همین کلمه message broker که گفتی را مطالعه کردیم اما واقعا کاربردش توی چت رومها چقدره؟من نمیدونم .
بهرحال ممنونم از وقتی که تا الان گذاشتید

javaphantom
دوشنبه 08 آذر 1389, 20:54 عصر
ممنون از اینکه یادآوری کردی که مفت هم نمی ارزم!!! :)
بغیر از این message broker که گفتی منظور کلی من چت و چت رومه...شما بگو تانکیه که آخرین تجهیزات نظامی و مدرن روشه..چقدر توی مباحثه چت و وب چت و بکاربردن وب کم در چت کاربردیه؟
اینکه بگی برو بابا دوزار هم نمی ارزی چون message broker را بلد نیستی بنظرم از شما بعیده... همین کلمه message broker که گفتی را مطالعه کردیم اما واقعا کاربردش توی چت رومها چقدره؟من نمیدونم .
بهرحال ممنونم از وقتی که تا الان گذاشتید

شما خوبی دایی. من که به شما گفتم مفت نمی ارزی. چه ربطی به بلد بودن messge borker داره.

من فقط نظرم رو گفتم و test هیچ ربطی به broker نداره. test توی دنیای نرم افزار حرف اول رو می زنه. تو همه سطوح و قسمتهاش. من منظورم به شخص خاصی نبوده و نیست. اولیش خودم.

message broker یک چیزی شبیه web application می مونه که کارش فقط جابجایی پیغامهاست.
دقیقا یک محیط جدا برای مانیتور و مدیریت کردن پیغامهاست.
همون ActiveMQ که گفتی یک چیزی شبیه tomcat در نظر بگیر که یک سری config داره. حالا خیلی خفن تر و تخصیصی تر. مثل tomcat خیلی کارا می تونی باهاش بکنی. مثل cluster شدن حتی محیط GUI داره که بتونی باهاش کار کنی

mazdadoost
دوشنبه 08 آذر 1389, 22:38 عصر
دوست عزی به شما پیشنهاد می کنم در وهله اول یک دید کلی در مورد xmpp بسدت بیرید مثلا اینکه چکار میکنه و به چی ربط داره .بعد سوال خودتون رو در جامعه xmpp مخصوصا mailing list ها مطرح کنید.
موفق باشید.

m44miri
سه شنبه 09 آذر 1389, 05:44 صبح
دوست گرامی
شوخی کردم:لبخندساده:.من از شما دو دوست خیلی چیزا در مورد EJB یاد گرفتم...من که از استادان خودم دلگیر نمی شم
در کل من تفاوت این دو پروتکول را متوجه نشدم که این تاپیک را ایجاد کردم.گو اینکه توی همین 2 روز هم خیلی چیزا یاد گرفتمتوی سایت xmpp نوشته
The Extensible Messaging and Presence Protocol (XMPP) is an
technology for the near-real-time exchange of messages and presence
notifications, where data is exchanged over Extensible Markup Language
(XML) streams
و در AMQP نوشته
The AMQP protocol (http://www.amqp.org/) is an attempt to define a standard wire level protocol for messaging
توی جواب بالایی که براتون لینک گذاشتم برای شما گفتم که در مورد هر دو صحبت کرده و حتی مقایسه کرده اما با این همه تفاوتشون در کار را متوجه نمی شم
اگه امکان داره یخورده...فقط یخورده ..اطلاعاتتون را بریزید روی پته و خلاصه بگید تفاوتشون در چیه:متفکر:
منتظر جوابتون هستم

javaphantom
سه شنبه 09 آذر 1389, 08:55 صبح
دوست گرامی
شوخی کردم:لبخندساده:.من از شما دو دوست خیلی چیزا در مورد EJB یاد گرفتم...من که از استادان خودم دلگیر نمی شم
در کل من تفاوت این دو پروتکول را متوجه نشدم که این تاپیک را ایجاد کردم.گو اینکه توی همین 2 روز هم خیلی چیزا یاد گرفتمتوی سایت xmpp نوشته
The Extensible Messaging and Presence Protocol (XMPP) is an
technology for the near-real-time exchange of messages and presence
notifications, where data is exchanged over Extensible Markup Language
(XML) streams
و در AMQP نوشته
The AMQP protocol (http://www.amqp.org/) is an attempt to define a standard wire level protocol for messaging
توی جواب بالایی که براتون لینک گذاشتم برای شما گفتم که در مورد هر دو صحبت کرده و حتی مقایسه کرده اما با این همه تفاوتشون در کار را متوجه نمی شم
اگه امکان داره یخورده...فقط یخورده ..اطلاعاتتون را بریزید روی پته و خلاصه بگید تفاوتشون در چیه:متفکر:
منتظر جوابتون هستم

در یک کلام خلاصه می کنم که AMQP دارای پیچیدگی بیشتر ولی سرعت بالا تر و همچنین اینکه xmpp رو هم پوشش می ده و اینکه یک استاندارد هست. در ضمن می تونی باهاش علاوه بر xml بازی همنطور که قبلا گفتم بایت اینور و اونور کنی برای همین که سرعت زیاد. کد زدن و نگهداریش سخته

m44miri
سه شنبه 09 آذر 1389, 16:10 عصر
یه کتابی ترجمه شده به نام پیام رسان جاوا که برای انتشارات orielly است و فقت مباحث jms را داره توضیح میده..با jms قبلا کار کرده بودم ولی نه با activeMQ بلکه با glassfish
فکر میکنم اصلا چیزی ازش نفهمیدم و فکر میکردم که فهمیدمش
دیروز دوباره از قفسه کتابام دراوردمش و شروع کردم به خوندنش
ایشالا تمومش که کردم دوباره میام و سوالات جدیدی ازتون میپرسم

javaphantom
جمعه 19 آذر 1389, 11:51 صبح
یه کتابی ترجمه شده به نام پیام رسان جاوا که برای انتشارات orielly است و فقت مباحث jms را داره توضیح میده..با jms قبلا کار کرده بودم ولی نه با activeMQ بلکه با glassfish
فکر میکنم اصلا چیزی ازش نفهمیدم و فکر میکردم که فهمیدمش
دیروز دوباره از قفسه کتابام دراوردمش و شروع کردم به خوندنش
ایشالا تمومش که کردم دوباره میام و سوالات جدیدی ازتون میپرسم

jms یک سری API هست یک سری class file هست مثل java.util مثل java.io که این اجازه رو به تو می ده که بتونی با یک broker می خواد active mq باشه می خواد hornet باشه می خواد open mq باشه بتونی کار کنی.


.با jms قبلا کار کرده بودم ولی نه با activeMQ بلکه با glassfish


این جمله یعنی چی . نگی دیگه جایی این حرفها روها. زشته.

javaphantom
جمعه 19 آذر 1389, 11:55 صبح
خود glassfish داره با message broker open mq کار می کنه. که می تونی مستقیم از خود open mq استفاده کنی بدون در نظر گرفتن glassfish. با JMS یعنی چی ؟ یعنی همونطور که تو پست قبلیم گفتم jms یک سری class در اختیارت می زاره که تو می تونی از طریق اون با broker ها ارتباط بر قرار کنی.

من عاشق این تاپیک هستم ول نکن بازم سوال کن بعد ۱۰ سال یک چیزی که مورد علاقه من باشه اینجا بوجود اومده. کار کن بیشتر تا منم از تو بیشتر یاد بگیرم. نذار این تاپیک به آرشیو بپیونده. من خیلی وقت هست که منتظرم یک حرکتی بزنی تا دیگه امروز خودم مجبور شدم یک جیزی بنویسم بلکه توام یک حرکتی بکنی

m44miri
یک شنبه 28 آذر 1389, 15:39 عصر
سلام
راستش این چند وقت داشتم روی Virtual Directory کار میکردم
خوشحالم که بالاخره یه سوالی پرسیدم که دوزار ارزش داشت...
منظورم از jms همون توابع api jms بود...منظورم از glassfish سرور بود بجای apacheMQ ...بهرحال الان درگیر این LDAP proxy هستم و میخوام به سرانجام برسونمش...گو اینکه از اول من هدفم فقط سرور چت بود که قصد داشتم توی شرکت راه بیاندازمش.اما خوب دیگه به مشکل جدیدی بر خوردم و اونم این بود که ما در شرکتمون ۲ تا سرور LDAP داریم ,می خواستم که سرور openFire به LDAP Proxy متصل کنم که بکگروند اون هم LDAP هام باشه کلی جستجو کردم و دیدم این virtual directory ها گرانقیمتن و فقط چندتا پروژه open source وجود داره مثل openDS , apacheDS,penrose که همشون با جاوا نوشته شدند
دوست داشتم با apacheDS کار کنم ولی داکیومنتهای خیلی ضعیفی داره و توزیحی در مورد proxy ندیدم توش
فعلا دارم با penrose کار میکنم که پروژه ایه که سال ۲۰۰۷ بسته شده کلا اما فعلا دستم به همین میرسه
در مورد کتاب پیام رسان جاوا که قبلا فکر میکردم فقط منظورش چت کردنه :قهقهه: اما تازه فهمیدم که بابا خیلی خفن تر ازین حرفاست ..این jms برای پیامرسانی مثلا کارگزاران بورس کاربرد داره..قبلا وقتی کتابو میخوندم میدیدم فقط داره مثالهایی از نحوه تولید سفارش و خرید کلا میزنده...اصلا نمیفهمیدم منظورش چیه...مشنگ شده بودم..فکر میکنم توی ۳ سال گذشته ۴ بار این کتابو خونده باشم اما توی این تاپیک فهمیدم که بابا منظور از jms چی بوده و برای کارگزاران و بورس کلی کاربرد داره..البته واقعیتش هنوزم عمقی نفهمیدمش..این کار که تموم بشه دوباره باید از اول بخونمش.
گفتی ۱۰ سال و کردی کبابم .نمیدونم شما بودین یا mazdadoost بود که میگفت برای مباحث و تکنولوژی جاوا باید ۱۰ سال وقت بزاری ..اون موقه ها خندم میگرفت اما الان چندتا از قفسه های کتابخونم پر از کتابای مباحث مختلف جاواست و فکر میکنم که بابا ۱۰ سال هم شاید کم باشه برای این همه
بهر حال من ول کن این jms و apacheMQ نیستم...شاید از ماه آینده...این تاپیک هم به تاریخ نمیپیونده...بزودی بر میگردم با یک عالمه سوالای ریز و درشت..:) ممنون از پیگیری شما استادان گرانقدر