<div dir="ltr"><div dir="rtl">منظورم این بود که به جای ران کردن فایل بش مستقیما فایل پایتون را به گرید انجین بفرستید وگرنه استفاده از pwb.py که ضروری است و بدون آن که کار نمی‌کند. شرمنده سوتفاهم شد ;)</div><div dir="rtl"><br></div><div dir="rtl">آن مشکل ممکن است از طریق رفتن به کیوبرنیتیس حل شود. بگذارید درخواست کنم که تغییر دهند.</div><div dir="rtl"><br></div><div dir="rtl">ارادتمند</div><div dir="rtl"><br></div></div><br><div class="gmail_quote"><div dir="ltr">On Sat, Sep 17, 2016 at 1:03 AM Huji Lee <<a href="mailto:huji.huji@gmail.com">huji.huji@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">خوب من همان کار را کرده بودم! شما گفتید عوض کنم ؛) به همان حالت pwb.py برش گرداندم<br><br></div><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">کد به دیتابیس وصل می‌شود و کوئری می‌راند. اما یکی یکی. یعنی هر کوئری تا تمام نشود و جواب ثبت نشود سراغ بعدی نمی‌رود. در نتیجه نباید مشکلی کش داشته باشیم. دیگر این که همین کد مثلاً‌ چهارماه پیش سرعتش بیشتر بود تا الان. احساس می‌کنم که مشکل I/O است چون حتی کدهای ساده هم کند شده‌اند<br><br></div><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">کمک شما را سپاسگزارم<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-09-16 15:09 GMT-04:00 Amir Ladsgroup <span dir="ltr"><<a href="mailto:ladsgroup@gmail.com" target="_blank">ladsgroup@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 .8ex;border-left:1px #ccc solid;border-right:1px #ccc solid;padding-left:1ex;padding-right:1ex"><div dir="ltr"><div dir="rtl">اول اینکه وقتی کور را می‌رانید مستقیما کد را اجرا نکنید. از طریق wrapper pwb.py اجرا کنید که یک سری نرمالیزاسیون انجام می‌دهد که به شدت نیاز می‌شود.</div><div dir="rtl"><br></div><div dir="rtl">در مورد مشکل یونکید، در واقع این مشکل گرید انجین و زیرساخت پرل گرید انجین ما است که با مهاجرت به کیوبرنیتیس حل می‌شود یا حلش آسانتر است.</div><div dir="rtl">به طور کلی وقتی روی گرید انجین اجرا می‌کنید اجازه ندهید ربات چیزی یونیکد پرینت کند که ارور می‌دهد.</div><div dir="rtl"><br></div><div dir="rtl">کد را باید چک کنم که چه چیزی را قبلش می‌خواند که چنین می‌شود. ممکن است تلاش کند به دیتابیس وصل شود و در لوکال‌هاست سریع فیل شود.</div><div dir="rtl">ارادتمند</div></div><div><div><br><div class="gmail_quote"><div dir="ltr">On Fri, Sep 16, 2016 at 11:32 PM Huji Lee <<a href="mailto:huji.huji@gmail.com" target="_blank">huji.huji@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div style="font-family:tahoma,sans-serif" class="gmail_default" dir="rtl">احتمالا منظورتان چیزی شبیه به این بوده:<br><br><div style="text-align:left"> jsub -once -N "weekly-slow" -mem 1g -o /data/project/huji/err/weekly-slow.out -e /data/project/huji/err/weekly-slow.err /data/project/huji/core/scripts/weekly-slow.p<br></div><br></div><div style="font-family:tahoma,sans-serif" class="gmail_default" dir="rtl">آن یک قدم اضافی را برای این گذاشتم که دست که چند ماه پیش که این کد را نوشتم، وقتی از داخل خود دستور jsub اجرا می‌شد با یونیکد مشکل پیدا می‌کرد اما وقتی jsub یک اسکریپت را اجرا می‌کرد این مشکل رخ نمی‌داد. الان دستور بالا را زدم اجرا شود ببینیم چه می‌شود<br><br></div><div style="font-family:tahoma,sans-serif" class="gmail_default" dir="rtl">اما مشکل کند بودن را حتی بدون jsub هم می‌توان دید. وقتی من فقط دستور زیر را اجرا می‌کنم:<br><br><div dir="ltr" style="text-align:left">python core/pwb.py weekly-slow<br></div><br></div><div style="font-family:tahoma,sans-serif" class="gmail_default" dir="rtl">از زمانی که من دستور را اجرا می‌کنم تا زمانی که خروجی «Stats bot started ...» برای من ظاهرا می‌شود نزدیک یک دقیق طول می‌کشد! این در حالی است که آن سطر تقریباً اول سطر ربات است. این یعنی لود کردن pywikibot دارد این همه زمان می‌گیرد که اصلا منطقی نیست چون روی ماشین درپیتی من کلش یک ثانیه هم نمی‌برد!<br></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-09-16 14:08 GMT-04:00 Amir Ladsgroup <span dir="ltr"><<a href="mailto:ladsgroup@gmail.com" target="_blank">ladsgroup@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 .8ex;border-left:1px #ccc solid;border-right:1px #ccc solid;padding-left:1ex;padding-right:1ex"><div dir="ltr"><div dir="rtl">خب چرا مستقیما ران نمی‌کنید؟</div><div dir="rtl"><span style="color:rgb(33,33,33);font-family:tahoma,sans-serif"> jsub -once -N "weekly" -mem 1g -o /data/project/huji/err/weekly.</span><span style="color:rgb(33,33,33);font-family:tahoma,sans-serif">out -e  </span><span style="line-height:1.5;font-size:13px;color:rgb(33,33,33);font-family:tahoma,sans-serif">/data/project/huji/err/weekly.</span><span style="line-height:1.5;font-size:13px;color:rgb(33,33,33);font-family:tahoma,sans-serif">err /data/project/huji/core/</span><span style="line-height:1.5;color:rgb(33,33,33);font-family:tahoma,sans-serif">/data/project/huji/err/weekly.</span><span style="line-height:1.5;color:rgb(33,33,33);font-family:tahoma,sans-serif">err /data/project/huji/core/scripts/weekly.py</span></div><div dir="rtl"><span style="line-height:1.5;color:rgb(33,33,33);font-family:tahoma,sans-serif">(= مسیر کامل اسکریپت شما)</span></div><div dir="rtl"><span style="line-height:1.5;color:rgb(33,33,33);font-family:tahoma,sans-serif"><br></span></div><div dir="rtl"><span style="line-height:1.5;color:rgb(33,33,33);font-family:tahoma,sans-serif">این کمی بهتر است و ممکن است روی سرعت I/O تاثیر مثبت بگذارد.</span></div><div dir="rtl"><br></div><div dir="rtl">گاهی متصل شدن به رپلیکاهای دیتابیس کند می‌شود که همان مشکل I/O است و حدسم این است که با انتقال به کیوبرنیتیس درست شود. اول موضوع بالا را امتحان کنید و اگر جواب نداد به کیوبرنیتیس منتقل میکنیم.</div><div><div><div class="gmail_quote"><div dir="ltr">On Fri, Sep 16, 2016 at 10:28 PM Huji Lee <<a href="mailto:huji.huji@gmail.com" target="_blank">huji.huji@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">البته ناگفته نماند که من اسکپریت‌ها را با jstat روی گرید اجرا می‌کنم. شبیه این:<br><br><div style="text-align:left">jsub -once -N "weekly" -mem 1g -o /data/project/huji/err/weekly.out -e /data/project/huji/err/weekly.err /data/project/huji/jobs/weekly.sh<br><br></div><div style="text-align:right">که weekly.sh فقط یک سطر است:<br><br><div style="text-align:left">python ~/core/pwb.py weekly <br><br><br></div></div></div></div><div class="gmail_extra"><br><div class="gmail_quote">2016-09-16 13:48 GMT-04:00 Huji Lee <span dir="ltr"><<a href="mailto:huji.huji@gmail.com" target="_blank">huji.huji@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 .8ex;border-left:1px #ccc solid;border-right:1px #ccc solid;padding-left:1ex;padding-right:1ex"><div dir="ltr"><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">کد را در <a href="https://github.com/PersianWikipedia/fawikibot" target="_blank">https://github.com/PersianWikipedia/fawikibot</a> می‌توانید ببینید (چهار پروندهٔ stats.py و weekly.py و weekly-slow.py و inactive-users.py را ببینید، سه تای آخری صرفاً اولی را صدا می‌کنند که کوئری‌های مختلف را اجرا کند؛ بیشتر تاخیر مال «قبل از» اجرا شدن کوئری است).<br><br></div><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">ربات هم روی تول لبز اجرا می‌شود. حدس من هم مشکلات I/O بود. به گمانم بهتر است ربات را به پروژهٔ خودمان منتقل کنم یا به kubernetes. شما نظرتان چیست؟<br></div></div><div><div><div class="gmail_extra"><br><div class="gmail_quote">2016-09-16 13:11 GMT-04:00 Amir Ladsgroup <span dir="ltr"><<a href="mailto:ladsgroup@gmail.com" target="_blank">ladsgroup@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 .8ex;border-left:1px #ccc solid;border-right:1px #ccc solid;padding-left:1ex;padding-right:1ex"><div dir="ltr"><div dir="rtl">رباتتان در تول لبز است یا در پروژه ویکی‌فا در لبز؟ اگر در پروژه باشد که یک ماشین مجازی خاص خودش است و مشکلاتش ممکن است به دلیل کمبود رم یا سی پی یو باشد (اورس در لبز گاهی به این مشکلات برخورد می‌کرد). اگر در تول لبز است ممکن است به خاطر مشکلات نوشتن در NFS یا سرعت بسیار پایین I/O باشد که حدسم این است کیوبرنیتیس ممکن است در موردش بهتر عمل کند. نام سرویس گروپ را بدهید و اگر خواستید منتقلش می‌کنیم اگر هم خواستید کد را با من به اشتراک بگذارید تا نگاهی به آن بیندازم.</div><div dir="rtl"><br></div><div dir="rtl">ارادتمند</div></div><div><div><br><div class="gmail_quote"><div dir="ltr">On Fri, Sep 16, 2016 at 8:47 PM Huji Lee <<a href="mailto:huji.huji@gmail.com" target="_blank">huji.huji@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">من نمی‌دانم مشکلی که من با آن مواجهم مربوط به این قضیه هست یا نه، اما ربات‌هایی که با پایتون اجرا می‌کنم گاهی برای یک برنامهٔ ساده ده‌ها ثانیه برای لود شدن زمان می‌برند.<br><br></div><div dir="rtl" class="gmail_default" style="font-family:tahoma,sans-serif">روند انتقال به کیوبرنیتیس به چه شکلی است؟ <br></div></div><div class="gmail_extra"><br><div class="gmail_quote"></div></div><div class="gmail_extra"><div class="gmail_quote">2016-09-16 12:06 GMT-04:00 Amir Ladsgroup <span dir="ltr"><<a href="mailto:ladsgroup@gmail.com" target="_blank">ladsgroup@gmail.com</a>></span>:<br></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 .8ex;border-left:1px #ccc solid;border-right:1px #ccc solid;padding-left:1ex;padding-right:1ex"><div dir="ltr"><div dir="rtl">امروز به ارائه‌ای رسیدم که توضیح کوتاهی است چرا لبز بسیار ناپایدار بود و چگونه این مشکل رفع شده‌است. توصیه می‌کنم ببینید:</div><div dir="rtl"><a href="https://www.youtube.com/watch?v=6XGUTu3WhBw" target="_blank">https://www.youtube.com/watch?v=6XGUTu3WhBw</a><br></div><div dir="rtl"><br></div><div dir="rtl">خلاصه‌اش این است که سیستم تول لبز که بازمانده از تول سرور بود روی سان گرید انجین ۶.۲ می‌چرخید که مشکلات خاص خودش را داشت ولی اکنون یک سامانه دوتایی شده‌است که بخش دوم از کیوبرنیتیس استفاده می‌کند و بعضی از سرویس گروپ‌ها مانند ربات من از کیوبرنیتیس هستند. کیوبرنیتیس سیستم هندل کردن سیستم‌های توزیع‌شده است که توسط گوگل برای کنترل سرورهای خودش ساخته شد و اکنون به صورت اوپن سورس دراختیار عموم است.</div><div dir="rtl"><br></div><div dir="rtl">اگر می‌خواهید که سرویس گروپ شما به کیوبرنیتیس مهاجرت کند که سریعتر ران شود و پایدارتر باشد بگویید تا دنبال انجام دادنش بروم.</div><div dir="rtl"><br></div><div dir="rtl">اردتمند</div></div>
<br></blockquote></div></div><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0 .8ex;border-left:1px #ccc solid;border-right:1px #ccc solid;padding-left:1ex;padding-right:1ex">_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
</blockquote></div>
</div></div><br>_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
<br></blockquote></div><br></div>
</div></div></blockquote></div><br></div>
_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
</blockquote></div></div></div></div>
<br>_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
</blockquote></div>
</div></div><br>_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
<br></blockquote></div><br></div>
_______________________________________________<br>
Wikipedia-fa-tech mailing list<br>
<a href="mailto:Wikipedia-fa-tech@lists.wikimedia.org" target="_blank">Wikipedia-fa-tech@lists.wikimedia.org</a><br>
<a href="https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech" rel="noreferrer" target="_blank">https://lists.wikimedia.org/mailman/listinfo/wikipedia-fa-tech</a><br>
</blockquote></div>