وبلاگ‌های کاربران و توسعه‌دهندگان ایرانی گنو-لینوکس
وبلاگ: Linux
نوید ( erghezi )

سلام

گاهی به دلیل یک اشتباه در برنامه و اجرای یک کوئری ناصحیح حجم انبوهی از کوئری‌ها که پاسخشون خیلی زمانبر به سمت دیتابیس سرازیر میشه. در این مواقع بهتر جای اینکه کل دیتابیس رو استاپ کنید، پروسس‌های داخلی اون رو فقط kill کنید. دلیل اینکار اینه که استاپ یک دیتابیس سنگین کار بسیار هزینه‌بری است.

mysqladmin processlist -u root -pPassword | awk '$2 ~ /^[0-9]/ {print "KILL "$2";"}' | mysql -u debian-sys-maint -pPassword

اگر همچین دستوری رو روی یک دیتابیس slave بزنید، یادتون نره که باید مجدد وارد دیتابیس بشید و کاری کنید که کارش رو ادامه بده (START SLAVE) در غیر اینصورت دیتابیس از سینک خارج خواهد شد.

وبلاگ: Linux
نوید ( erghezi )

ردیس یک محدودیت خیلی مهمی داره و اون اینکه single thread  و برای همین نمی‌تونه  بیشتر از  یک core از پردازشگر رو استفاده کنه. یکی از راه‌حل‌های روتین استفاده از کلاستر ردیس که عملا اطلاعات بین چند node ردیس پخش میشه(sharding)‌. نکته مهم اینه که در این مدل شما چند نود ردیس به شکل master  دارید که هر کدوم از اونها باید دست کم یک slave داشته باشند تا در صورتیکه یک نود به هر دلیل از دسترس خارج شد، نود slave به صورت خودکار وارد بازی بشه.

در این پروسه  هیچ تضمینی برای اینکه اطلاعات از دست نره (در زمان از دست رفتن نود master)‌ وجود نداره! دلیلش اینه که شما اطلاعات رو روی node مستر می‌نویسید، نود مستر به کلاینت میگه اوکی دیتا رو دارم و بعد تازه میره دنبال اینکه دیتا  روی نود slave هم ذخیره بشه. :)‌

این رو هم بگم که برای اینکه دیتا به شکل مساوی بین node های مستر پخش بشه، کلاستر ردیس از چیزی به اسم SLOT استفاده میکنه. در مجموع ۱۶۳۸۴ اسلات ردیس کلاستر داره که بسته به تعداد node هایی که داریم میاییم اسلات ها رو بین نودها تقسیم میکنیم.

کلاینت در صورتی که به یک node (مستر) درخواست بده واطلاعات روی اون  نباشه، بجای اینکه کلید درخواستی رو بده، اطلاعات nodeی رو  که کلید داره رو میده و دوباره کلاینت باید به اون دومی درخواست بده

وبلاگ: Linux
نوید ( erghezi )

در این مطلب سه هارد ssd مدل اینتل VK0480GEYJR (تحت برند HPE)  و سامسونگ مدل MZ7KM480 و   SSD 960 PRO 512GB رو مقایسه می‌کنیم.

MZ7KM480

دو مدل اول به ریدکنترلر متصل هستند و برای دیدن نتایج واقعی  cahce ریدکنترلر خاموش است. مدل سوم روی pci express سرور سوار  است و فقط os اون رو می‌بینه.

دو  تست روی هاردهای ssd انجام می‌دیم.در تست اول برای کاری که تخصص دارند و اون نوشتن و خواندن Random هست و دیگری حالت Sequential که برای دیسک‌های معمولی هم کار راحتی و معمولا حیف برای اینجور کارها بخوایم از ssd استفاده کنیم.

هارد ssd اینتل

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
test: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=64
fio-2.2.10
Starting 1 process
Jobs: 1 (f=1): [m(1)] [100.0% done] [188.4MB/64520KB/0KB /s] [48.3K/16.2K/0 iops] [eta 00m:00s]
test: (groupid=0, jobs=1): err= 0: pid=14143: Sun Aug  6 15:16:46 2017
  read : io=3071.7MB, bw=192038KB/s, iops=48009, runt= 16379msec
  write: io=1024.4MB, bw=64040KB/s, iops=16010, runt= 16379msec
  cpu          : usr=8.89%, sys=45.45%, ctx=361045, majf=0, minf=605
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.1%, >=64=0.0%
     issued    : total=r=786347/w=262229/d=0, short=r=0/w=0/d=0, drop=r=0/w=0/d=0
     latency   : target=0, window=0, percentile=100.00%, depth=64

Run status group 0 (all jobs):
   READ: io=3071.7MB, aggrb=192037KB/s, minb=192037KB/s, maxb=192037KB/s, mint=16379msec, maxt=16379msec
  WRITE: io=1024.4MB, aggrb=64040KB/s, minb=64040KB/s, maxb=64040KB/s, mint=16379msec, maxt=16379msec

Disk stats (read/write):
  sdc: ios=773774/258385, merge=1358/173, ticks=794948/222572, in_queue=1017672, util=99.46%

نکته اول اینکه با fio سعی کردیم حالت واقعی سرور رو شبیه‌سازی کنیم ۷۵ درصد read و ۲۵ درصد write. مهمترین بخش هم iops هست.

iops=48009 برای read و iops=16010 برای رایت.

برای تست دوم از dd استفاده میکنیم. نکته مهم اینه که oflag=dsync   به ازای هر تیکه‌ای که میخواد روی هارد بنویسه (۵۱۲ بار می‌پرسه) تاییدیه از os میگره. اما conv=fdatasync تنها یکبار در انتهای نوشتن و هنگام خروج از dd تاییدیه از os گرفته میشه.

dd if=/dev/zero of=novid bs=1M count=512 oflag=dsync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 1.96172 s, 274 MB/s

dd if=/dev/zero of=novid bs=1M count=512 conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 1.45621 s, 369 MB/s

 

هارد ssd سامسونگ مدل MZ7KM480

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
test: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=64
fio-2.2.10
Starting 1 process
Jobs: 1 (f=1): [m(1)] [100.0% done] [266.7MB/90880KB/0KB /s] [68.3K/22.8K/0 iops] [eta 00m:00s]
test: (groupid=0, jobs=1): err= 0: pid=14225: Sun Aug  6 15:24:17 2017
  read : io=3071.7MB, bw=271248KB/s, iops=67811, runt= 11596msec
  write: io=1024.4MB, bw=90455KB/s, iops=22613, runt= 11596msec
  cpu          : usr=14.08%, sys=52.78%, ctx=768554, majf=0, minf=605
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.1%, >=64=0.0%
     issued    : total=r=786347/w=262229/d=0, short=r=0/w=0/d=0, drop=r=0/w=0/d=0
     latency   : target=0, window=0, percentile=100.00%, depth=64

Run status group 0 (all jobs):
   READ: io=3071.7MB, aggrb=271247KB/s, minb=271247KB/s, maxb=271247KB/s, mint=11596msec, maxt=11596msec
  WRITE: io=1024.4MB, aggrb=90454KB/s, minb=90454KB/s, maxb=90454KB/s, mint=11596msec, maxt=11596msec

Disk stats (read/write):
  sdb: ios=771941/257788, merge=1231/167, ticks=552804/164876, in_queue=722248, util=99.45%

iops=67811 برای read و iops=22613 برای رایت. که نشون میده در میون هاردهای ssd سرور  سامسونگ از مدل اینتل پیشی گرفته.

dd if=/dev/zero of=novid bs=1M count=512 oflag=dsync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 1.86999 s, 287 MB/s

dd if=/dev/zero of=novid bs=1M count=512 conv=fdatasync
512+0 records in
512+0 records out

در این تست هم سامسونگ برنده شده.

 

و اما مدل دیگه سامسونگ pro 960 که از پیش حدس می‌زنیم سرعت خیلی بالاتری داشته باشه.

سامسونگ pro 960

fio --randrepeat=1 --ioengine=libaio --direct=1 --gtod_reduce=1 --name=test --filename=test --bs=4k --iodepth=64 --size=4G --readwrite=randrw --rwmixread=75
test: (g=0): rw=randrw, bs=4K-4K/4K-4K/4K-4K, ioengine=libaio, iodepth=64
fio-2.2.10
Starting 1 process
test: Laying out IO file(s) (1 file(s) / 4096MB)
Jobs: 1 (f=1): [m(1)] [75.0% done] [719.6MB/240.2MB/0KB /s] [184K/61.5K/0 iops] [eta 00m:01s]

Jobs: 1 (f=1): [m(1)] [100.0% done] [690.4MB/229.5MB/0KB /s] [177K/58.8K/0 iops] [eta 00m:00s]

test: (groupid=0, jobs=1): err= 0: pid=14313: Sun Aug  6 15:33:11 2017
  read : io=3071.7MB, bw=705402KB/s, iops=176350, runt=  4459msec
  write: io=1024.4MB, bw=235236KB/s, iops=58808, runt=  4459msec
  cpu          : usr=19.47%, sys=70.17%, ctx=27594, majf=0, minf=367
  IO depths    : 1=0.1%, 2=0.1%, 4=0.1%, 8=0.1%, 16=0.1%, 32=0.1%, >=64=100.0%
     submit    : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.0%, >=64=0.0%
     complete  : 0=0.0%, 4=100.0%, 8=0.0%, 16=0.0%, 32=0.0%, 64=0.1%, >=64=0.0%
     issued    : total=r=786347/w=262229/d=0, short=r=0/w=0/d=0, drop=r=0/w=0/d=0
     latency   : target=0, window=0, percentile=100.00%, depth=64

Run status group 0 (all jobs):
   READ: io=3071.7MB, aggrb=705402KB/s, minb=705402KB/s, maxb=705402KB/s, mint=4459msec, maxt=4459msec
  WRITE: io=1024.4MB, aggrb=235235KB/s, minb=235235KB/s, maxb=235235KB/s, mint=4459msec, maxt=4459msec

Disk stats (read/write):
  nvme0n1: ios=766260/255818, merge=0/0, ticks=182612/2688, in_queue=185564, util=97.90%

این هارد خوب iops=176350 برای read و iops=58808 رو برای نوشتن به ما میده که البته فاصله خیلی زیادی با اعدادی داره که سامسونگ ادعا میکنه :)‌

dd if=/dev/zero of=novid bs=1M count=512 oflag=dsync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 3.57902 s, 150 MB/s

dd if=/dev/zero of=novid bs=1M count=512 conv=fdatasync
512+0 records in
512+0 records out
536870912 bytes (537 MB, 512 MiB) copied, 0.635125 s, 845 MB/s

و در کمال تعجب میشه دید که این ssd  در حالت sequential خیلی هم خوب کار نمیکنه

مصطفی دانشور ( MostafaDaneshvar )

صبا دشتیاری، نماد تلاش،شجاعت و فداکاری سال ۱۹۵۴ در کراچی پاکستان به دنیا آمد. استاد مطالعات اسلامی دانشگاه بلوچستان کویته بود. عمده فعالیت او درباره زبان و فرهنگ بلوچستان بود. شاعری توانا و نویسنده چیره دست همچنین محقق ریزبین با پشتکار مثال زدنی بود. بیش از ۲۴ جلد کتاب ادبی، تاریخی، فرهنگی و فلسفی تالیف کرد. بزرگترین یادگار او تاسیس کتابخانه مرجع «سید ظهورشاه هاشمی» است که بزرگترین کتابخانه ادبیات بلوچی به شمار می آید. 

صبا همه عمر خود را صرف علم و فرهنگ کرد. اول ژوئن ۲۰۱۱ به هنگام بازگشت از دانشگاه در خیابان توسط عده ای ناشناس مورد سوقصد قرار می گیرد. به علت جراحت ناشی از آن در بیمارستان جان به جان آفرین تسلیم کرد. گفته می شود به علت مخالفت آشکار با سیاستهای ارتش پاکستان در سرکوب مردم بلوچ و همچنین شرکت در تظاهرات ضد دولتی و سخنرانی در برخی تجمعات توسط عوامل دولتی ترور شده است. از آثار او می توان به «فلسفه اسلام و یونان»، «گلکار و چکن‌کار»، «بلوچی زبان عاقبت»،« ترانگی بن‌زه» اشاره کرد.

( )

الان که دارم این متنو می‌نویسم کم‌تر از یه ماه تا کنکور ارشد مونده و دو سه ماهی یزد بودم و شاید نود درصد زمانش رو توی خونه گذروندم.

دارم درس می‌خونم ولی خب استرسی که خارج از درس هست بیشتر از استرس کنکوره واقعاً برای خود کنکور استرس خیلی کمی دارم و مهم نیس خیلی.

مهم‌ترین چیزی که اذیتم می‌کنه اینه که اطرافیانم خیلی از اونایی که دوستشون دارم یه سری چیز پیش‌پا‌افتاده رو اینقد سخت می‌گیرن که زندگی‌شون رو به خاطرش خراب می‌کنن. لحظات خوشی زیادی رو دارن از دست می‌دن.

توی دنیا مسئولیت‌مون خیلی بیشتر از اینه که بخوایم سر یه سری چیز ساده و الکی خودمونو ناراحت کنیم. گاهی باید آدم به سطح دغدغه‌ش نگاه کنه، آیا آدمی توی اون سطح هستیم؟ یا با اهمیت ندادن به اون و فک کردن به چیزهای بزرگ‌تر می‌شه زندگی رو شیرین‌تر کرد؟

نه می‌دونم برای کی می‌نویسم نه می‌‌دونم برای چی! ولی خب صرفاُ برای این که گفته بشه.


وبلاگ: Linux
نوید ( erghezi )

سلام سلام

نمی‌دونم چی شد چطور شد یکهو دوباره یاد به روز کردن وبلاگ افتادم

( )

خواب خیلی چیز عجیبیه. دیشب خواب دیدم داشتم با چاقو یه جایی رو تمیز می‌کردم و یهو چاقو رو به جای این که بذارم کنار فرو کردم به شکم خودم. چاقو رو بیرون آوردم خون می‌اومد و شروع کردم با دستمال خشکش کردن. ولی بقیه خیلی توجه نمی‌کردن.

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

امیدوارم این که چاقو رو درآوردم به معنی این باشه که مشکل قراره حل بشه. خدایا کمک کن که حل بشه.


( )

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

کاش توی مشکلاتی که توی زندگی بوجود می‌آد به جای این که دنبال مقصر باشیم بگردیم دنبال اونجاهایی که خودمون مقصر بودیم و سعی کنیم هرجایی که کوچکترین تقصیری برای ما هست اول اونو حل کنیم. اگه توی هر مسئله‌ای هرکسی اول دنبال اشتباهات خودش بگرده خیلی همه‌چی راحت‌تر می‌شه تا این که بخوایم اشتباهات همدیگه رو بهم توجیه کنیم.

خلاصه این که بعضی وقت‌ها آدم سر یه مسائلی غر می‌زنه که بعداً می‌بینه خیلی بچگانه بوده. مثلاً کاش همون روزمرگی باشه و همه خوشحال باشن.


( )

از امروز یه کم قراره بنویسم، هرچند نویسنده‌ی خوبی نیستم ولی شاید شدم :دی


مصطفی دانشور ( MostafaDaneshvar )

در یک روایت بلوچ معتقد است که از نسل «میرحمزه» عموی حضرت علی هستند. روزی میرحمزه در نهر آبی مشغول آبتنی بود. دسته ای از پرییان از آنجا عبور می کردند. یکی از آنها که ظاهرا بزرگ آن جمع بود عاشق مرد خدا میرحمزه می شود. او با میرحمزه ازدواج کرده و حاصل این ازدواج پسری به نام «برلوچ» شد. پسر بزرگ شد و حاکم او را به وزیری خود برگزید. 

سالهای گذشت. بلوچ ایل و طایفه ای بزرگ شدند. بعدها از حلب به سیستان کوچ کردند. مدت زیادی آنجا ساکن بودند سپس به کیچ مکران آمدند. 

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

صفحه‌های قدیمی‌تر »