asterisk چه تعداد تماس های همزمان ساپورت میکند ؟ این سوال یکی از بزرگترین و بیشترین سوالهای دنیای استریسک میباشد. با وجود اینکه افراد زیادی در جهت پاسخ دادن به این سوال تلاش های زیادی انجام دادن اما جواب قطعی همچنان نامشخص میباشد. حتی عنوان این مقاله مبنی بر 3500 چنل همزمان با استریسک در حقیقت چیز زیادی درباره آنچه که واقعا اتفاق میافتد به ما نمیگوید. به منظور درک اینکه این "چنل های همزمان" در حقیقت در جهان استریسک به چه معناست اجازه دهید تا نگاهی به بعضی تست های انجام شده در گذشته بیآندازیم.

استریسک تنها به عنوان یک سوییچ سیگنالینگ :
این سناریو یکی از رایج ترین سناریو ها در دنیای تستینگ میباشد و بر اساس اصول پایدار جا به جایی مدیا (RTP) از یک End Point به End Point دیگر میباشد در حالی که استریسک خارج از این Loop بوده است. این سناریوی کلاسیک در موارد زیادی و با تغییر کدک تغییر سخت افزار سرور تغییر End Point ها تغییر ورژن استریسک تست گردیده است و در هر حالت نتایج به دست آمده کم و بیش یکسان بوده است. نتیجه گزارش شده مبنی بر این بود که تعداد chanell های همزمان در این سناریو به صورت کامل هم تست گردیده بالغ بر 1200 چنل بوده است.

چرا 1200 چنل همزمان ؟
بسیار ساده است زمانی که استریسک خودش مدیریت پکیج های RTP را انجام نمیدهد در حقیقت کار کمتری انجام داده در نتیجه از سرور resource کمتری مصرف کرده است در نتیجه performance بالا میرود.

استریسک به عنوان یک گیت وی مدیا :
تست بعدی که افراد دفعات بیشماری آن را انجام داده اند برای بررسی کردن استریسک به عنوان یک گیت وی مدیا بوده است. در حقیقت این تست را به عنوان تست SIP به گیت وی PSTN و SIP به گیت وی IAX و حتی به عنوان تست یک سرور سیپ به گیت وی Transcoder سیپ استفاده کرده اند.
در هر کدام از موارد آزمایشی بالا Performance در هر Configuration متفاوت بوده است.به هر حال آنها اساس را بر پایه یک مکانیزم ساده Routing تماس بین End Point ها گذاشته اند و این در حالی است که بسته به نوع تست استریسک خودش وظایف پروکسی مدیا را بر عهده دارد یا اینکه وظایف ترجمه کدک را خودش انجام میدهد. با توجه به Codec تست شده نتایج گزارش شده بالغ بر 300 چنل همزمان مدیا روی یک سرور مجزا بوده است در حالی که یک تست دیگر در همین فیلد حدود 140 چنل همزمان گزارش شده است و دوباره باید گفت که این تست بستگی به سخت افزار نرم افزار تنظیمات شبکه مختلف دارد.

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

تست Performance آمازون (EC2) :
نتایج به دست آمده از این تست حاکی از این بوده که با احتساب مصرف 50 درصد CPU تعداد تماس های با بیرون (خارج از سرور استریسک) و از طریق گیت وی 80 تماس همزمان بوده و در صورت استفاده از 100 درصد CPU به 160 تماس همزمان خواهد رسید.
با توجه به تست بالا حدود تماس های همزمان سرور استریسک تا جایی که سرور هنگ نکنه و سی پی یو 100 درصد مورد استفاده قرار نگیره حدود 140 تا 150 تماس همزمان بوده است.

نتیجه :
هنگامی که ماکزیموم performance استریسک پرسیده میشود این سوال اشتباه هست سوال درستی که باید پرسیده شود این است که :
حداکثر Performance استریسک روی فلان فاکتور چقدر است ؟ که این فاکتور در حقیقت یک عامل کلیدی از این Performance میباشد در حقیقت Performance استریسک از یک Application تا Application دیگر متفاوت هست در حالی که هر دو اپلیکیشن ظاهرا عمل یکسانی رو صورت میدهند. استریسک به عنوان یکی سرور استریسک تنها یک ابزار است. پرسیدن درباره Performance اون در حقیقت مانند این است که بپرسیم این چاقو چه تعداد استیک گوشت میتواند ببرد ؟ این سوالیست درباره اینکه شما چه نوعی از استیک را تلاش میکنید که برش دهید ؟ یعنی برش یک استیک نرم تر با Performance بالاتری انجام شده و نیاز به صرف انرژی کمتری دارد در حالی که استیک سفت تر نیاز به انرژی بیشتر و با Performance پایین تری انجام خواهد شد. استریسک دقیقا همینطور است با توجه به تست های انجام شده تماس های داخلی به داخلی در برخی تست ها تا حدود 3500 تماس همزمان برآورد شده در حالی که برای تماس های به بیرون این عدد بسیار کمتر بوده است و یا برای چنل های که به IVR و یا غیره متصل شده اند اعداد و ارقام متفاوتی گزارش شده است.
منبع