لینک کوتاه
چهارشنبه , 26 مرداد 1401
0 دیدگاه
همانطور که باید بدونید استرس تست بخش مهمی از هر پروژه هست که باید حتما انجام بشه و یکی از رایجترین ابزارهای apache benchmark هست اما ممکن هست این ابزار در دسترس نباشد یا بخواهید با ابزارهای دیگر هم این تست رو انجام بدید . دو برنامه دیگر به اسم siege و weighttp عملکرد مشابهی دارند و میتوانید از آنها استفاده کنید .
در این پست دستور معادل در دو برنامه دیگه به اسم siege و weighttp رو معرفی میکنیم .
دستور مثال :
command for Ab :
ab -n 1000 -c 100 http://reza.biz/
command for siege :
siege -q -b -c 100 -r 1000 http://reza.biz/
command for weighttp:
weighttp -n 1000 -c 100 -k http://reza.biz/
لینک کوتاه
یکشنبه , 06 مرداد 1398
0 دیدگاه
متاسفانه GitHub مشغول بستن دسترسی کاربرهای ایرانی هست ، لذا کلیه افرادی که سورس هاشون روی GitHub هست توصیه میکنم سریعا به سرویس های دیگه منتقل بکنند .
متاسفانه ممکنه اوضاع روی سرویس های مشابه مثل GitLab هم همین بشه در آینده ، پس یکی از راه حل ها نصب سورس کنترل اختصاصی روی سرور هست .
آموزش نصب GitLab روی سرور
GitLab این امکان رو داره که روی سرور شخصی نصب بشه . اما شایدم بد نباشه یه نگاهی به GitPrep هم بندازید .
GitPrep یک سورس کنترل هست که شبیه به گیت هاب پیاده سازی شده و میتوانید بعنوان سورس کنترل ازش استفاده بکنید و روی سرور شخصی نصب نمایید.
آموزش نصب GitPrep روی سرور
دمو GitPrep
لینک کوتاه
چهارشنبه , 13 مرداد 1395
7 دیدگاه
سلام
قطعا پیش آمده براتون که در دیتابیس رکوردهای تکراری براساس یک فیلد رخ بده
مثلا ، کاربری با نام کاربری یکسان منتها بصورت حروف بزرگ و کوچیک ثبت نام کرده باشه Reza , reza rEzA
یا حتی مثلا شخصی به اسم رضا اقدام به ارسال چندین نظر کرده باشه
یا اینکه یکی از مطالب اخبارتون دو بار ثبت شده باشه
علی ای حال ، قطعا این مساله رخ میدهد
و اما ما میخوایم ببینیم با اینها چکار کنیم
ادامه مطلب ...
لینک کوتاه
شنبه , 09 آبان 1394
3 دیدگاه
با سلام
بعد از مدت طولانی باز هم برگشتم
شاید یک زمانی در یک پروژه ای خواستید یک اسکرین شات از یک صفحه سایت بگیرید
خیله خب ، ساده است اول میرید به اون سایت ، بعد روی کیبورد دکمه F11 رو میزنید تا صفحه FullScreen بشه و سپس دکمه PrintScreen رو میزنید تا یک تصویر از صفحه تون بگیره و سپس با استفاده از یک برنامه ادیتور تصویر مثل فوتوشاپ یا gimp اونو paste میکنید !
آههههه ، چه سخت شد :)
انگار یادم رفته من یه برنامه نویسم !
خیله خب هر چی که گفتم رو دور بریزید ، امروز میخوام یه کار دیگه بکنیم ، شاید روزی روزگاری هزار تا لینک دادن بهتون و گفتن ازشون عکس بگیر ، یا پرینت بگیر یا شایدم لازم شد توی سایتتون اسکرین شات سایتهای کاربراتونو نشون بدید یا هر چی
خب بریم ادامه مطلب
ادامه مطلب ...
لینک کوتاه
سه شنبه , 23 دی 1393
5 دیدگاه
به لطف سایت وبشمار(webshomar.com) لازم شد بنچ مارکی روی رکوردهای نسبتا بالا(دومیلیون رکورد) روی دیتابیس محبوب mysql و postgresql انجام بدهم
مشخصات
mysql 5.5
postgresql 9.1
debian 7 os
ram 4gig
cpu Intel Core i5-2430M CPU @ 2.40GHz
این بنچ مارک روی سیستم شخصی خودم انجام شد و ساختار دیتابیس های هر دو مشابه بود و داده ها کاملا شبیه هم بودند
در تیبل از فیلد های int , char , varchar , smallint استفاده شده بود
مختصر نتایج این بنچ مارک به شرح زیر خدممتان ارائه میگردد
در دستورات select عادی با چندین condition دیتابیس mysql با اختلاف جزئی در حد یک دهم و یک صدم سریعتر از pg بود
اما نیاز سایت وبشمار ایجاب میکرد کوئریهای سنگین محاسباتی روی رکوردها انجام گیرد
دستوراتی شمارشی مثل select count(*) با چندیدن condition با برتری قابل ملاحضه ای با pgsql بود در تستی که انجام شد pgsql در 3.4 ثانیه و mysql در 6.4 ثانیه کوئری را به انجام رساند
در کوئری هایی که شامل دستور count و group by بود برتری با pgsql بود نتیجه کوئری در pgsql در 3.8 ثانیه و در mysql با 7.9 ثانیه به انجام رسید
در کوئری هایی که شامل دستور count(distinct field)بود برتری با mysql بود نتیجه یک کوئری در pgsql با 9.8 ثانیه و در mysql با 5.1 ثانیه به انجام رسید
اما در کوئری هایی که شامل distinct بدون استفاده از count بود برتری با pgsql بود با 2.6 ثانیه در حالیکه mysql در 4.6 ثانیه کوئری را به انجام رساند
در نهایت پیشنهاد میکنم بررسی کنید اگر قرار هست وبسایت شما داده های محاسباتی را ذخیره کند و لازم باشد محاسباتی روی داده ها انجام گیرد مثلا تعداد رکورد ها در سیستم هایی چون آمارگیر و انجمن و شبکه اجتماعی و امثالهم پیاده سازی کنید از postgresql استفاده کنید و اگر هم قرار هست سیستم های خبری و محتوایی پیاده سازی کنید از mysql استفاده کنید
اگر هم احساس میکنید رکوردهای شما هیچ وقت به میلیون رکورد نمیرسد از mysql استفاده کنید که سریعتر هست .
دقت کنید به طور مثال اگر سایت شما در هر دقیقه یک رکورد جدید به دیتابیس اضافه کند , بعد از دو سال به یک میلیون رکورد میرسد !!
پس حتما چشم انداز فعالیت سایتی که پیاده میکنید را بررسی کنید .
با تشکر رضا شیخله
لینک کوتاه
شنبه , 01 آذر 1393
5 دیدگاه
کارهایی که بعد از نصب nginx باید انجام بدید .
1. عدم نمایش ورژن nginx در هدر ارسالی
2. فعال کردن gzip
gzip on; gzip_types text/plain application/xml text/css application/x-javascript application/javascript; gzip_vary on;
3. استفاده از دستور کش مرورگر (داخل هدر برای فایلهای ایستا)
location ~* \.(js|css|png|jpg|jpeg|gif|ico)$ { expires 1y; log_not_found off; }
کلیه دستورات فوق باید در فایل کافیگ nginx در داخل بلاک server قرار بگیرند.
بعد از انجام تغییرات وبسرور را رستارت کنید .
لینک کوتاه
جمعه , 05 مهر 1392
1 دیدگاه
lighttpd : لایتی همانطور که از اسمش پیداست ، یک وبسرور کم مصرف هست چه از نظر مصرف حافظه و چه از نظر درگیر کردن سی پی یو ، به تعریف سایت خودش Security, speed, compliance, and flexibility -- all of these describe lighttpd (pron.lighty)
Percona : در یک کلام ، جایگزینی شایسته برای MySQL به تعریف سایت خودش
Percona has made MySQL faster and more reliable for over 2,000 consulting and support customers worldwide
php-fpm : ساده است ،اجرای پی اچی پی بصورت FastCGI یعنی سرعت واقعی :)
خب ، لازم نیست زیاد در موردشون صحبت کنم اما اگر تمایل دارید میتونید سری به سایتهاشون بزنید ، اما هدف من چیز دیگه ای هست !
واقعا چی میشد کل اینها رو با هم داشت؟ در ادامه روش نصب و کانفیگ برروی سرور اوبونتو توضیح داده میشود
ادامه مطلب ...