ربیٹ ایم کیو ماخذ کوڈ تالیف

Rabbitmq Source Code Compilation



ربیٹ ایم کیو ایک سے زیادہ تنصیب کے طریقوں کی حمایت کرتا ہے۔ اگر آپ کو ربیٹ ایم کیو ماخذ کوڈ کا تجزیہ اور ڈیبگ کرنے کی ضرورت ہے تو ، آپ کو مرتب اور انسٹال کرنے کے لئے ربیٹ ایم کیو سورس کوڈ استعمال کرنے کی ضرورت ہے۔

ربیٹ ایم کیو زبان کی بنیاد پر لکھا گیا ہے اور اس کا ماخذ کوڈ گیٹوب پر رکھا گیا ہے۔ گیتوب پر بائنری پیکیج کو براہ راست تنصیب اور استعمال کے لئے استعمال کیا جاسکتا ہے ، اور سورس کوڈ کمپریشن پیکیج کو استعمال کرنے سے پہلے مرتب کرنے کی ضرورت ہے۔ مثال کے طور پر ، ورژن 3.7.17 کے لئے ربیٹ ایم کیو کی تنصیب پیکیج کا لنک یہ ہے: https://github.com/rabbitmq/rabbitmq-server/releases/tag/v3.7.17 . یہاں ہم منتخب کر سکتے ہیں rabbitmq-server-3.7.17.tar.xz محفوظ شدہ دستاویزات۔ کمپریسڈ پیکیج میں ربیٹ ایم کیو سورس کوڈ اور دیگر ماخذ کوڈ اور ربیٹ ایم کیو پلگ ان شامل ہیں جن پر انحصار ہوتا ہے۔



چونکہ انسٹال ہونے پر ربیٹ ایم کیو کو ایرنگ / او ٹی پی ورژن پر انحصار کرنے کی ضرورت ہے ، لہذا ربیٹ ایم کیو کی سرکاری دستاویزات میں اسی طرح کی ہدایات موجود ہیں۔ https://www.rabbitmq.com/ which-erlang.html





یہاں ، ہم ربیٹ ایم کیو ورژن 3.7.17 انسٹال کرنے کا انتخاب کرتے ہیں ، اور ایرنگ ورژن 22.0.6 ، ایرنگ ورژن کا انتخاب کرتے ہیں جس کو ہم لنک سے گزر سکتے ہیں: http://35.244.242.82/yum/rabbitmq_erlang/el7/x86_64/۔ ہم erlang-22.0.6-1.el7.x86_64.rpm پیکیج کو ڈاؤن لوڈ اور انسٹال کرتے ہیں۔

ربیٹ ایم کیو کے ماخذ کوڈ کو مرتب کرنے کے اقدامات کے ساتھ ربط ایم کیو کی سرکاری دستاویزات میں اسی روابط ہیں: https://www.rabbitmq.com/build-server.html

ذیل میں ربیٹ ایم کیو کے ماخذ کوڈ کی تالیف کا عمل ہے۔ یہاں ، صرف خرگوش MQ کی تنصیب کا عمل ماخذ کوڈ سے مرتب کیا گیا ہے۔ وہ پیکجز جو ربٹ ایم کیو پر انحصار کرتے ہیں وہ براہ راست آر پی ایم پیکج (سینٹوس سسٹم جو یہاں استعمال ہوتا ہے) کے ذریعہ انسٹال ہوتے ہیں۔



1 انسٹال کریں

[root@xxxxx rabbitmq]# yum install erlang-22.0.6-1.el7.x86_64.rpm -y

2 مرتب کریں

چونکہ میرے لینکس کی تنصیب کا میک ورژن 3.8 ہے بطور ڈیفالٹ ، جب ربیٹ ایم کیو ماخذ کوڈ مرتب کرتے ہیں تو ، میک 4 ورژن کی ضرورت ہوتی ہے ، لہذا میک 4 ورژن کو مرتب کرنے کی ضرورت ہے۔

ڈاؤن لوڈ کریں 4.2 ورژن بنائیں ، لنک یہ ہے: https://ftp.gnu.org/gnu/make/

2.1 انسٹال کریں جی سی سی

[root@xxxxx rabbitmq]# yum install gcc -y

2.2 مرتب کریں 4.2 بنائیں

[root@xxxxx rabbitmq]# tar -zxvf make-4.2.tar.gz [root@xxxxx rabbitmq]# cd make-4.2 [root@xxxxx make-4.2]# ./configure [root@xxxxx make-4.2]# make && make install

2.3 3.8 کمانڈ کو تبدیل کریں

[root@xxxxx make-4.2]# which make [root@xxxxx make-4.2]# mv /usr/local/bin/make /usr/local/bin/make_bk [root@xxxxx make-4.2]# cp make /usr/local/bin/

2.4 توثیق کریں کہ میک اپ ورژن 4.2 ہے

[root@xxxxx make-4.2]# make -v GNU Make 4.2 Built for x86_64-pc-linux-gnu Copyright (C) 1988-2016 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law.

3 امرت مرتب کریں

مرتب کرنے کیلئے گیتھب سے امرت کو ڈاؤن لوڈ کریں ، لنک یہ ہے: https://github.com/elixir-lang/elixir ، انسٹالیشن کا طریقہ مندرجہ ذیل لنک کے ذریعہ انسٹال کیا جاسکتا ہے: http://www.jeramysingleton.com/install-erlang-and-elixir-on-centos-7-minimal/

[root@xxxxx rabbitmq]# unzip elixir-master.zip [root@xxxxx rabbitmq]# mv elixir-master elixir [root@xxxxx rabbitmq]# cp -r elixir /opt/ [root@xxxxx rabbitmq]# cd /opt/elixir [root@xxxxx elixir]# make clean test [root@xxxxx elixir]# ln -s /opt/elixir/bin/iex /usr/local/bin/iex [root@xxxxx elixir]# ln -s /opt/elixir/bin/mix /usr/local/bin/mix [root@xxxxx elixir]# ln -s /opt/elixir/bin/elixir /usr/local/bin/elixir [root@xxxxx elixir]# ln -s /opt/elixir/bin/elixirc /usr/local/bin/elixirc

4 مرتب کریں خرگوش MQ

[root@xxxxx rabbitmq]# tar -xvf rabbitmq-server-3.7.17.tar.xz [root@xxxxx rabbitmq-server-3.7.17]# cd rabbitmq-server-3.7.17 [root@xxxxx rabbitmq-server-3.7.17]# make all

اگر آپ کو تالیف کے عمل کے دوران کسی خرابی کا سامنا کرنا پڑتا ہے تو ، عام طور پر کمانڈ یا pkg غائب ہے ، اور آپ کو مرتب کرنے سے پہلے کمانڈ یا پی کے جی کا اسی ورژن کو انسٹال کرنے کی ضرورت ہے۔

5 ربیٹ ایم کیو کی تصدیق کریں

ربیٹ ایم کیو کو کامیابی کے ساتھ مرتب کرنے کے بعد ، آپ کو یہ تصدیق کرنے کی ضرورت ہے کہ آیا ربیٹ ایم کیو کی تقریب عام ہے۔

[root@xxxxx rabbitmq-server-3.7.17]# cd deps/rabbit/scripts/ [root@xxxxx scripts]# ./rabbitmq-server ## ## ## ## RabbitMQ 3.7.17. Copyright (C) 2007-2019 Pivotal Software, Inc. ########## Licensed under the MPL. See https://www.rabbitmq.com/ ###### ## ########## Logs: /var/log/rabbitmq/root@xxxxx /var/log/rabbitmq/root@xxxxx_upgrade.log Starting broker... completed with 0 plugins.

اسٹارٹ خرگوش ایم کیو یہاں معمول کی بات ہے ، چاہے وہ فنکشن عام ہو ، ہم خرگوش مکٹیل کمانڈ کے ذریعے تصدیق کرسکتے ہیں۔ ربیٹ ایم کیو عمل کو ختم کرنے کے بجائے ، ctrl + c پر عمل کریں ، لیکن اسے پس منظر میں چلنے دیں۔

[root@xxxxx scripts]# ./rabbitmqctl cluster_status Cluster status of node root@xxxxx ... [{nodes,[{disc,[root@xxxxx]}]}, {running_nodes,[root@xxxxx]}, {cluster_name,<<'root@xxxxx'>>}, {partitions,[]}, {alarms,[{root@xxxxx,[]}]}]

ربیٹ ایم کیو کی تقریب معمول کی بات ہے۔ اگلا ، ہم خرگوش کی انتظامیہ پلگ ان کو ربیٹ ایم کیو انٹرفیس تک رسائی کے قابل بناتے ہیں۔

[root@xxxxx rabbitmq-server-3.7.17]# make run-broker

پھر ایک اور ونڈو کھولیں اور درج ذیل کمانڈ پر عمل کریں۔

[root@xxxxx ~]# mkdir /etc/rabbitmq [root@xxxxx ~]# cp /tmp/rabbitmq-test-instances/rabbit/enabled_plugins /etc/rabbitmq/ [root@xxxxx ~]# cd /home/rabbitmq/rabbitmq-server-3.7.17 [root@xxxxx rabbitmq-server-3.7.17]# cp -r plugins deps/rabbit/

Ctrl + C میک رن-بروکر کمانڈ کو بند کردیں ، اور پھر مندرجہ ذیل کمانڈ پر عمل کریں:

[root@xxxxx rabbitmq-server-3.7.17]# cd deps/rabbit/scripts/ [root@xxxxx scripts]# ./rabbitmq-server ## ## ## ## RabbitMQ 3.7.17. Copyright (C) 2007-2019 Pivotal Software, Inc. ########## Licensed under the MPL. See https://www.rabbitmq.com/ ###### ## ########## Logs: /var/log/rabbitmq/root@xxxxx /var/log/rabbitmq/root@xxxxx_upgrade.log Starting broker... completed with 32 plugins.

اس مقام پر ، ہم 32 پلگ ان کو کھلا دیکھتے ہیں ، پلگ ان بلی / وغیرہ / خرگوش / قابلیت / فعال_ پلگ انز کو دیکھنے کے لئے کمانڈ پر عملدرآمد کرسکتے ہیں۔ 32 پلگ ان میں ربیٹ ایم کیو - مینجمنٹ پلگ ان شامل ہے ، لہذا ہم ربیٹ ایم کیو انٹرفیس تک رسائی حاصل کرسکتے ہیں ، اور اس کی پورٹ 15672 پورٹ ہے۔ انٹرفیس مندرجہ ذیل ہے:

6 خلاصہ

ربیٹ ایم کیو کا ماخذ کوڈ مرتب کرنا سیکھنے اور تجزیہ کرنے یا ربیٹ ایم کیو تیار کرنے میں مددگار ہے۔ جب ربیٹ ایم کیو کوڈ کے بہاؤ کو سیکھ رہے ہو ، آپ ماخذ کوڈ میں ڈیبگ لاگس کو شامل کرکے اس کا تجزیہ کرسکتے ہیں۔ بعد میں ہم ڈی بی جی ڈیبگنگ ٹول کا استعمال کرتے ہوئے ربیٹ ایم کیو کو تجزیہ کرنے کے کوڈ فلو کو متعارف کرائیں گے۔