تست استرس. تست بار استاندارد تست بار 1s

سیستم 1C موقعیت غالب در بازار اتوماسیون برای مشاغل کوچک و متوسط ​​را اشغال می کند. اگر شرکت انتخاب کرد سیستم حسابداری 1C ، پس معمولاً تقریباً همه کارمندان در آن کار می کنند ، از متخصصان عادی گرفته تا مدیریت. بر این اساس، سرعت فرآیندهای تجاری شرکت به سرعت 1C بستگی دارد. اگر 1C با سرعت نامناسب کار کند، این به طور مستقیم بر کار کل شرکت و کسب سود تأثیر می گذارد.

در واقع وجود دارد سه روش شتاب 1C:

  • افزایش ظرفیت سخت افزاری
  • بهینه سازی تنظیمات سیستم عامل و DBMS.
  • بهینه سازی کدها و الگوریتم ها در 1C.

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

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

شرکت 1C به این سؤال که چقدر منابع مورد نیاز است پاسخ نسبتاً مبهم می دهد ، ما قبلاً در پست های خود در مورد آن نوشتیم. و بنابراین، شما باید به طور مستقل آزمایشاتی را انجام دهید و بفهمید که عملکرد 1C به چه چیزی بستگی دارد. آزمایشات مربوط به عملکرد برنامه در EFSOL در زیر توضیح داده شده است.

هنگام کار با 1C 8.2، به خصوص با پیکربندی هایی که از فرم های مدیریت شده استفاده می کنند، یک واقعیت عجیب مشاهده شد: 1C در یک ایستگاه کاری سریعتر از یک سرور قدرتمند کار می کند. علاوه بر این، تمام ویژگی های ایستگاه کاری بدتر از ویژگی های سرور است.



جدول 1 - پیکربندی هایی که آزمایش اولیه بر روی آنها انجام شده است

ایستگاه کاری 155 درصد بیشتر از سرور 1C با ویژگی های برتر عملکرد را نشان می دهد. شروع کردیم به کشف موضوع و محدود کردن دایره جستجوها.

شکل 1 - اندازه گیری عملکرد در ایستگاه کاری توسط آزمون Gilev

اولین ظن این بود که آزمایش گیلف ناکافی بود. اندازه گیری باز کردن فرم ها، ارسال اسناد، تولید گزارش و غیره با ابزار KIP نشان داد که آزمون Gilev برآوردی متناسب با سرعت واقعیدر 1C کار کنید

مقدار و فرکانس رم

تجزیه و تحلیل اطلاعات موجود در اینترنت نشان داد که بسیاری در مورد وابستگی عملکرد 1C به فرکانس حافظه می نویسند. از فرکانس است نه از ولوم. ما تصمیم گرفتیم این فرضیه را آزمایش کنیم، زیرا سرور ما دارای فرکانس رم 1066 مگاهرتز در مقابل 1333 مگاهرتز در یک ایستگاه کاری است و مقدار RAM روی سرور در حال حاضر بسیار بیشتر است. تصمیم گرفتیم یکباره نه 1066 مگاهرتز، بلکه 800 مگاهرتز نصب کنیم تا تأثیر وابستگی عملکرد به فرکانس حافظه واضح تر باشد. در نتیجه بهره وری 12 درصد کاهش یافت و به 39.37 واحد رسید. سرور به جای 1066 مگاهرتز به حافظه با فرکانس 1333 مگاهرتز مجهز شد و عملکرد کمی افزایش یافت - حدود 11٪. بهره وری 19.53 واحد بود. بر این اساس، نقطه در حافظه نیست، اگرچه فرکانس آن کمی افزایش می دهد.

شکل 2 - اندازه گیری عملکرد در یک ایستگاه کاری پس از کاهش فرکانس RAM


شکل 3- اندازه گیری عملکرد روی سرور پس از افزایش فرکانس رم

زیر سیستم دیسک

فرضیه بعدی مربوط به زیرسیستم دیسک بود. دو فرض بلافاصله مطرح شد:

  • SSD ها بهتر از درایوهای SAS هستند، حتی اگر در Raid 10 باشند.
  • iSCSI کند است یا به درستی کار نمی کند.

بنابراین، یک دیسک SATA معمولی به جای SSD در ایستگاه کاری نصب شد و همین کار با سرور انجام شد - پایه روی یک دیسک SATA محلی قرار گرفت. در نتیجه، اندازه گیری عملکرد به هیچ وجه تغییر نکرده است. به احتمال زیاد، این اتفاق می افتد زیرا RAM کافی وجود دارد و دیسک ها عملاً در آزمایش دخالت ندارند.

CPU

البته پردازنده‌های روی سرور قدرتمندتر هستند و دو عدد از آنها وجود دارد، اما فرکانس آن کمی کمتر از ایستگاه کاری است. ما تصمیم گرفتیم تأثیر فرکانس پردازنده را بر عملکرد بررسی کنیم: برای سرور، هیچ پردازنده ای با فرکانس بالاتر در دسترس نبود، بنابراین فرکانس پردازنده را در ایستگاه کاری کاهش دادیم. بلافاصله به 1.6 کاهش می یابد، به طوری که همبستگی روشن تر به نظر می رسد. این آزمایش نشان داد که عملکرد به طور قابل توجهی کاهش یافته است، اما حتی با پردازنده 1.6 ایستگاه کاریتقریباً 28 واحد تولید کرد که تقریباً 1.5 برابر بیشتر از سرور است.

شکل 4 - اندازه گیری عملکرد در یک ایستگاه کاری با پردازنده 1.6 گیگاهرتز

کارت گرافیک

در اینترنت، اطلاعاتی وجود دارد که کارت گرافیک می تواند بر عملکرد 1C تأثیر بگذارد. ما ویدیوی ایستگاه کاری یکپارچه، آداپتور حرفه ای را امتحان کردیم Nvidia NVIDIA® Quadro® 4000 2 Gb DDR5، کارت گرافیک قدیمی GeForce 16MbSDR. در طول آزمون Gilev تفاوت معنی داری مشاهده نشد. شاید کارت گرافیک تاثیر می گذارد، اما در شرایط واقعی، زمانی که باید فرم های مدیریت شده و غیره را باز کنید.

V این لحظهدو شبهه وجود دارد که چرا ایستگاه کاری سریعتر است، حتی با عملکرد ضعیف تر:

  1. CPU.نوع پردازنده در ایستگاه کاری برای 1C مناسب تر است.
  2. چیپست.همه چیزهای دیگر برابر هستند، ایستگاه کاری ما یک چیپست جدیدتر دارد، شاید این دلیل آن باشد.

ما قصد داریم اجزای لازم را خریداری کنیم و آزمایشات را ادامه دهیم تا در نهایت بفهمیم چه چیزی عملکرد 1C را تا حد زیادی تعیین می کند. در حالی که فرآیند تایید و تدارکات در حال انجام است، تصمیم گرفتیم بهینه سازی را انجام دهیم، به خصوص که هزینه ای ندارد. مراحل زیر مشخص شد:

مرحله 1. راه اندازی سیستم

ابتدا بیایید تنظیمات زیر را در بایوس و سیستم عامل انجام دهیم:

  1. برای صرفه جویی در انرژی پردازنده در بایوس سرور، تمام تنظیمات را غیرفعال کنید.
  2. طرح "حداکثر عملکرد" ​​را در سیستم عامل انتخاب کنید.
  3. ما همچنین پردازنده را برای حداکثر کارایی تنظیم می کنیم. این کار را می توان با استفاده از ابزار PowerSchemeEd انجام داد.

مرحله 2. راه اندازی سرور SQL و 1C: سرور سازمانی

ما تغییرات زیر را در تنظیمات سرور DBMS و 1C ایجاد می کنیم: Enterprise.

  1. پیکربندی پروتکل حافظه مشترک:

    • حافظه مشترک تنها در پلتفرم فعال می‌شود که با 1C 8.2.17 شروع می‌شود، در نسخه‌های قبلی Named Pipe فعال می‌شود که از نظر سرعت عملکرد تا حدودی پایین‌تر است. این فناوری تنها در صورتی کار می‌کند که سرویس‌های 1C و MSSQL روی یک سرور فیزیکی یا مجازی نصب شده باشند.
  2. توصیه می شود سرویس 1C را به حالت اشکال زدایی تغییر دهید، هر چند متناقض باشد، اما باعث افزایش عملکرد می شود. اشکال زدایی در سرور به طور پیش فرض غیرفعال است.
  3. راه اندازی سرور SQL:

    • ما فقط به یک سرور نیاز داریم، بقیه خدمات مربوط به آن و شاید کسی از آنها استفاده کند، فقط کار را کند می کند. ما خدماتی مانند: جستجوی کامل متن (1C مکانیسم جستجوی متن کامل خود را دارد)، خدمات یکپارچه سازی و غیره را متوقف و غیرفعال می کنیم.
    • ما حداکثر مقدار حافظه اختصاص داده شده به سرور را تنظیم می کنیم. این برای اینکه سرور sql روی این مقدار حساب کند و از قبل حافظه را تمیز کند ضروری است.
    • حداکثر تعداد Thread ها (Maximum worker Threads) و اولویت افزایش یافته سرور (Boost priority) را تنظیم می کنیم.

مرحله 3. راه اندازی پایگاه داده تولید

پس از بهینه سازی سرور DBMS و 1C: Enterprise، به تنظیمات پایگاه داده بروید. اگر پایه هنوز از فایل .dt گسترش نیافته است و اندازه تقریبی آن را می دانید، بهتر است فوراً اندازه "> =" پایه را به فایل اصلی، اندازه اولیه، مشخص کنید، اما این یک مقدار است. موضوع ذائقه، همچنان در طول انبساط رشد خواهد کرد. اما Autoincrement باید مشخص شود: حدود 200 مگابایت در هر پایه و 50 مگابایت در هر گزارش، زیرا مقادیر پیش‌فرض 1 مگابایت و 10 درصد رشد است که سرعت کار سرور را به شدت کاهش می‌دهد، زمانی که نیاز به افزایش فایل با هر تراکنش 3 دارد. همچنین بهتر است محل ذخیره سازی فایل پایه و فایل لاگ بر روی متفاوت مشخص شود دیسک های فیزیکییا گروه های RAID، در صورت استفاده از آرایه RAID، و رشد گزارش را محدود کنید. توصیه می شود فایل Tempdb را به یک آرایه پرسرعت منتقل کنید، زیرا DBMS اغلب به آن دسترسی دارد.

مرحله 4. تنظیم کارهای برنامه ریزی شده

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

  • یکپارچه سازی شاخص ها و به روز رسانی آمار باید روزانه انجام شود، زیرا اگر تکه تکه شدن ایندکس ها بیش از 25 درصد باشد، عملکرد سرور را به شدت کاهش می دهد.
  • یکپارچه سازی و به روز رسانی آمار به سرعت انجام می شود و نیازی به قطع ارتباط کاربران ندارد. همچنین انجام روزانه آن توصیه می شود.
  • فهرست مجدد کامل - با قفل کردن پایگاه داده انجام می شود، توصیه می شود حداقل یک بار در هفته این کار را انجام دهید. طبیعتاً پس از یک نمایه سازی مجدد کامل، یکپارچه سازی نمایه ها و به روز رسانی آمار بلافاصله انجام می شود.

در نتیجه با کمک تنظیم دقیق سیستم، سرور SQL و پایه کاری، توانستیم عملکرد را تا 46 درصد افزایش دهیم. اندازه گیری ها با استفاده از ابزار 1C KIP و با استفاده از آزمون Gilev انجام شد. دومی 25.6 واحد در مقابل 17.53 که در ابتدا بود را نشان داد.

نتیجه گیری مختصر

  1. عملکرد 1C چندان به فرکانس RAM بستگی ندارد. وقتی حجم کافی به آن برسد، گسترش بیشتر حافظه معنا ندارد، زیرا منجر به افزایش عملکرد نمی شود.
  2. عملکرد 1C به کارت گرافیک بستگی ندارد.
  3. عملکرد 1C به زیرسیستم دیسک بستگی ندارد، مشروط بر اینکه از صف خواندن یا نوشتن دیسک ها فراتر نرود. در صورت نصب درایوهای SATAو صف آنها تجاوز نمی کند، پس نصب SSDعملکرد را بهبود نخواهد بخشید.
  4. عملکرد کاملاً به فرکانس پردازنده بستگی دارد.
  5. با تنظیم صحیح سیستم عامل و سرور MSSQL، می توان عملکرد 1C را 40 تا 50 درصد بدون هیچ هزینه ای افزایش داد.

توجه! خیلی نکته مهم! تمام اندازه‌گیری‌ها بر روی یک پایه آزمایشی با استفاده از آزمون Gilev و ابزار دقیق 1C انجام شد. رفتار یک پایگاه واقعی با کاربران واقعی ممکن است با نتایج به دست آمده متفاوت باشد. به عنوان مثال، در پایگاه داده تست، هیچ وابستگی عملکرد به کارت گرافیک و مقدار RAM پیدا نکردیم. این نتیجه گیری ها نسبتاً مشکوک هستند و در شرایط واقعی این عوامل می توانند تأثیر قابل توجهی بر عملکرد داشته باشند. هنگام کار با پیکربندی ها با استفاده از فرم های مدیریت شده، کارت گرافیک مهم و قدرتمند است پردازنده گرافیکیکار را از نظر ترسیم رابط برنامه سرعت می بخشد ، از نظر بصری خود را بیشتر نشان می دهد کار سریع 1C.

آیا 1C شما به کندی کار می کند؟ تعمیر و نگهداری IT کامپیوترها و سرورها را توسط متخصصان EFSOL با سالها تجربه سفارش دهید یا 1C خود را به یک سرور مجازی 1C قدرتمند و بدون خطا منتقل کنید.

یکپارچه سازی سیستم مشاوره

هدف اصلی این مقاله این نیست که تفاوت های ظریف آشکار را برای آن دسته از مدیران (و برنامه نویسان) که هنوز با 1C تجربه نکرده اند تکرار شود.

هدف ثانویه، اگر نقصی داشته باشم - در Infostart به سرعت به من نشان داده می شود.

آزمایش V. Gilev قبلاً به نوعی استاندارد بالفعل تبدیل شده است. نویسنده توصیه های کاملاً واضحی را در وب سایت خود ارائه کرده است، اما من فقط برخی از نتایج را ارائه می دهم و در مورد محتمل ترین خطاها اظهار نظر می کنم. به طور طبیعی، نتایج آزمایش روی تجهیزات شما ممکن است متفاوت باشد، این فقط یک دستورالعمل است، چه چیزی باید باشد و چه چیزی می توانید برای آن تلاش کنید. می خواهم فوراً یادآوری کنم که تغییرات باید گام به گام انجام شود و پس از هر مرحله بررسی کنید که چه نتیجه ای داشته است.

مقالات مشابهی در Infostart وجود دارد ، در بخش های مربوطه پیوندهایی به آنها خواهم گذاشت (اگر چیزی را از دست دادم - لطفاً در نظرات پیشنهاد دهید ، اضافه خواهم کرد). بنابراین، فرض کنید سرعت 1C شما کاهش می یابد. چگونه مشکل را تشخیص دهیم، و چگونه بفهمیم مقصر کیست، مدیر یا برنامه نویس؟

اطلاعات اولیه:

رایانه آزمایش شده، خوکچه هندی اصلی: HP DL180G6، کامل با 2 * Xeon 5650، 32 گیگابایت، Intel 362i، Win 2008 r2. برای مقایسه، Core i3-2100 نتایج قابل مقایسه ای را در یک تست تک رشته ای نشان می دهد. تجهیزات به طور عمدی جدیدترین نبودند، نتایج در تجهیزات مدرن بسیار بهتر است.

برای آزمایش سرورهای 1C و SQL با فاصله، سرور SQL: IBM System 3650 x4، 2 * Xeon E5-2630، 32 Gb، Intel 350، Win 2008 r2.

برای آزمایش شبکه 10 گیگابیتی از آداپتورهای 520-DA2 اینتل استفاده شد.

نسخه فایل... (پایه روی سرور در یک پوشه مشترک است، مشتریان از طریق شبکه، پروتکل CIFS / SMB متصل می شوند). الگوریتم گام به گام:

0. اضافه کردن به سرور فایلپایه تست Gilev در همان پوشه ای که پایگاه داده های اصلی هستند. از کامپیوتر مشتری متصل شوید و آزمایش را اجرا کنید. ما نتیجه حاصل را به یاد می آوریم.

قابل درک است که حتی برای رایانه های قدیمی 10 سال پیش (Pentium در سوکت 775 ) زمان از کلیک بر روی 1C: میانبر Enterprise تا ظاهر شدن پنجره پایه باید کمتر از یک دقیقه بگذرد. ( سلرون = عملکرد کند).

اگر کامپیوتر شما بدتر از پنتیوم روشن استسوکت 775 با 1 گیگابایت حافظه دسترسی تصادفی، پس من با شما همدردی می کنم و رسیدن به کار راحت روی 1C 8.2 در نسخه فایل برای شما دشوار خواهد بود. به ارتقاء فکر کنید (زمان آن فرا رسیده است)، یا در مورد تغییر به ترمینال (یا وب، در مورد تین کلاینت ها و) فکر کنید. فرم های مدیریت شده) سرور.

اگر رایانه بدتر نیست، می توانید مدیر را زیر پا بگذارید. حداقل عملکرد شبکه، آنتی ویروس و درایور حفاظت HASP را بررسی کنید.

اگر آزمایش Gilev در این مرحله 30 "طوطی" و بیشتر را نشان داد، اما پایه کاری 1C هنوز به کندی کار می کند، سوالات از قبل برای برنامه نویس است.

1. برای یک دستورالعمل، اینکه یک کامپیوتر مشتری چقدر می تواند "فشار" را انجام دهد، ما عملکرد فقط این کامپیوتر را بدون شبکه بررسی می کنیم. ما پایه تست را روی آن قرار می دهیم کامپیوتر محلی(خیلی درایو سریع). اگر SSD معمولی روی کامپیوتر مشتری وجود نداشته باشد، یک ramdisk ایجاد می شود. تا اینجای کار، ساده ترین و رایگان ترین آن، شرکت Ramdisk است.

برای تست نسخه 8.2، 256 مگابایت ramdisk کافی است و! مهم ترین چیز. پس از راه اندازی مجدد کامپیوتر، با یک ramdisk در حال کار، باید 100-200 مگابایت رایگان روی آن وجود داشته باشد. بر این اساس، بدون ramdisk، برای عملکرد عادی، حافظه آزاد باید 300-400 مگابایت باشد.

برای تست نسخه 8.3 یک ramdisk 256 مگابایت کافی است، اما رم رایگان بیشتری نیاز است.

هنگام تست، باید به بار پردازنده نگاه کنید. در موردی نزدیک به ایده آل (ramdisk)، فایل محلی 1c 1 هسته پردازنده را در حین کار بارگیری می کند. بر این اساس، اگر هسته پردازنده شما در طول آزمایش به طور کامل بارگذاری نشده است، به دنبال نقاط ضعف باشید. کمی احساسی، اما در کل درست، تاثیر پردازنده بر کار 1C توضیح داده شده است. فقط برای مرجع، حتی در Core i3 مدرن با فرکانس بالا، اعداد 70-80 کاملا واقعی هستند.

رایج ترین اشتباهات در این مرحله

الف) آنتی ویروس نادرست پیکربندی شده است. آنتی ویروس های زیادی وجود دارد، تنظیمات برای همه متفاوت است، فقط می گویم که با پیکربندی مناسب، نه وب و نه Kaspersky 1C تداخل ندارند. با تنظیمات پیش فرض، حدود 3-5 طوطی (10-15٪) را می توان از بین برد.

ب) حالت عملکرد. بنا به دلایلی، افراد کمی به این موضوع توجه می کنند و تأثیر آن مهم ترین است. اگر به سرعت نیاز دارید، باید آن را هم در رایانه های مشتری و هم در سرور انجام دهید. (توضیح خوبی از Gilev. تنها هشدار، در مورد برخی مادربردهااگر Intel SpeedStep را خاموش کنید، نمی توانید TurboBoost را روشن کنید.

به طور خلاصه، در طول عملکرد 1C، ​​انتظارات زیادی برای پاسخ از سایر دستگاه ها (دیسک، شبکه و غیره) وجود دارد. در زمان انتظار برای پاسخ، اگر حالت عملکرد متعادل باشد، پردازنده فرکانس آن را کاهش می دهد. پاسخ از دستگاه می آید، 1C (پردازنده) باید کار کند، اما اولین چرخه های ساعت در فرکانس کاهش یافته است، سپس فرکانس افزایش می یابد - و 1C دوباره منتظر پاسخ از دستگاه است. و به همین ترتیب - صدها بار در ثانیه.

شما می توانید (و ترجیحا) حالت عملکرد را در دو مکان فعال کنید:

از طریق BIOS. حالت های C1، C1E، C-state اینتل (C2، C3، C4) را غیرفعال کنید. در بایوس های مختلف آنها را متفاوت می نامند، اما معنی یکسان است. زمان زیادی برای جستجو نیاز است، راه اندازی مجدد مورد نیاز است، اما اگر یک بار این کار را انجام دادید، می توانید فراموش کنید. اگر همه چیز در بایوس به درستی انجام شود، سرعت اضافه می شود. در برخی از مادربردها می توان تنظیمات بایوس را طوری انجام داد که حالت عملکرد ویندوزنقشی نخواهد داشت (مثال ها تنظیمات بایوساز Gilev). این تنظیمات عمدتاً به پردازنده های سرور یا بایوس "پیشرفته" مربوط می شود، اگر این را پیدا نکرده اید و Xeon ندارید - اشکالی ندارد.

کنترل پنل - منبع تغذیه - کارایی بالا. منهای - اگر کامپیوتر برای مدت طولانی سرویس نشده باشد، بیشتر شبیه فن زمزمه می کند، بیشتر گرم می شود و انرژی بیشتری مصرف می کند. این بهایی است که باید برای بهره وری پرداخت.

چگونه بررسی کنیم که حالت روشن است. Task Manager - Performance - Resource Monitor - CPU را راه اندازی کنید. ما منتظریم تا پردازنده با چیزی مشغول شود.

اینها تنظیمات پیش فرض هستند.

بایوس C-state مشمول,

حالت قدرت متعادل


بایوس C-state مشمول، حالت عملکرد بالا

برای Pentium و Core، می توانید در این مورد توقف کنید،

شما هنوز هم می توانید تعدادی "طوطی" را از Xeon فشار دهید


بایوس C-state خاموش، حالت عملکرد بالا.

اگر از Turbo Boost استفاده نمی کنید - اینطوری باید به نظر برسد

سرور تنظیم عملکرد


و حالا اعداد. یادآوری کنم: Intel Xeon 5650، ramdisk. در مورد اول، آزمون 23.26 را نشان می دهد، در دومی - 49.5. تفاوت تقریباً دو برابر است. اعداد ممکن است متفاوت باشند، اما نسبت برای Intel Core تقریباً یکسان است.

مدیران محترم، شما می توانید 1C را هر طور که دوست دارید سرزنش کنید، اما اگر کاربران نهایی به سرعت نیاز دارند، باید حالت عملکرد بالا را فعال کنید.

ج) توربو بوست. ابتدا باید بدانید که برای مثال پردازنده شما از این عملکرد پشتیبانی می کند یا خیر. اگر اینطور باشد، باز هم می‌توانید به صورت کاملاً قانونی عملکردی داشته باشید. (نمی خواهم به اورکلاک در فرکانس بپردازم، مخصوصاً سرورها، این کار را با خطر و خطر خود انجام دهید. اما موافقم که افزایش سرعت Bus از 133 به 166 باعث افزایش بسیار ملموس در سرعت و اتلاف گرما می شود)

نحوه گنجاندن افزایش توربونوشته شده است، برای مثال،. ولی! تفاوت های ظریفی برای 1C وجود دارد (بدیهی ترین آنها نیست). مشکل این است که حداکثر اثر تقویت توربو زمانی رخ می دهد که حالت C روشن باشد. و چیزی شبیه به این معلوم می شود:

لطفاً توجه داشته باشید که ضریب حداکثر است، سرعت هسته زیباترین است، عملکرد بالا است. اما نتیجه 1c چه خواهد بود؟

عامل

سرعت هسته (فرکانس)، گیگاهرتز

CPU-Z Single Thread

تست Gilev Ramdisk

نوع فایل

تست Gilev Ramdisk

مشتری-سرور

بدون تقویت توربو

حالت C خاموش، تقویت توربو

53.19

40,32

حالت C روشن، تقویت توربو

1080

53,13

23,04

و در نتیجه، معلوم می شود که با توجه به تست های عملکرد CPU، نوع با ضریب 23 جلوتر است، طبق تست های Gilev در نسخه فایل - عملکرد با ضریب 22 و 23 یکسان است، اما در مشتری -سرور - نوع با ضریب 23 ترسناک ترسناک ترسناک (حتی اگر C-state روی سطح 7 تنظیم شود، باز هم کندتر از حالت C خاموش است). بنابراین، یک توصیه، هر دو گزینه را با خود بررسی کنید و بهترین را انتخاب کنید. در هر صورت، تفاوت بین 49.5 و 53 طوطی بسیار قابل توجه است، به خصوص بدون تلاش زیاد.

نتیجه - بوست توربو باید فعال باشد. اجازه دهید یادآوری کنم که فعال کردن مورد Turbo Boost در BIOS کافی نیست، همچنین باید تنظیمات دیگر را نیز بررسی کنید (BIOS: QPI L0s، L1 - غیرفعال کردن، پاکسازی تقاضا - غیرفعال کردن، Intel SpeedStep - فعال کردن، Turbo boost - کنترل پنل - منبع تغذیه - کارایی بالا) ... و من همچنان (حتی برای نسخه فایل) روی گزینه ای که حالت c غیرفعال است متوقف می شوم، حتی اگر ضریب در آنجا کمتر باشد. چیزی شبیه به این خواهد شد ...

یک نکته نسبتاً بحث برانگیز فرکانس حافظه است. به عنوان مثال، فرکانس حافظه بسیار تأثیرگذار است. آزمایشات من چنین وابستگی را نشان نداد. من DDR 2/3/4 را مقایسه نمی کنم، نتایج تغییر فرکانس را در یک خط نشان خواهم داد. حافظه یکسان است اما در بایوس به اجبار فرکانس های پایین تری را تنظیم می کنیم.




و نتایج آزمایش 1C 8.2.19.83، برای نسخه فایل، ramdisk محلی، برای سرویس گیرنده-سرور 1C و SQL در یک کامپیوتر، حافظه مشترک. تقویت توربو در هر دو نوع غیرفعال است. 8.3 نتایج قابل مقایسه را نشان می دهد.

تفاوت در خطای اندازه گیری است. من عمدا اسکرین شات های CPU-Z رو کشیدم تا نشون بدم با تغییر فرکانس، پارامترهای دیگه هم تغییر میکنه، همون CAS Latency و RAS به CAS Delay که تغییر فرکانس رو خنثی میکنه. تفاوت زمانی خواهد بود که ماژول‌های حافظه از نظر فیزیکی از کندتر به سریع‌تر تغییر می‌کنند، اما حتی در آنجا اعداد به‌ویژه قابل توجه نیستند.

2. هنگامی که ما با پردازنده و حافظه کامپیوتر مشتری سروکار داریم، به مکان بسیار مهم بعدی می رویم - شبکه. کتاب های زیادی در مورد تنظیم شبکه نوشته شده است، مقالاتی در Infostart (و دیگران) وجود دارد، من در اینجا روی این موضوع تمرکز نمی کنم. قبل از شروع آزمایش 1C، لطفاً مطمئن شوید که iperf بین دو رایانه کل پهنای باند را نشان می‌دهد (برای کارت‌های 1 گیگابیت - خوب، حداقل 850 مگابیت و ترجیحاً 950-980)، که توصیه‌های Gilev رعایت شده است. سپس - ساده ترین بررسی کار، به اندازه کافی عجیب، کپی کردن یک فایل بزرگ (5-10 گیگابایت) از طریق شبکه خواهد بود. یک نشانه غیرمستقیم عملکرد عادی در یک شبکه 1 گیگابیت بر ثانیه سرعت کپی متوسط ​​100 مگابیت در ثانیه است، کار خوب - 120 مگابیت در ثانیه. من می خواهم توجه شما را به این واقعیت جلب کنم که بار پردازنده ممکن است یک نقطه ضعف باشد (از جمله). SMB پروتکل در لینوکس موازی نسبتاً ضعیفی دارد و در حین کار می تواند به راحتی یک هسته پردازنده را "خورد" و دیگر آن را مصرف نکند.

و بیشتر با تنظیمات توسط پیش فرض ویندوزکلاینت با سرور ویندوز (یا حتی ویندوز کار می کندایستگاه) و پروتکل SMB / CIFS، کلاینت لینوکس (دبیان، اوبونتو به بقیه نگاه نکرد) با لینوکس و NFS بهتر کار می کند (با SMB نیز کار می کند، اما طوطی ها در NFS بالاتر هستند). این واقعیت که با کپی خطی vin-linux، سرور روی NSF سریعتر در یک جریان کپی می شود، هنوز معنایی ندارد. تنظیم دبیان برای 1C یک موضوع برای یک مقاله جداگانه است، من هنوز برای آن آماده نیستم، اگرچه می توانم بگویم که در نسخه فایل عملکردی حتی کمی بالاتر از نسخه Win در همان سخت افزار داشتم، اما با postgres با کاربران بالای 50 سال من هنوز همه چیز خیلی بدی دارم.

مهم ترین چیز ، که مدیران "سوخته" در مورد آن می دانند، اما مبتدیان آن را در نظر نمی گیرند. راه های زیادی برای تنظیم مسیر به پایگاه داده 1c وجود دارد. می‌توانید \\ سرور \ اشتراک‌گذاری کنید، می‌توانید \\ 192.168.0.1 \ share کنید، می‌توانید از z: \\ 192.168.0.1 \ share استفاده کنید (و در برخی موارد این روش نیز کار می‌کند، اما نه همیشه) و سپس مشخص کنید درایو Z. به نظر می رسد که همه این مسیرها به یک مکان اشاره می کنند، اما برای 1C تنها یک راه وجود دارد که عملکرد عادی را به طور نسبتاً ثابتی ارائه می دهد. بنابراین، شما باید این کار را درست انجام دهید:

V خط فرمان(یا در خط مشی ها، یا هر چیزی که برای شما مناسب است) - از DriveLetter: \\ server \ share استفاده کنید. مثال: استفاده خالص m: \\ سرور \ پایه ها... من به طور خاص تأکید می کنم، نه یک آدرس IP، یعنی نامسرور اگر سرور با نام قابل مشاهده نیست، آن را به dns روی سرور یا به صورت محلی به آن اضافه کنید فایل میزبان... اما درخواست تجدید نظر باید با نام باشد. بر این اساس، در مسیر رسیدن به پایگاه داده، به این دیسک دسترسی داشته باشید (تصویر را ببینید).

و اکنون من به شما نشان خواهم داد که چرا چنین توصیه هایی چیست. اطلاعات اولیه: کارت های اینتل X520-DA2، Intel 362، Intel 350، Realtek 8169. OS Win 2008 R2، Win 7، Debian 8. آخرین درایورها، به روز رسانی اعمال شده است. قبل از تست، مطمئن شدم که Iperf پهنای باند کامل را می دهد (به جز کارت های 10 گیگابیتی، معلوم شد که فقط 7.2 گیگابیت فشرده شده است، بعداً خواهم دید چرا، سرور آزمایشی هنوز آنطور که باید پیکربندی نشده است). دیسک ها متفاوت هستند، اما در همه جا SSD (من به طور خاص یک دیسک را برای آزمایش قرار دادم، با چیز دیگری بارگذاری نمی شود) یا SSD حمله می کند. سرعت 100 مگابیت با محدود کردن تنظیمات به دست می آید آداپتور اینتل 362. هیچ تفاوتی بین 1 گیگابیت مسی Intel 350 و 1 گیگابیت اپتیک Intel X520-DA2 (که با محدود کردن سرعت آداپتور به دست می آید) پیدا نشد. حداکثر عملکرد، تقویت توربو خاموش است (فقط برای مقایسه نتایج، تقویت توربو برای نتایج خوب کمی کمتر از 10٪ اضافه می کند، برای موارد بد ممکن است اصلاً تأثیری نداشته باشد). نسخه های 1C 8.2.19.86، 8.3.6.2076. من نه همه ارقام، بلکه فقط جالب ترین آنها را ذکر می کنم تا چیزی برای مقایسه وجود داشته باشد.

برد 2008 - برد 2008

آدرس با آدرس IP

برد 2008 - برد 2008

با نام تماس می گیرد

برد 2008 - برد 2008

آدرس دهی با آدرس IP

برد 2008 - برد 2008

با نام تماس می گیرد

Win 2008 - Win 7

با نام تماس می گیرد

Win 2008 - Debian

با نام تماس می گیرد

برد 2008 - برد 2008

آدرس دهی با آدرس IP

برد 2008 - برد 2008

با نام تماس می گیرد

11,20 26,18 15,20 43,86 40,65 37,04 16,23 44,64
1C 8.2 11,29 26,18 15,29 43,10 40,65 36,76 15,11 44,10
8.2.19.83 12,15 25,77 15,15 43,10 14,97 42,74
6,13 34,25 14,98 43,10 39,37 37,59 15,53 42,74
1C 8.3 6,61 33,33 15,58 43,86 40,00 37,88 16,23 42,74
8.3.6.2076 33,78 15,53 43,48 39,37 37,59 42,74

نتیجه گیری (از جدول، و از تجربه شخصی. فقط برای نسخه فایل اعمال می شود):

از طریق شبکه، اگر این شبکه به درستی پیکربندی شده باشد و مسیر به درستی در 1C ثبت شده باشد، می توانید اعداد کاملاً عادی را برای کار دریافت کنید. حتی اولین Core i3s می تواند 40+ طوطی تولید کند که بسیار خوب است و اینها فقط طوطی نیستند، در کار واقعی نیز تفاوت قابل توجه است. ولی! محدودیت زمانی که چندین کاربر (بیش از 10) کار می کنند دیگر شبکه نخواهد بود، در اینجا 1 گیگابیت هنوز کافی است، اما در حین کار چند کاربره مسدود می شود (Gilev).

پلتفرم 1C 8.3 برای پیکربندی صحیح شبکه چندین برابر بیشتر نیاز دارد. تنظیمات پایه- Gilev را ببینید، اما به خاطر داشته باشید که همه چیز می تواند تأثیر بگذارد. من شتابی را در حذف (و نه فقط خاموش کردن) آنتی ویروس، از حذف پروتکل هایی مانند FCoE، از تغییر درایورها به نسخه قدیمی تر، اما دارای گواهی مایکروسافت (مخصوصاً برای کارت های ارزان قیمت مانند asus و lengths)، از حذف شبکه دوم مشاهده کردم. کارت از سرور ... گزینه های زیادی وجود دارد، شبکه خود را با دقت راه اندازی کنید. ممکن است وضعیتی باشد که پلتفرم 8.2 اعداد قابل قبول و 8.3 - دو یا حتی بیشتر از آن را ارائه دهد. سعی کنید با نسخه های پلتفرم 8.3 بازی کنید، گاهی اوقات تأثیر بسیار بزرگی می گیرید.

1C 8.3.6.2076 (شاید بعداً من هنوز به دنبال نسخه دقیق آن نگردیده ام) از طریق شبکه هنوز پیکربندی آسان تر از 8.3.7.2008 است. برای دستیابی به عملکرد عادی شبکه از 8.3.7.2008 (در طوطی های قابل مقایسه) فقط چند بار معلوم شد، برای یک مورد کلی تر نمی توانم آن را تکرار کنم. من چیز زیادی متوجه نشدم، اما با قضاوت از روی پارچه های Process Explorer، ضبط مانند 8.3.6 به آنجا نمی رود.

علیرغم این واقعیت که هنگام کار بر روی یک شبکه 100 مگابیت، برنامه بارگذاری آن کم است (می توان گفت که شبکه رایگان است)، سرعت کار هنوز بسیار کمتر از 1 گیگابیت است. دلیل آن تأخیر شبکه است.

همه چیزهای دیگر برابر (یک شبکه با عملکرد خوب) برای 1C 8.2، اتصال Intel-Realtek 10٪ کندتر از Intel-Intel است. اما realtek-realtek به طور کلی می تواند فرونشست شدیدی را ایجاد کند. بنابراین، اگر پول هست، بهتر است کارت های شبکه اینتل را همه جا نگه دارید؛ اگر پولی نیست، اینتل فقط روی سرور (K.O. شما) نصب شود. و دستورالعمل های چند برابر بیشتر برای تنظیم کارت های شبکه هوشمند وجود دارد.

تنظیمات آنتی ویروس به طور پیش فرض (به عنوان مثال، نسخه drweb 10) حدود 8-10٪ از طوطی ها را می گیرد. اگر آن را در صورت نیاز پیکربندی کنید (اجازه دهید فرآیند 1cv8 همه چیز را انجام دهد، اگرچه ایمن نیست) - سرعت آن مانند بدون آنتی ویروس است.

مربیان لینوکس نمی خوانند. سرور با سامبا عالی و رایگان است، اما اگر Win XP یا Win7 را روی سرور (یا حتی بهتر از آن - سیستم عامل سرور) قرار دهید، نسخه 1c در فایل سریعتر کار می کند. بله، و samba و پشته پروتکل و تنظیمات شبکه و موارد دیگر در دبیان / اوبونتو به خوبی تنظیم شده است، اما این برای متخصصان توصیه می شود. منطقی نیست لینوکس را با تنظیمات پیش فرض نصب کنید و بعد بگویید کند کار می کند.

بررسی عملکرد دیسک های متصل از طریق استفاده از شبکه با استفاده از fio بسیار خوب است. حداقل مشخص خواهد شد که آیا این مشکلات مربوط به پلت فرم 1C یا شبکه / دیسک است.

برای نسخه تک کاربره، نمی توانم به تست هایی (یا موقعیتی) فکر کنم که در آن تفاوت بین 1 گیگابیت بر ثانیه و 10 گیگابیت در ثانیه قابل مشاهده باشد. تنها جایی که 10 گیگابیت بر ثانیه برای نسخه فایل نتیجه بهتری داشت، اتصال دیسک ها از طریق iSCSI است، اما این موضوع برای یک مقاله جداگانه است. با این حال، من فکر می کنم که برای نسخه فایل کارت های 1 گیگابیت کافی است.

چرا در شبکه 100 مگابیت 8.3 بسیار سریعتر از 8.2 کار می کند - من نمی دانم، اما این واقعیت اتفاق افتاد. بقیه تجهیزات، همه تنظیمات دیگر کاملاً یکسان هستند، فقط در یک مورد 8.2 و در مورد دیگر 8.3 تست شده است.

برنده NFS تنظیم نشده - برد یا برد-لین به 6 طوطی می دهد که در جدول گنجانده نشده است. بعد از تنظیم، 25 گرفتم، اما ناپایدار است (رانش در اندازه گیری ها بیش از 2 واحد است). من نمی توانم توصیه هایی در مورد ارائه کنم با استفاده از ویندوزو پروتکل NFS

پس از تمام تنظیمات و بررسی ها، دوباره آزمایش را از رایانه مشتری اجرا می کنیم، از نتیجه بهبود یافته خوشحال می شویم (در صورت امکان). اگر نتیجه بهبود یافته باشد، بیش از 30 طوطی (و به خصوص بیش از 40) وجود دارد، کمتر از 10 کاربر همزمان کار می کنند، و پایه کار همچنان کند می شود - تقریباً مطمئناً مشکلات برنامه نویس (یا قبلاً به آن رسیده اید) اوج قابلیت های نسخه فایل).

سرور ترمینال... (پایه روی سرور است، مشتریان از طریق شبکه، پروتکل RDP متصل می شوند). الگوریتم گام به گام:

0. پایه تست Gilev را به سرور در همان پوشه پایگاه داده های اصلی اضافه کنید. ما از همان سرور متصل می شویم و تست را اجرا می کنیم. ما نتیجه حاصل را به یاد می آوریم.

1. همانند نسخه فایل، کار را راه اندازی می کنیم. در مورد سرور ترمینال، پردازنده به طور کلی نقش اصلی را بر عهده دارد (فرض می شود که هیچ نقطه ضعف آشکاری مانند کمبود حافظه یا مقدار زیادی نرم افزار غیر ضروری وجود ندارد).

2. راه اندازی کارت های شبکه در مورد سرور ترمینال عملاً تأثیری در عملکرد 1c ندارد. برای ارائه راحتی "ویژه"، اگر سرور شما بیش از 50 طوطی صادر می کند، می توانید با نسخه های جدید پروتکل RDP بازی کنید، فقط برای راحتی کاربران، پاسخگویی سریعتر و پیمایش.

3. با کار فعال تعداد زیادیکاربران (و در اینجا می توانید سعی کنید و اگر سعی کنید 30 نفر را به یک پایگاه متصل کنید)، نصب یک دیسک SSD بسیار مطلوب است. بنا به دلایلی، اعتقاد بر این است که دیسک به ویژه بر عملکرد 1C تأثیر نمی گذارد، اما تمام آزمایشات با حافظه پنهان کنترل کننده فعال برای نوشتن انجام می شود، که اشتباه است. پایه تست کوچک است، به خوبی در حافظه نهان قرار می گیرد، بنابراین اعداد بالاست. در پایگاه های داده واقعی (بزرگ)، همه چیز کاملاً متفاوت خواهد بود، بنابراین کش برای آزمایش غیرفعال است.

به عنوان مثال، من کار تست Gilev را با گزینه های مختلف دیسک بررسی کردم. من دیسک ها را از آنچه در دست بود قرار دادم، فقط تمایل به نشان دادن. تفاوت بین 8.3.6.2076 و 8.3.7.2008 کم است (در Ramdisk Turbo بوست 8.3.6 56.18 تولید می کند و 8.3.7.2008 تولید 55.56 می کند، در تست های دیگر تفاوت حتی کمتر است). مصرف برق - حداکثر عملکرد، بوست توربو غیرفعال است (مگر اینکه در غیر این صورت ذکر شده باشد).

Raid 10 4x SATA 7200

ATA ST31500341AS

Raid 10 4x SAS 10k

Raid 10 4x SAS 15k

تک SSD

رامدیسک

کش فعال شد

کنترلر RAID

21,74 28,09 32,47 49,02 50,51 53,76 49,02
1C 8.2 21,65 28,57 32,05 48,54 49,02 53,19
8.2.19.83 21,65 28,41 31,45 48,54 49,50 53,19
33,33 42,74 45,05 51,55 52,08 55,56 51,55
1C 8.3 33,46 42,02 45,05 51,02 52,08 54,95
8.3.7.2008 35,46 43,01 44,64 51,55 52,08 56,18

حافظه پنهان کنترلر RAID فعال تمام تفاوت بین دیسک ها را حذف می کند، اعداد هم برای sat و هم برای sac یکسان هستند. آزمایش با آن برای مقدار کمی داده بی فایده است و یک شاخص نیست.

برای پلتفرم 8.2، تفاوت عملکرد بین گزینه های SATA و SSD بیش از دو برابر است. این اشتباه تایپی نیست. اگر در حین آزمایش روی دیسک های SATA به نمایشگر عملکرد نگاه کنید. سپس "زمان فعال دیسک (در٪)" 80-95 به وضوح قابل مشاهده است. بله، اگر حافظه پنهان نوشتن خود دیسک ها را فعال کنید، سرعت به 35 افزایش می یابد، اگر حمله حافظه پنهان کنترلر را فعال کنید - تا 49 (صرف نظر از اینکه در حال حاضر کدام دیسک ها در حال آزمایش هستند). اما اینها طوطی‌های کش مصنوعی هستند، در کارهای واقعی با پایه‌های بزرگ هرگز 100% نسبت ضربه حافظه پنهان نوشتن وجود نخواهد داشت.

حتی سرعت SSD ارزان (من آن را روی Agility 3 آزمایش کردم) برای کارکرد نسخه فایل کاملاً کافی است. منبع ضبط موضوع دیگری است، در اینجا شما باید به هر مورد خاص نگاه کنید، واضح است که Intel 3700 آن را بسیار بالاتر خواهد داشت، اما در آنجا قیمت مناسب است. و بله، می دانم که هنگام تست درایو SSD، حافظه پنهان این درایو را نیز تا حد زیادی تست می کنم، نتایج واقعی کمتر خواهد بود.

صحیح ترین راه حل (از دیدگاه من) این است که 2 دیسک SSD را به یک حمله آینه ای برای یک پایگاه داده فایل (یا چندین پایگاه داده فایل) اختصاص دهید و هیچ چیز دیگری را در آنجا قرار ندهید. بله، با یک آینه، SSD ها به همین ترتیب فرسوده می شوند و این یک منفی است، اما حداقل آنها به نوعی در برابر خطاهای الکترونیکی کنترل کننده بیمه هستند.

مزایای اصلی دیسک های SSD برای نسخه فایل زمانی ظاهر می شود که پایگاه داده های زیادی وجود داشته باشد و هر کدام چندین کاربر داشته باشند. اگر 1-2 پایه وجود داشته باشد و کاربران در منطقه 10 باشند، دیسک های SAS به اندازه کافی وجود خواهد داشت. (اما در هر صورت - به بارگذاری این دیسک ها، حداقل از طریق perfmon نگاه کنید).

مزایای اصلی سرور ترمینال این است که می تواند کلاینت های بسیار ضعیفی داشته باشد و تنظیمات شبکه بسیار کمتر روی سرور ترمینال تأثیر می گذارد (باز هم K.O. شما).

نتیجه گیری: اگر روشن باشد سرور ترمینالتست Gilev را اجرا کنید (از همان دیسکی که پایه های کاری در آن قرار دارند) و در آن لحظاتی که پایه کار کند می شود و تست Gilev نتیجه خوبی را نشان می دهد (بالای 30) - در این صورت برنامه نویس به احتمال زیاد مقصر است عملکرد آهسته پایه کار اصلی.

اگر تست Gilev اعداد کمی را نشان می دهد و هر دو شما یک پردازنده با فرکانس بالا و دیسک های سریع دارید، پس مدیر باید حداقل پرفمون را بگیرد و با همه نتایج در جایی ثبت شده و تماشا کند، مشاهده کند، نتیجه بگیرد. هیچ توصیه بی چون و چرای وجود نخواهد داشت.

گزینه سرویس گیرنده-سرور.

آزمایشات فقط روی 8.2، tk انجام شد. در 8.3 همه چیز به طور جدی به نسخه بستگی دارد.

برای تست انتخاب کردم انواع مختلفسرورها و شبکه های بین آنها برای نشان دادن روندهای اصلی.

SQL: Xeon E5-2630

SQL: Xeon E5-2630

کانال فیبر - SSD

SQL: Xeon E5-2630

کانال فیبر - SAS

SQL: Xeon E5-2630

SSD محلی

SQL: Xeon E5-2630

کانال فیبر - SSD

SQL: Xeon E5-2630

SSD محلی

1C: Xeon 5650 =

1C: Xeon 5650 =

حافظه مشترک

1C: Xeon 5650 =

1C: Xeon 5650 =

1C: Xeon 5650 =

16,78 18,23 16,84 28,57 27,78 32,05 34,72 36,50 23,26 40,65 39.37
1C 8.2 17,12 17,06 14,53 29,41 28,41 31,45 34,97 36,23 23,81 40,32 39.06
16,72 16,89 13,44 29,76 28,57 32,05 34,97 36,23 23,26 40,32 39.06

به نظر می رسد که من همه گزینه های جالب را در نظر گرفتم، اگر به چیز دیگری علاقه مند هستید - در نظرات بنویسید، سعی می کنم آن را انجام دهم.

SAS در سیستم‌های ذخیره‌سازی کندتر از سیستم‌های ذخیره‌سازی محلی است، حتی اگر سیستم‌های ذخیره‌سازی دارای اندازه‌های کش بزرگ هستند. SSD ها هم محلی و هم روی سیستم های ذخیره سازی برای تست Gilev با سرعت قابل مقایسه ای کار می کنند. من هیچ آزمایش استاندارد چند رشته ای (نه تنها رکوردها، بلکه همه تجهیزات) را به جز بار 1C از MCC نمی شناسم.

تغییر سرور 1C از 5520 به 5650 تقریباً دو برابر عملکرد را افزایش داد. بله، تنظیمات سرور کاملاً مطابقت ندارند، اما روندی را نشان می دهد (چیزی تعجب آور نیست).

افزایش فرکانس در سرور SQL مطمئناً تأثیر دارد، اما نه مانند سرور 1C، سرور MS SQL کاملاً قادر است (اگر در مورد آن سؤال شود) از حافظه چند هسته ای و رایگان استفاده کند.

تغییر شبکه بین 1C و SQL از 1 گیگابیت بر ثانیه به 10 گیگابیت در ثانیه حدود 10 درصد از طوطی ها را به همراه دارد. انتظار بیشتری داشت.

فعال کردن حافظه مشترک همچنان اثر را می دهد، اگرچه نه 15٪ همانطور که توضیح داده شد. انجام آن ضروری است، زیرا سریع و آسان است. اگر شخصی در حین نصب یک نمونه با نام به سرور SQL داده است، برای اینکه 1C کار کند، نام سرور نباید با FQDN مشخص شود (tcp/ip کار می کند)، نه از طریق localhost یا فقط ServerName، بلکه از طریق ServerName \ InstanceName. به عنوان مثال zz-test \ zztest. (در غیر این صورت، یک خطای DBMS وجود خواهد داشت: Microsoft SQL Server Native Client 10.0: Provider حافظه مشترک: کتابخانه حافظه مشترک مورد استفاده برای ایجاد اتصال به SQL Server 2000 یافت نشد. HRESULT = 80004005، HRESULT = 80004005، HRESULT = 80004005، SQLSrvr: SQLSTATE = 08001، حالت = 1، شدت = 10، بومی = 126، خط = 0).

برای کاربران زیر 100 سال، تنها نکته ای که باید به دو سرور جداگانه تقسیم شود، مجوز Win 2008 Std (و قدیمی تر) است که فقط از 32 گیگابایت رم پشتیبانی می کند. در تمام موارد دیگر، 1C و SQL باید قطعاً روی یک سرور نصب شوند و حافظه بیشتری (حداقل 64 گیگابایت) به آن داده شود. دادن رم کمتر از 24-28 گیگابایت به MS SQL حرص و طمع غیر قابل توجیهی است (اگر فکر می کنید به اندازه کافی از این حافظه دارید و همه چیز خوب کار می کند - شاید نسخه فایل 1C برای شما کافی باشد؟)

اینکه ترکیب 1C و SQL در ماشین مجازی چقدر بدتر کار می کند موضوع مقاله جداگانه ای است (اشاره بسیار بدتر است). حتی در Hyper-V، همه چیز به این سادگی نیست ...

حالت عملکرد متعادل بد است. نتایج کاملاً با نسخه فایل مطابقت دارد.

بسیاری از منابع می گویند که حالت اشکال زدایی (ragent.exe -debug) باعث کاهش شدید عملکرد می شود. خوب، آن را کاهش می دهد، بله، اما 2-3٪ من نمی توانم به عنوان یک اثر قابل توجهی.

عکس آلنا تولیاکوا، IA "Clerk.Ru"

این مقاله اشتباهات اصلی را که مدیران مبتدی 1C مرتکب می شوند فهرست می کند و نحوه حل آنها را با استفاده از مثال تست Gilev نشان می دهد.

هدف اصلی این مقاله این نیست که تفاوت های ظریف آشکار را برای آن دسته از مدیران (و برنامه نویسان) که هنوز با 1C تجربه نکرده اند تکرار شود.

هدف ثانویه، اگر نقصی داشته باشم - در Infostart به سرعت به من نشان داده می شود.

آزمایش V. Gilev قبلاً به نوعی استاندارد بالفعل تبدیل شده است. نویسنده توصیه های کاملاً واضحی را در وب سایت خود ارائه کرده است، اما من فقط برخی از نتایج را ارائه می دهم و در مورد محتمل ترین خطاها اظهار نظر می کنم. به طور طبیعی، نتایج آزمایش روی تجهیزات شما ممکن است متفاوت باشد، این فقط یک دستورالعمل است، چه چیزی باید باشد و چه چیزی می توانید برای آن تلاش کنید. می خواهم فوراً یادآوری کنم که تغییرات باید گام به گام انجام شود و پس از هر مرحله بررسی کنید که چه نتیجه ای داشته است.

مقالات مشابهی در Infostart وجود دارد ، در بخش های مربوطه پیوندهایی به آنها خواهم گذاشت (اگر چیزی را از دست دادم - لطفاً در نظرات پیشنهاد دهید ، اضافه خواهم کرد). بنابراین، فرض کنید سرعت 1C شما کاهش می یابد. چگونه مشکل را تشخیص دهیم، و چگونه بفهمیم مقصر کیست، مدیر یا برنامه نویس؟

اطلاعات اولیه:

رایانه آزمایش شده، خوکچه هندی اصلی: HP DL180G6، کامل با 2 * Xeon 5650، 32 گیگابایت، Intel 362i، Win 2008 r2. برای مقایسه، Core i3-2100 نتایج قابل مقایسه ای را در یک تست تک رشته ای نشان می دهد. تجهیزات به طور عمدی جدیدترین نبودند، نتایج در تجهیزات مدرن بسیار بهتر است.

برای آزمایش سرورهای 1C و SQL با فاصله، سرور SQL: IBM System 3650 x4، 2 * Xeon E5-2630، 32 Gb، Intel 350، Win 2008 r2.

برای آزمایش شبکه 10 گیگابیتی از آداپتورهای 520-DA2 اینتل استفاده شد.

نسخه فایل. (پایه روی سرور در یک پوشه مشترک است، مشتریان از طریق شبکه، پروتکل CIFS / SMB متصل می شوند). الگوریتم گام به گام:

0. پایگاه داده آزمایشی Gilev را به سرور فایل در همان پوشه پایگاه داده اصلی اضافه کنید. از کامپیوتر مشتری متصل شوید و آزمایش را اجرا کنید. ما نتیجه حاصل را به یاد می آوریم.

قابل درک است که حتی برای رایانه های قدیمی 10 سال پیش (پنتیوم در سوکت 775) زمان از کلیک کردن روی میانبر 1C: Enterprise تا ظاهر پنجره پایه باید کمتر از یک دقیقه باشد. (سلرون = عملکرد کند).

اگر رایانه شما بدتر از یک سوکت 775 پنتیوم با 1 گیگابایت رم است، من با شما همدردی می کنم و رسیدن به کار راحت روی 1C 8.2 در نسخه فایل برای شما دشوار خواهد بود. ارتقاء (زمان بالایی است) یا جابجایی به ترمینال (یا وب، در مورد تین کلاینت ها و فرم های مدیریت شده) سرور را در نظر بگیرید.

اگر رایانه بدتر نیست، می توانید مدیر را زیر پا بگذارید. حداقل عملکرد شبکه، آنتی ویروس و درایور حفاظت HASP را بررسی کنید.

اگر آزمایش Gilev در این مرحله 30 "طوطی" و بیشتر را نشان داد، اما پایه کاری 1C هنوز به کندی کار می کند، سوالات از قبل برای برنامه نویس است.

1. برای یک دستورالعمل، اینکه یک کامپیوتر مشتری چقدر می تواند "فشار" را انجام دهد، ما عملکرد فقط این کامپیوتر را بدون شبکه بررسی می کنیم. ما پایه تست را روی یک کامپیوتر محلی (روی یک دیسک بسیار سریع) قرار می دهیم. اگر SSD معمولی روی کامپیوتر مشتری وجود نداشته باشد، یک ramdisk ایجاد می شود. تا اینجای کار، ساده ترین و رایگان ترین آن، شرکت Ramdisk است.

برای تست نسخه 8.2، 256 مگابایت ramdisk کافی است و! مهم ترین چیز. پس از راه اندازی مجدد کامپیوتر، با یک ramdisk در حال کار، باید 100-200 مگابایت رایگان روی آن وجود داشته باشد. بر این اساس، بدون ramdisk، برای عملکرد عادی، حافظه آزاد باید 300-400 مگابایت باشد.

برای تست نسخه 8.3 یک ramdisk 256 مگابایت کافی است، اما رم رایگان بیشتری نیاز است.

هنگام تست، باید به بار پردازنده نگاه کنید. در موردی نزدیک به ایده آل (ramdisk)، فایل محلی 1c 1 هسته پردازنده را در حین کار بارگیری می کند. بر این اساس، اگر هسته پردازنده شما در طول آزمایش به طور کامل بارگذاری نشده است، به دنبال نقاط ضعف باشید. کمی احساسی، اما در کل درست، تاثیر پردازنده بر کار 1C توضیح داده شده است. فقط برای مرجع، حتی در Core i3 مدرن با فرکانس بالا، اعداد 70-80 کاملا واقعی هستند.

رایج ترین اشتباهات در این مرحله

  • آنتی ویروس نادرست پیکربندی شده است. آنتی ویروس های زیادی وجود دارد، تنظیمات برای همه متفاوت است، فقط می گویم که با پیکربندی مناسب، نه وب و نه Kaspersky 1C تداخل ندارند. با تنظیمات پیش فرض، حدود 3-5 طوطی (10-15٪) را می توان از بین برد.
  • حالت عملکرد. بنا به دلایلی، افراد کمی به این موضوع توجه می کنند و تأثیر آن مهم ترین است. اگر به سرعت نیاز دارید، باید آن را هم در رایانه های مشتری و هم در سرور انجام دهید. (Gilev توضیحات خوبی دارد. تنها نکته این است که در برخی از مادربردها اگر SpeedStep اینتل را خاموش کنید نمی توانید TurboBoost را روشن کنید).
به طور خلاصه، در طول عملکرد 1C، ​​انتظارات زیادی برای پاسخ از سایر دستگاه ها (دیسک، شبکه و غیره) وجود دارد. در زمان انتظار برای پاسخ، اگر حالت عملکرد متعادل باشد، پردازنده فرکانس آن را کاهش می دهد. پاسخ از دستگاه می آید، 1C (پردازنده) باید کار کند، اما اولین چرخه های ساعت در فرکانس کاهش یافته است، سپس فرکانس افزایش می یابد - و 1C دوباره منتظر پاسخ از دستگاه است. و به همین ترتیب - صدها بار در ثانیه.

شما می توانید (و ترجیحا) حالت عملکرد را در دو مکان فعال کنید:

  • از طریق بایوس حالت های C1، C1E، C-state اینتل (C2، C3، C4) را غیرفعال کنید. در بایوس های مختلف آنها را متفاوت می نامند، اما معنی یکسان است. زمان زیادی برای جستجو نیاز است، راه اندازی مجدد مورد نیاز است، اما اگر یک بار این کار را انجام دادید، می توانید فراموش کنید. اگر همه چیز در بایوس به درستی انجام شود، سرعت اضافه می شود. در برخی از مادربردها می توان تنظیمات بایوس را طوری انجام داد که حالت عملکرد ویندوز نقشی نداشته باشد. (نمونه هایی از تنظیمات BIOS از Gilev). این تنظیمات عمدتاً به پردازنده های سرور یا بایوس "پیشرفته" مربوط می شود، اگر این را پیدا نکرده اید و Xeon ندارید - اشکالی ندارد.

  • کنترل پنل - منبع تغذیه - کارایی بالا. منهای - اگر کامپیوتر برای مدت طولانی سرویس نشده باشد، بیشتر شبیه فن زمزمه می کند، بیشتر گرم می شود و انرژی بیشتری مصرف می کند. این بهایی است که باید برای بهره وری پرداخت.
چگونه بررسی کنیم که حالت روشن است. Task Manager - Performance - Resource Monitor - CPU را راه اندازی کنید. ما منتظریم تا پردازنده با چیزی مشغول شود.
اینها تنظیمات پیش فرض هستند.

BIOS C-state فعال است،

حالت قدرت متعادل


BIOS C-state فعال، حالت عملکرد بالا

برای Pentium و Core، می توانید در این مورد توقف کنید،

شما هنوز هم می توانید تعدادی "طوطی" را از Xeon فشار دهید


BIOS C-state غیرفعال است، حالت عملکرد بالا.

اگر از Turbo Boost استفاده نمی کنید - اینطوری باید به نظر برسد

سرور تنظیم عملکرد


و حالا اعداد. یادآوری کنم: Intel Xeon 5650، ramdisk. در مورد اول، آزمون 23.26 را نشان می دهد، در دومی - 49.5. تفاوت تقریباً دو برابر است. اعداد ممکن است متفاوت باشند، اما نسبت برای Intel Core تقریباً یکسان است.

مدیران محترم، شما می توانید 1C را هر طور که دوست دارید سرزنش کنید، اما اگر کاربران نهایی به سرعت نیاز دارند، باید حالت عملکرد بالا را فعال کنید.

ج) توربو بوست. ابتدا باید بدانید که برای مثال پردازنده شما از این عملکرد پشتیبانی می کند یا خیر. اگر اینطور باشد، باز هم می‌توانید به صورت کاملاً قانونی عملکردی داشته باشید. (نمی خواهم به اورکلاک در فرکانس بپردازم، مخصوصاً سرورها، این کار را با خطر و خطر خود انجام دهید. اما موافقم که افزایش سرعت Bus از 133 به 166 باعث افزایش بسیار ملموس در سرعت و اتلاف گرما می شود)

برای مثال نحوه فعال کردن توربو بوست نوشته شده است. ولی! تفاوت های ظریفی برای 1C وجود دارد (بدیهی ترین آنها نیست). مشکل این است که حداکثر اثر تقویت توربو زمانی رخ می دهد که حالت C روشن باشد. و چیزی شبیه به این معلوم می شود:

لطفاً توجه داشته باشید که ضریب حداکثر است، سرعت هسته زیباترین است، عملکرد بالا است. اما نتیجه 1c چه خواهد بود؟

و در نتیجه، معلوم می شود که با توجه به تست های عملکرد CPU، نوع با ضریب 23 جلوتر است، طبق تست های Gilev در نسخه فایل - عملکرد با ضریب 22 و 23 یکسان است، اما در مشتری -سرور - نوع با ضریب 23 ترسناک ترسناک ترسناک (حتی اگر C-state روی سطح 7 تنظیم شود، باز هم کندتر از حالت C خاموش است). بنابراین، یک توصیه، هر دو گزینه را با خود بررسی کنید و بهترین را انتخاب کنید. در هر صورت، تفاوت بین 49.5 و 53 طوطی بسیار قابل توجه است، به خصوص بدون تلاش زیاد.

نتیجه - بوست توربو باید فعال باشد. اجازه دهید یادآوری کنم که فعال کردن مورد Turbo Boost در BIOS کافی نیست، همچنین باید تنظیمات دیگر را نیز بررسی کنید (BIOS: QPI L0s، L1 - غیرفعال کردن، پاکسازی تقاضا - غیرفعال کردن، Intel SpeedStep - فعال کردن، Turbo boost - کنترل پنل - منبع تغذیه - کارایی بالا) ... و من همچنان (حتی برای نسخه فایل) روی گزینه ای که حالت c غیرفعال است متوقف می شوم، حتی اگر ضریب در آنجا کمتر باشد. چیزی شبیه به این خواهد شد ...

یک نکته نسبتاً بحث برانگیز فرکانس حافظه است. به عنوان مثال، فرکانس حافظه بسیار تأثیرگذار است. آزمایشات من چنین وابستگی را نشان نداد. من DDR 2/3/4 را مقایسه نمی کنم، نتایج تغییر فرکانس را در یک خط نشان خواهم داد. حافظه یکسان است اما در بایوس به اجبار فرکانس های پایین تری را تنظیم می کنیم.




و نتایج آزمایش 1C 8.2.19.83، برای نسخه فایل، ramdisk محلی، برای سرویس گیرنده-سرور 1C و SQL در یک کامپیوتر، حافظه مشترک. تقویت توربو در هر دو نوع غیرفعال است. 8.3 نتایج قابل مقایسه را نشان می دهد.

تفاوت در خطای اندازه گیری است. من عمدا اسکرین شات های CPU-Z رو کشیدم تا نشون بدم با تغییر فرکانس، پارامترهای دیگه هم تغییر میکنه، همون CAS Latency و RAS به CAS Delay که تغییر فرکانس رو خنثی میکنه. تفاوت زمانی خواهد بود که ماژول‌های حافظه از نظر فیزیکی از کندتر به سریع‌تر تغییر می‌کنند، اما حتی در آنجا اعداد به‌ویژه قابل توجه نیستند.

2. هنگامی که ما با پردازنده و حافظه کامپیوتر مشتری سروکار داریم، به مکان بسیار مهم بعدی می رویم - شبکه. کتاب های زیادی در مورد تنظیم شبکه نوشته شده است، مقالاتی در Infostart (و دیگران) وجود دارد، من در اینجا روی این موضوع تمرکز نمی کنم. قبل از شروع آزمایش 1C، لطفاً مطمئن شوید که iperf بین دو رایانه کل پهنای باند را نشان می‌دهد (برای کارت‌های 1 گیگابیت - خوب، حداقل 850 مگابیت و ترجیحاً 950-980)، که توصیه‌های Gilev رعایت شده است. سپس - ساده ترین بررسی کار، به اندازه کافی عجیب، کپی کردن یک فایل بزرگ (5-10 گیگابایت) از طریق شبکه خواهد بود. یک نشانه غیرمستقیم عملکرد عادی در یک شبکه 1 گیگابیت بر ثانیه سرعت کپی متوسط ​​100 مگابیت در ثانیه است، کار خوب - 120 مگابیت در ثانیه. من می خواهم توجه شما را به این واقعیت جلب کنم که بار پردازنده ممکن است یک نقطه ضعف باشد (از جمله). پروتکل SMB در لینوکس موازی نسبتاً ضعیفی دارد و در حین کار می تواند به راحتی یک هسته پردازنده را "خورد" و دیگر آن را مصرف نکند.

و بیشتر با تنظیمات پیش فرض، کلاینت ویندوز با یک سرور ویندوز (یا حتی یک ایستگاه کاری ویندوز) و پروتکل SMB / CIFS بهترین کار را انجام می دهد، یک کلاینت لینوکس (دبیان، اوبونتو به بقیه نگاه نمی کند) با لینوکس و NFS بهتر کار می کند. همچنین با SMB کار می کند، اما در طوطی های NFS در بالا). این واقعیت که با کپی خطی vin-linux، سرور روی NSF سریعتر در یک جریان کپی می شود، هنوز معنایی ندارد. تنظیم دبیان برای 1C یک موضوع برای یک مقاله جداگانه است، من هنوز برای آن آماده نیستم، اگرچه می توانم بگویم که در نسخه فایل عملکردی حتی کمی بالاتر از نسخه Win در همان سخت افزار داشتم، اما با postgres با کاربران بالای 50 سال من هنوز همه چیز خیلی بدی دارم.

مهمترین چیزی که مدیران "سوخته" در مورد آن می دانند، اما مبتدیان آن را در نظر نمی گیرند. راه های زیادی برای تنظیم مسیر به پایگاه داده 1c وجود دارد. شما می توانید servershare بسازید، می توانید 192.168.0.1share، می توانید از z: 192.168.0.1share استفاده کنید (و در برخی موارد این روش نیز کار می کند، اما نه همیشه) و سپس درایو Z را مشخص کنید به نظر می رسد که همه این مسیرها به همان مکان اشاره کنید، اما برای 1C فقط یک راه وجود دارد که به اندازه کافی پایدار است تا عملکرد عادی را ارائه دهد. بنابراین، شما باید این کار را درست انجام دهید:

در خط فرمان (یا در خط مشی ها، یا هر چیزی که برای شما مناسب است) - از DriveLetter: servershare استفاده کنید. مثال: استفاده خالص m: پایگاه های سرور. من به طور خاص تأکید می کنم، نه آدرس IP، بلکه نام سرور. اگر سرور با نام قابل مشاهده نیست، آن را به dns روی سرور یا به صورت محلی به فایل میزبان اضافه کنید. اما درخواست تجدید نظر باید با نام باشد. بر این اساس، در مسیر رسیدن به پایگاه داده، به این دیسک دسترسی داشته باشید (تصویر را ببینید).

و اکنون من به شما نشان خواهم داد که چرا چنین توصیه هایی چیست. داده های اولیه: کارت های Intel X520-DA2، Intel 362، Intel 350، Realtek 8169. OS Win 2008 R2، Win 7، Debian 8. آخرین درایورها، به روز رسانی اعمال شده است. قبل از تست، مطمئن شدم که Iperf پهنای باند کامل را می دهد (به جز کارت های 10 گیگابیتی، معلوم شد که فقط 7.2 گیگابیت فشرده شده است، بعداً خواهم دید چرا، سرور آزمایشی هنوز آنطور که باید پیکربندی نشده است). دیسک ها متفاوت هستند، اما در همه جا SSD (من به طور خاص یک دیسک را برای آزمایش قرار دادم، با چیز دیگری بارگذاری نمی شود) یا SSD حمله می کند. سرعت 100 مگابیت با محدود کردن تنظیمات آداپتور اینتل 362 به دست آمد. هیچ تفاوتی بین 1 گیگابیت اینتل 350 مسی و 1 گیگابیت اینتل X520-DA2 اپتیک (به دست آمده با محدود کردن سرعت آداپتور) وجود نداشت. حداکثر عملکرد، تقویت توربو خاموش است (فقط برای مقایسه نتایج، تقویت توربو برای نتایج خوب کمی کمتر از 10٪ اضافه می کند، برای موارد بد ممکن است اصلاً تأثیری نداشته باشد). نسخه های 1C 8.2.19.86، 8.3.6.2076. من نه همه ارقام، بلکه فقط جالب ترین آنها را ذکر می کنم تا چیزی برای مقایسه وجود داشته باشد.

100 مگابیت CIFS

برد 2008 - برد 2008

آدرس با آدرس IP

100 مگابیت CIFS

برد 2008 - برد 2008

آدرس با نام

1 گیگابیت CIFS

برد 2008 - برد 2008

آدرس با آدرس IP

1 گیگابیت CIFS

برد 2008 - برد 2008

آدرس با نام

1 گیگابیت CIFS

Win 2008 - Win 7

آدرس با نام

1 گیگابیت CIFS

Win 2008 - Debian

آدرس با نام

10 گیگابیت CIFS

برد 2008 - برد 2008

آدرس با آدرس IP

10 گیگابیت CIFS

برد 2008 - برد 2008

آدرس با نام

11,20 26,18 15,20 43,86 40,65 37,04 16,23 44,64
1C 8.2 11,29 26,18 15,29 43,10 40,65 36,76 15,11 44,10
8.2.19.83 12,15 25,77 15,15 43,10 14,97 42,74
6,13 34,25 14,98 43,10 39,37 37,59 15,53 42,74
1C 8.3 6,61 33,33 15,58 43,86 40,00 37,88 16,23 42,74
8.3.6.2076 33,78 15,53 43,48 39,37 37,59 42,74

نتیجه گیری (از جدول، و از تجربه شخصی. فقط برای نسخه فایل اعمال می شود):

  • از طریق شبکه، اگر این شبکه به درستی پیکربندی شده باشد و مسیر به درستی در 1C ثبت شده باشد، می توانید اعداد کاملاً عادی را برای کار دریافت کنید. حتی اولین Core i3s می تواند 40+ طوطی تولید کند که بسیار خوب است و اینها فقط طوطی نیستند، در کار واقعی نیز تفاوت قابل توجه است. ولی! محدودیت زمانی که چندین کاربر (بیش از 10) کار می کنند دیگر شبکه نخواهد بود، در اینجا 1 گیگابیت هنوز کافی است، اما در حین کار چند کاربره مسدود می شود (Gilev).
  • پلتفرم 1C 8.3 برای راه اندازی شبکه مناسب چندین برابر بیشتر نیاز دارد. تنظیمات اولیه - Gilev را ببینید، اما به خاطر داشته باشید که همه چیز می تواند تأثیر بگذارد. من شتابی را در حذف (و نه فقط خاموش کردن) آنتی ویروس، از حذف پروتکل هایی مانند FCoE، از تغییر درایورها به نسخه قدیمی تر، اما دارای گواهی مایکروسافت (مخصوصاً برای کارت های ارزان قیمت مانند asus و lengths)، از حذف شبکه دوم مشاهده کردم. کارت از سرور ... گزینه های زیادی وجود دارد، شبکه خود را با دقت راه اندازی کنید. ممکن است وضعیتی باشد که پلتفرم 8.2 اعداد قابل قبول و 8.3 - دو یا حتی بیشتر از آن را ارائه دهد. سعی کنید با نسخه های پلتفرم 8.3 بازی کنید، گاهی اوقات تأثیر بسیار بزرگی می گیرید.
  • 1C 8.3.6.2076 (شاید بعداً من هنوز به دنبال نسخه دقیق آن نگردیده ام) از طریق شبکه هنوز پیکربندی آسان تر از 8.3.7.2008 است. برای دستیابی به عملکرد عادی شبکه از 8.3.7.2008 (در طوطی های قابل مقایسه) فقط چند بار معلوم شد، برای یک مورد کلی تر نمی توانم آن را تکرار کنم. من چیز زیادی متوجه نشدم، اما با قضاوت از روی پارچه های Process Explorer، ضبط مانند 8.3.6 به آنجا نمی رود.
  • علیرغم این واقعیت که هنگام کار بر روی یک شبکه 100 مگابیت، برنامه بارگذاری آن کم است (می توان گفت که شبکه رایگان است)، سرعت کار هنوز بسیار کمتر از 1 گیگابیت است. دلیل آن تأخیر شبکه است.
  • همه چیزهای دیگر برابر (یک شبکه با عملکرد خوب) برای 1C 8.2، اتصال Intel-Realtek 10٪ کندتر از Intel-Intel است. اما realtek-realtek به طور کلی می تواند فرونشست شدیدی را ایجاد کند. بنابراین، اگر پول هست، بهتر است کارت های شبکه اینتل را همه جا نگه دارید؛ اگر پولی نیست، اینتل فقط روی سرور (K.O. شما) نصب شود. و دستورالعمل های چند برابر بیشتر برای تنظیم کارت های شبکه هوشمند وجود دارد.
  • تنظیمات آنتی ویروس به طور پیش فرض (به عنوان مثال، نسخه drweb 10) حدود 8-10٪ از طوطی ها را می گیرد. اگر آن را در صورت نیاز پیکربندی کنید (اجازه دهید فرآیند 1cv8 همه چیز را انجام دهد، اگرچه ایمن نیست) - سرعت آن مانند بدون آنتی ویروس است.
  • مربیان لینوکس نمی خوانند. سرور با سامبا عالی و رایگان است، اما اگر Win XP یا Win7 را روی سرور (یا حتی بهتر از آن - سیستم عامل سرور) قرار دهید، نسخه 1c در فایل سریعتر کار می کند. بله، و samba و پشته پروتکل و تنظیمات شبکه و موارد دیگر در دبیان / اوبونتو به خوبی تنظیم شده است، اما این برای متخصصان توصیه می شود. منطقی نیست لینوکس را با تنظیمات پیش فرض نصب کنید و بعد بگویید کند کار می کند.
  • بررسی عملکرد دیسک های متصل از طریق استفاده از شبکه با استفاده از fio بسیار خوب است. حداقل مشخص خواهد شد که آیا این مشکلات مربوط به پلت فرم 1C یا شبکه / دیسک است.
  • برای نسخه تک کاربره، نمی توانم به تست هایی (یا موقعیتی) فکر کنم که در آن تفاوت بین 1 گیگابیت بر ثانیه و 10 گیگابیت در ثانیه قابل مشاهده باشد. تنها جایی که 10 گیگابیت بر ثانیه برای نسخه فایل نتیجه بهتری داشت، اتصال دیسک ها از طریق iSCSI است، اما این موضوع برای یک مقاله جداگانه است. با این حال، من فکر می کنم که برای نسخه فایل کارت های 1 گیگابیت کافی است.
  • چرا در شبکه 100 مگابیت 8.3 بسیار سریعتر از 8.2 کار می کند - من نمی دانم، اما این واقعیت اتفاق افتاد. بقیه تجهیزات، همه تنظیمات دیگر کاملاً یکسان هستند، فقط در یک مورد 8.2 و در مورد دیگر 8.3 تست شده است.
  • برنده NFS تنظیم نشده - برد یا برد-لین به 6 طوطی می دهد که در جدول گنجانده نشده است. بعد از تنظیم، 25 گرفتم، اما ناپایدار است (رانش در اندازه گیری ها بیش از 2 واحد است). من هنوز نمی توانم توصیه هایی در مورد استفاده از ویندوز و پروتکل NFS ارائه کنم.
پس از تمام تنظیمات و بررسی ها، دوباره آزمایش را از رایانه مشتری اجرا می کنیم، از نتیجه بهبود یافته خوشحال می شویم (در صورت امکان). اگر نتیجه بهبود یافته باشد، بیش از 30 طوطی (و به خصوص بیش از 40) وجود دارد، کمتر از 10 کاربر همزمان کار می کنند، و پایه کار همچنان کند می شود - تقریباً مطمئناً مشکلات برنامه نویس (یا قبلاً به آن رسیده اید) اوج قابلیت های نسخه فایل).

سرور ترمینال (پایه روی سرور است، مشتریان از طریق شبکه، پروتکل RDP متصل می شوند). الگوریتم گام به گام:

  • پایگاه داده آزمایشی Gilev را به سرور در همان پوشه پایگاه داده اصلی اضافه کنید. ما از همان سرور متصل می شویم و تست را اجرا می کنیم. ما نتیجه حاصل را به یاد می آوریم.
  • همانند نسخه فایل، پردازنده را پیکربندی می کنیم. در مورد سرور ترمینال، پردازنده به طور کلی نقش اصلی را بر عهده دارد (فرض می شود که هیچ نقطه ضعف آشکاری مانند کمبود حافظه یا مقدار زیادی نرم افزار غیر ضروری وجود ندارد).
  • راه اندازی کارت های شبکه در مورد سرور ترمینال عملاً بر عملکرد 1c تأثیر نمی گذارد. برای ارائه راحتی "ویژه"، اگر سرور شما بیش از 50 طوطی صادر می کند، می توانید با نسخه های جدید پروتکل RDP بازی کنید، فقط برای راحتی کاربران، پاسخگویی سریعتر و پیمایش.
  • با کار فعال تعداد زیادی از کاربران (و در اینجا می توانید از قبل سعی کنید 30 نفر را به یک پایگاه متصل کنید، اگر سعی کنید)، نصب یک دیسک SSD بسیار مطلوب است. بنا به دلایلی، اعتقاد بر این است که دیسک به ویژه بر عملکرد 1C تأثیر نمی گذارد، اما تمام آزمایشات با حافظه پنهان کنترل کننده فعال برای نوشتن انجام می شود، که اشتباه است. پایه تست کوچک است، به خوبی در حافظه نهان قرار می گیرد، بنابراین اعداد بالاست. در پایگاه های داده واقعی (بزرگ)، همه چیز کاملاً متفاوت خواهد بود، بنابراین کش برای آزمایش غیرفعال است.
به عنوان مثال، من کار تست Gilev را با گزینه های مختلف دیسک بررسی کردم. من دیسک ها را از آنچه در دست بود قرار دادم، فقط تمایل به نشان دادن. تفاوت بین 8.3.6.2076 و 8.3.7.2008 کم است (در Ramdisk Turbo بوست 8.3.6 56.18 تولید می کند و 8.3.7.2008 تولید 55.56 می کند، در تست های دیگر تفاوت حتی کمتر است). مصرف برق - حداکثر عملکرد، بوست توربو غیرفعال است (مگر اینکه در غیر این صورت ذکر شده باشد).
Raid 10 4x SATA 7200

ATA ST31500341AS

Raid 10 4x SAS 10kRaid 10 4x SAS 15kتک SSDرامدیسکرامدیسککش فعال شد

کنترلر RAID

21,74 28,09 32,47 49,02 50,51 53,76 49,02
1C 8.2 21,65 28,57 32,05 48,54 49,02 53,19
8.2.19.83 21,65 28,41 31,45 48,54 49,50 53,19
33,33 42,74 45,05 51,55 52,08 55,56 51,55
1C 8.3 33,46 42,02 45,05 51,02 52,08 54,95
8.3.7.2008 35,46 43,01 44,64 51,55 52,08 56,18
  • حافظه پنهان کنترلر RAID فعال تمام تفاوت بین دیسک ها را حذف می کند، اعداد هم برای sat و هم برای sac یکسان هستند. آزمایش با آن برای مقدار کمی داده بی فایده است و یک شاخص نیست.
  • برای پلتفرم 8.2، تفاوت عملکرد بین گزینه های SATA و SSD بیش از دو برابر است. این اشتباه تایپی نیست. اگر در حین آزمایش روی دیسک های SATA به نمایشگر عملکرد نگاه کنید. سپس "زمان فعال دیسک (در٪)" 80-95 به وضوح قابل مشاهده است. بله، اگر حافظه پنهان نوشتن خود دیسک ها را فعال کنید، سرعت به 35 افزایش می یابد، اگر حمله حافظه پنهان کنترلر را فعال کنید - تا 49 (صرف نظر از اینکه در حال حاضر کدام دیسک ها در حال آزمایش هستند). اما اینها طوطی‌های کش مصنوعی هستند، در کارهای واقعی با پایه‌های بزرگ هرگز 100% نسبت ضربه حافظه پنهان نوشتن وجود نخواهد داشت.
  • حتی سرعت SSD ارزان (من آن را روی Agility 3 آزمایش کردم) برای کارکرد نسخه فایل کاملاً کافی است. منبع ضبط موضوع دیگری است، در اینجا شما باید به هر مورد خاص نگاه کنید، واضح است که Intel 3700 آن را بسیار بالاتر خواهد داشت، اما در آنجا قیمت مناسب است. و بله، می دانم که هنگام تست درایو SSD، حافظه پنهان این درایو را نیز تا حد زیادی تست می کنم، نتایج واقعی کمتر خواهد بود.
  • صحیح ترین راه حل (از دیدگاه من) این است که 2 دیسک SSD را به یک حمله آینه ای برای یک پایگاه داده فایل (یا چندین پایگاه داده فایل) اختصاص دهید و هیچ چیز دیگری را در آنجا قرار ندهید. بله، با یک آینه، SSD ها به همین ترتیب فرسوده می شوند و این یک منفی است، اما حداقل آنها به نوعی در برابر خطاهای الکترونیکی کنترل کننده بیمه هستند.
  • مزایای اصلی دیسک های SSD برای نسخه فایل زمانی ظاهر می شود که پایگاه داده های زیادی وجود داشته باشد و هر کدام چندین کاربر داشته باشند. اگر 1-2 پایه وجود داشته باشد و کاربران در منطقه 10 باشند، دیسک های SAS به اندازه کافی وجود خواهد داشت. (اما در هر صورت - به بارگذاری این دیسک ها، حداقل از طریق perfmon نگاه کنید).
  • مزایای اصلی سرور ترمینال این است که می تواند کلاینت های بسیار ضعیفی داشته باشد و تنظیمات شبکه بسیار کمتر روی سرور ترمینال تأثیر می گذارد (باز هم K.O. شما).
نتیجه گیری: اگر تست Gilev را روی سرور ترمینال اجرا کنید (از همان دیسکی که پایه های کاری قرار دارند) و در آن لحظاتی که پایه کار کند می شود و تست Gilev نتیجه خوبی را نشان می دهد (بالای 30) مقصر عملکرد کند پایه اصلی کار است، به احتمال زیاد یک برنامه نویس.

اگر تست Gilev اعداد کمی را نشان می دهد و هر دو شما یک پردازنده با فرکانس بالا و دیسک های سریع دارید، پس مدیر باید حداقل پرفمون را بگیرد و با همه نتایج در جایی ثبت شده و تماشا کند، مشاهده کند، نتیجه بگیرد. هیچ توصیه بی چون و چرای وجود نخواهد داشت.

گزینه سرویس گیرنده-سرور.

آزمایشات فقط روی 8.2، tk انجام شد. در 8.3 همه چیز به طور جدی به نسخه بستگی دارد.

برای آزمایش، گزینه های مختلفی را برای سرورها و شبکه بین آنها انتخاب کردم تا روندهای اصلی را نشان دهم.

1C: Xeon 5520

SQL: Xeon E5-2630

1C: Xeon 5520

SQL: Xeon E5-2630

کانال فیبر - SSD

1C: Xeon 5520

SQL: Xeon E5-2630

کانال فیبر - SAS

1C: Xeon 5650

SQL: Xeon E5-2630

1C: Xeon 5650

SQL: Xeon E5-2630

کانال فیبر - SSD

1C: Xeon 5650

SQL: Xeon E5-2630

1C: Xeon 5650 =1C: Xeon 5650 =1C: Xeon 5650 =1C: Xeon 5650 =1C: Xeon 5650 =
16,78 18,23 16,84 28,57 27,78 32,05 34,72 36,50 23,26 40,65 39.37
1C 8.2 17,12 17,06 14,53 29,41 28,41 31,45 34,97 36,23 23,81 40,32 39.06
16,72 16,89 13,44 29,76 28,57 32,05 34,97 36,23 23,26 40,32 39.06

به نظر می رسد که من همه گزینه های جالب را در نظر گرفتم، اگر به چیز دیگری علاقه مند هستید - در نظرات بنویسید، سعی می کنم آن را انجام دهم.

  • SAS در سیستم‌های ذخیره‌سازی کندتر از سیستم‌های ذخیره‌سازی محلی است، حتی اگر سیستم‌های ذخیره‌سازی دارای اندازه‌های کش بزرگ هستند. SSD ها هم محلی و هم روی سیستم های ذخیره سازی برای تست Gilev با سرعت قابل مقایسه ای کار می کنند. من هیچ آزمایش استاندارد چند رشته ای (نه تنها رکوردها، بلکه همه تجهیزات) را به جز بار 1C از MCC نمی شناسم.
  • تغییر سرور 1C از 5520 به 5650 تقریباً دو برابر عملکرد را افزایش داد. بله، تنظیمات سرور کاملاً مطابقت ندارند، اما روندی را نشان می دهد (چیزی تعجب آور نیست).
  • افزایش فرکانس در سرور SQL مطمئناً تأثیر دارد، اما نه مانند سرور 1C، سرور MS SQL کاملاً قادر است (اگر در مورد آن سؤال شود) از حافظه چند هسته ای و رایگان استفاده کند.
  • تغییر شبکه بین 1C و SQL از 1 گیگابیت بر ثانیه به 10 گیگابیت در ثانیه حدود 10 درصد از طوطی ها را به همراه دارد. انتظار بیشتری داشت.
  • فعال کردن حافظه مشترک همچنان تأثیری را دارد، اگرچه نه 15 درصد، همانطور که در مقاله توضیح داده شد. انجام آن ضروری است، زیرا سریع و آسان است. اگر شخصی در حین نصب یک نمونه با نام به سرور SQL داده است، برای اینکه 1C کار کند، نام سرور نباید توسط FQDN مشخص شود (tcp / ip کار خواهد کرد)، نه از طریق localhost یا فقط ServerName، بلکه از طریق ServerNameInstanceName، برای مثال، zz-testzztest. (در غیر این صورت، DBMS از کار خواهد افتاد: Microsoft SQL Server Native Client 10.0: Shared Memory Provider: کتابخانه حافظه مشترک مورد استفاده برای اتصال به SQL Server 2000 یافت نشد. HRESULT = 80004005، HRESULT = 80004005، HRESULT = 80004005، HRESULT = 80004005، HRESULT = 80004005، HRESULT = 80004005، S8000L، S500L، S500L = 80004005. 08001، حالت = 1، شدت = 10، بومی = 126، خط = 0).
  • برای کاربران کمتر از 100، تنها نکته ای که باید به دو سرور جداگانه تقسیم شود، مجوز Win 2008 Std (و قدیمی تر) است که فقط از 32 گیگابایت رم پشتیبانی می کند. در تمام موارد دیگر، 1C و SQL باید قطعاً روی یک سرور نصب شوند و حافظه بیشتری (حداقل 64 گیگابایت) به آن داده شود. دادن رم کمتر از 24-28 گیگابایت به MS SQL حرص و طمع غیر قابل توجیهی است (اگر فکر می کنید به اندازه کافی از این حافظه دارید و همه چیز خوب کار می کند - شاید نسخه فایل 1C برای شما کافی باشد؟)
  • اینکه ترکیب 1C و SQL در ماشین مجازی چقدر بدتر کار می کند موضوع مقاله جداگانه ای است (اشاره بسیار بدتر است). حتی در Hyper-V، همه چیز به این سادگی نیست ...
  • حالت عملکرد متعادل بد است. نتایج کاملاً با نسخه فایل مطابقت دارد.
  • بسیاری از منابع می گویند که حالت اشکال زدایی (ragent.exe -debug) باعث کاهش شدید عملکرد می شود. خوب، آن را کاهش می دهد، بله، اما 2-3٪ من نمی توانم به عنوان یک اثر قابل توجهی.
کمترین مقدار مشاوره برای یک مورد خاص وجود خواهد داشت، زیرا ترمز در حالت عملکرد مشتری-سرور سخت ترین حالت است و همه چیز به صورت جداگانه پیکربندی می شود. ساده ترین راه این است که بگوییم برای عملکرد عادی باید فقط برای 1C و MS SQL یک سرور جداگانه بگیرید، پردازنده هایی را با حداکثر فرکانس(بالای 3 گیگاهرتز)، درایوهای SSDبرای پایه و حافظه بیشتر (128+)، از مجازی سازی استفاده نکنید. این کمک کرد - عالی است، شما خوش شانس هستید (و چنین افراد خوش شانس زیادی وجود خواهند داشت، بیش از نیمی از مشکلات با ارتقاء کافی حل می شوند). اگر نه، پس هر گزینه دیگری از قبل به بررسی و تنظیمات جداگانه نیاز دارد.

نتایج آزمایش بارگذاری TPC-1 عملکرد 1C طبق Gilev برای پیکربندی با پایگاه داده فایل:

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

  • زمان عملیات
  • زمان انتظار تجهیزات
  • زمان انتظارهای منطقی مانند قفل است

در این مورد، مشخصه کلیدی سرعت عملیات است.

توجه داشته باشید. برای یک پردازنده، مهم ترین مشخصه فرکانس پردازنده است، نه بار. در زیر یک اسکرین شات از نتایج آزمون (برای بزرگنمایی تصویر - روی آن کلیک کنید).

سرعت سیستم و برنامه ریزی منابع محاسباتی لازم برای پیاده سازی آن یک عملیات اجباری برای هرگونه اجرا یا اصلاح سیستم IT موجود است.

بسیاری از روش های موجود برای ارزیابی عملکرد بر اساس یک نوع آزمایش است.

دو نوع اصلی تست وجود دارد: جزء و انتگرال.

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

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

در آزمون ما، این دقیقاً همان رویکردی است که استفاده می شود.

در نتیجه، شاخص خاصی از عملکرد (سرعت) به دست آوردیم. این نتیجه کار پلتفرم به طور کلی بر روی سخت افزار ما است. در مورد نسخه مشتری-سرور، این نتیجه زنجیره پیچیده ای از درخواست ها است که از بخش های مختلف عبور می کنند. شما یک نتیجه واقعی کلی دریافت می کنید که توسط تنگنای سیستم تعیین می شود. تنظیمات DBMS و تنظیمات سیستم عامل و سخت افزار بر نتیجه کلی عملکرد سیستم تأثیر می گذارد.

این تست میزان کار در واحد زمان را در یک رشته ارزیابی می کند و برای ارزیابی سرعت بارهای کاری تک رشته ای، از جمله سرعت رندر رابط، تاثیر هزینه نگهداری محیط مجازی و در صورت وجود، مناسب است. ارسال مجدد اسناد، بسته شدن ماه، محاسبه حقوق و دستمزد و غیره.

محصولات حسابداری و مدیریت حسابداری شرکت 1C در قلمرو فدراسیون روسیه گسترده ترین است. هزاران شرکت تجارت خود را بر اساس پیکربندی های معمولی و تخصصی 1C انجام می دهند. با چنین استفاده گسترده، تعدادی از سوالات به طور منظم در مورد بهینه سازی بودجه نرم افزار و استفاده عاقلانه از منابع مطرح می شود. اختلافات پیرامون بخش‌های سرور این مجموعه فروکش نمی‌کند، به‌ویژه اینکه سرور 1C بر اساس کدام سیستم‌عامل است و پردازش پایگاه‌های داده 1C را به کدام DBMS بسپارد. در طول آزمون های خود سعی می کنیم به این سوالات پاسخ دهیم.

شرکت کنندگان در آزمون

سیستم عامل MS Server و MS SQL DBMS

  • شرکت 1C آشکارا این بسته را به عنوان مدل اصلی کار قرار می دهد، به ترتیب، محصولات 1C در درجه اول برای آن ایجاد می شوند.
  • در دسترس بودن پروتکل تبادل اطلاعات با سرعت بالا SharedMemory
  • یک مسئول وجود دارد پشتیبانی فنیو قراردادهای خدماتی
  • یک پایگاه دانش و هزاران اطلاعات در مورد نصب و تنظیم دقیق 1C + MS SQL وجود دارد

سیستم عامل یونیکس و PostgreSQL DBMS

  • این سیستم کاملاً رایگان است (به جز مجوز سرور 1C: Enterprise)
  • پیکربندی انعطاف‌پذیر بسیاری از پارامترها که عملکرد DBMS را بهبود می‌بخشد ممکن است
  • محصولات 1C از PostgreSQL DBMS پشتیبانی می کنند
  • امکان تکرار پایگاه داده وجود دارد

البته هزینه پروژه، تحمل خطا و پشتیبانی فنی معیارهای مهمی در هنگام انتخاب سیستم اطلاعاتی برای 1C هستند. با این حال، عاملی وجود دارد که در بیشتر موارد به شدت بر تصمیم گیری تأثیر می گذارد - این سرعت است.

از آنجایی که ادبیات فنی در مورد این دو سیستم در اینترنت به سادگی بسیار زیاد است، می توان برای مدت طولانی در مورد جداول مقایسه ای طولانی بحث کرد که بسته به اهداف، بر مزایای یک محصول خاص تأکید می کند. شما می توانید در مورد این یا آن پارامتر در میان صدها پارامتر مشابه بحث کنید - اینکه چقدر در نوع خود منحصر به فرد است و چگونه بر دستیابی به نتیجه تأثیر می گذارد. اما تئوری بدون عمل مرده است - ما در این مقاله پیشنهاد می کنیم که نظریه را حذف کنیم و مستقیماً به واقعیت ها برویم تا عملکرد هر دو سیستم اطلاعاتی با سطح مشخصی از تنظیمات توصیه شده را در عمل آزمایش کنیم. گزینه های مختلفمعماری سرور (جدول 2 را ببینید).

روش های تست

در آزمایش‌های خود، ما بر دو روش تولید بار مصنوعی و شبیه‌سازی تجربه کاربر در 1C تکیه می‌کنیم. اینها تست Gilev (TPC-1C) و یک تست مرکز تست ویژه 1C از جعبه ابزار 1C: KIP با سناریوهای کاربری خاص هستند.

تست Gilev (TPC-1C)

تست گیلفمتعلق به بخش تست های بار کراس پلت فرم جهانی است. می توان از آن برای معماری فایل و سرویس گیرنده-سرور 1C: Enterprise استفاده کرد. این تست میزان کار در واحد زمان را در یک رشته اندازه گیری می کند و برای ارزیابی سرعت بارهای تک رشته ای از جمله سرعت ترسیم رابط، تأثیر هزینه های منابع، ارسال مجدد اسناد، روش های بسته شدن ماه، حقوق و دستمزد مناسب است. محاسبه و غیره تطبیق پذیری به شما این امکان را می دهد که ارزیابی عملکرد خلاصه ای را بدون اتصال به یک پیکربندی پلت فرم انجام دهید. نتیجه آزمایش یک ارزیابی کلی از سیستم اندازه گیری شده 1C است که در واحدهای دلخواه بیان می شود.

تست تخصصی از "مرکز تست" 1C: کیت ابزار KIP

مرکز آزمون- ابزاری برای انجام تست استرس چند کاربره سیستم های مبتنی بر 1C: Enterprise 8 (شکل 1 را ببینید). با کمک آن می توان کار یک شرکت را بدون مشارکت کاربران واقعی شبیه سازی کرد که امکان ارزیابی کاربرد، عملکرد و مقیاس پذیری سیستم اطلاعاتی را در شرایط واقعی ممکن می سازد. این سیستم پیکربندی است که مکانیزمی را برای کنترل فرآیند تست فراهم می کند. برای آزمایش پایگاه اطلاعاتی، لازم است پیکربندی مرکز تست را با پیکربندی پایگاه داده آزمایش شده با مقایسه و ادغام پیکربندی ها ادغام کنیم. در نتیجه ادغام، اشیاء و ماژول های مشترک لازم برای عملیات مرکز تست به ابرداده های پایگاه آزمایش شده اضافه می شوند.

شکل 1 - طرح کار "مرکز تست" 1C: ابزار دقیق

بنابراین، با استفاده از جعبه ابزار ابزار دقیق 1C: بر اساس داده‌های موجود در پایگاه‌های تولید واقعی 1C، برنامه‌نویس یک اسکریپت تست خودکار تمام عیار را بر اساس فهرست اسناد و کتاب‌های مرجع تولید می‌کند. از این نوعتنظیمات (برنامه برای هزینه کردن وجوه، سفارش تامین کننده، فروش کالا و خدمات و غیره). هنگامی که اسکریپت را اجرا می کنید، مرکز تست به طور خودکار فعالیت چند کاربره شرح داده شده در اسکریپت را بازتولید می کند. برای انجام این کار، مرکز تست تعداد مورد نیاز کاربر مجازی (مطابق با لیست نقش ها) را ایجاد می کند و شروع به انجام اقدامات می کند.

پارامترهای تست

هنگام تنظیم اسکریپت های آزمایشی برای شبیه سازی قابل اعتماد کار همزمان تعداد زیادی از کاربران، پارامترهای آزمایشی خاصی برای هر نوع سند تنظیم می شود (جدول 1 را ببینید):

  • سند - سند خاصی را در پایه کار نشان می دهد که بر اساس آن آزمایش بار انجام می شود
  • اولویت راه اندازی - ترتیب آزمایش های راه اندازی را برای هر نوع سند تشکیل می دهد
  • تعداد اسناد - حجم اسناد آزمایشی تولید شده را تعیین می کند
  • مکث، ثانیه - تأخیر هنگام شروع یک سری آزمایش، در همان نوع اسناد
  • تعداد خطوط در سند یک شاخص اطلاعاتی است که از "انبوه" بودن سند آزمایشی خبر می دهد که بر زمان پردازش و بار روی منابع تأثیر می گذارد.

تست ها در 3 تکرار انجام می شود، نتایج در یک جدول ثبت می شود. بنابراین، نتایج آزمایش به‌دست‌آمده، که در ثانیه اندازه‌گیری می‌شوند، به‌طور واقعی و عینی، سطح عملکرد پایه‌های 1C را در شرایطی که تا حد امکان نزدیک به شرایط واقعی هستند منعکس می‌کنند (جدول 3.1 و 3.2 را ببینید).

جدول 1. پارامترهای سناریوهای آزمون

فاکتور خریدار
سند اولویت شروع تعداد اسناد مکث، ثانیه تعداد خطوط در سند
نقش 1 فاکتور خریدار 1 25 51 62
دریافت کالا 2 25 80
فروش کالا 3 25 103
حواله 4 25 1
خریدار برمی گردد 5 25 82
نقش 25 10 65 79
دریافت کالا 1 22 80
فروش کالا 2 25 103
حواله 3 25 1
خریدار برمی گردد 4 25 75
نقش 3 فاکتور خریدار 4 15 45 76
دریافت کالا 5 26 80
فروش کالا 1 52 103
حواله 2 26 1
خریدار برمی گردد 3 32 90
نقش 4 فاکتور خریدار 3 45 38 70
دریافت کالا 4 30 80
فروش کالا 5 30 103
حواله 1 20 1
خریدار برمی گردد 2 20 86
نقش 5 فاکتور خریدار 2 30 73 76
دریافت کالا 3 30 80
فروش کالا 4 30 103
حواله 5 18 1
خریدار برمی گردد 1 18 91
نقش 6 فاکتور خریدار 1 40 35 86
دریافت کالا 2 40 80
فروش کالا 3 40 103
حواله 4 40 1
خریدار برمی گردد 5 40 88
نقش 7 فاکتور خریدار 5 25 68 80
دریافت کالا 1 25 80
فروش کالا 2 25 103
حواله 3 25 1
خریدار برمی گردد 4 25 90
نقش 8 فاکتور خریدار 3 25 62 87
دریافت کالا 4 25 80
فروش کالا 5 25 103
حواله 1 25 1
خریدار برمی گردد 2 25 92
نقش 9 فاکتور خریدار 2 20 82 82
دریافت کالا 4 20 80
فروش کالا 5 20 103
حواله 1 20 1
خریدار برمی گردد 3 20 98
نقش 10 فاکتور خریدار 4 50 2 92
دریافت کالا 1 50 80
فروش کالا 2 50 103
حواله 5 50 1
خریدار برمی گردد 3 50 98

جدول 2. مشخصات فنینیمکت آزمون

# N \ n نقش سیستم CPU \ vCPU رم، گیگابایت سیستم دیسکورودی خروجی
1 سرور ترمینالماشین مجازیبرای مدیریت آزمون 4 هسته
2.9 گیگاهرتز
16 گیگابایت Intel Sata SSD Raid1
2 سناریو 1.سرور 1C + DBMS سخت افزاری Intel Xeon E5-2690
16 هسته
96 گیگابایت Intel Sata SSD Raid1
3 سناریو 2.سرور 1C + DBMS مجازی 16 هسته
2.9 گیگاهرتز
64 گیگابایت Intel Sata SSD Raid1
4 سناریو 3.سرور 1C مجازی 16 هسته
2.9 گیگاهرتز
32 گیگابایت Intel Sata SSD Raid1
5 سناریو 4.سرور مجازی DBMS 16 هسته
2.9 گیگاهرتز
32 گیگابایت Intel Sata SSD Raid1
6 نرم افزار
  • ویندوز مایکروسافت DataCenter سرور 2016
  • Microsoft Windows Server 2016 Standart
  • Microsoft SQL Server 2016 SP1 (13.0.4001.0)
  • هایپروایزر Hyper-V
  • سرور 1C: Enterprise 8.3.10.2667
  • CentOS 7.4.1708 (x64)
  • PostgreSQL 9.6.5 + Patch PostgreSQL 9.6.5-4.1C
7 تنظیمات 1C
  • تست مصنوعی تک رشته ای 1C: پلت فرم Enterprise + تست چند رشته ای نوشتن روی دیسک (2.1.0.7) Gilev Vyacheslav Valerievich
  • حجم 0,072 گیگابایت
  • پیکربندی: Enterprise Accounting CORP، نسخه 3.0 (3.0.52.39)
  • کاربرد: Thin Client
  • گزینه رابط: تاکسی
  • حجم 9.2 گیگابایت
  • پلتفرم: 1C: Enterprise 8.3 (8.3.10.2667)
  • پیکربندی: ویرایش 11 مدیریت تجارت (11.3.4.21)
  • حالت: سرور (فشرده سازی: پیشرفته)
  • کاربرد: Thin Client
  • بومی سازی: پایگاه اطلاع رسانی: روسی (روسیه)، جلسه: روسی (روسیه)
  • گزینه رابط: تاکسی
  • حجم 11.8 گیگابایت

جدول 3.1 نتایج آزمایش با استفاده از آزمون Gilev (TPC-1C). بالاترین مقدار بهینه در نظر گرفته می شود.

جدول 3.2 نتایج آزمایش با استفاده از آزمون ویژه 1C: KIP. کوچکترین مقدار بهینه در نظر گرفته می شود.

سیستم عاملسرور مایکروسافت سیستم عامل کلاس یونیکس
لیست تست ها (متوسط ​​مقدار بر اساس نتایج یک سری 3 تست) سرور سخت افزار 1C + DBMS، پروتکل SharedMemory سرور مجازی 1C + DBMS، پروتکل SharedMemory سرور سخت افزار 1C و سرور سخت افزار DBMS، پروتکل TCP-IP سرور مجازی 1C و سرور مجازی DBMS، پروتکل TCP-IP
انجام 1C: تست های ابزار دقیق بر روی یک پایگاه موجود، پیکربندی حسابداری سازمانی
ترازنامه گردش مالی 1741 ثانیه 2.473 ثانیه 2.873 ثانیه 2522 ثانیه 13.866 ثانیه 9.751 ثانیه
انجام مرجوعی کالا از خریداران 0.695 ثانیه 0.775 ثانیه 0.756 ثانیه 0.781 ثانیه 0.499 ثانیه 0.719 ثانیه
اجرای دستور پرداخت 0.048 ثانیه 0.058 ثانیه 0.063 ثانیه 0.064 ثانیه 0.037 ثانیه 0.065 ثانیه
انجام PTI 0.454 ثانیه 0.548 ثانیه 0.535 ثانیه 0.556 ثانیه 0.362 ثانیه 0.568 ثانیه
انجام فروش کالا و خدمات 0.667 ثانیه 0.759 ثانیه 0.747 ثانیه 0.879 ثانیه 0.544 ثانیه 0.802 ثانیه
ارسال فاکتور برای پرداخت 0.028 ثانیه 0.037 ثانیه 0.037 ثانیه 0.038 ثانیه 0.026 ثانیه 0.038 ثانیه
محاسبه برآورد هزینه 3.071 ثانیه 3.657 ثانیه 4.094 ثانیه 3.768 ثانیه 15.175 ثانیه 10.68 ثانیه
انجام 1C: تست های ابزار دقیق بر روی یک پایه موجود، پیکربندی مدیریت تجارت
انجام و بازگشت از مشتری 2.192 ثانیه 2.113 ثانیه 2070 ثانیه 2.418 ثانیه 1.417 ثانیه 1.494 ثانیه
ارسال و بازگرداندن کالا به تامین کننده 1446 ثانیه 1410 ثانیه 1.359 ثانیه 1467 ثانیه 0.790 ثانیه 0.849 ثانیه
ارسال سفارش فروش 0.355 ثانیه 0.344 ثانیه 0.335 ثانیه 0.361 ثانیه 0.297 ثانیه 0.299 ثانیه
بازشماری کالاها 0.140 ثانیه 0.134 ثانیه 0.131 ثانیه 0.144 ثانیه 0.100 ثانیه 0.097 ثانیه
انجام پذیرش مشخصات فنی 1.499 ثانیه 1438 ثانیه 1.412 ثانیه 1.524 ثانیه 1.097 ثانیه 1.189 ثانیه
انجام اجرای مشخصات فنی 1390 ثانیه 1355 ثانیه 1.308 ثانیه 1426 ثانیه 1.093 ثانیه 1.114 ثانیه
انجام RSC 0.759 ثانیه 0.729 ثانیه 0.713 ثانیه 0.759 ثانیه 0.748 ثانیه 0.735 ثانیه
  1. در یک آزمایش ویژه 1C، عملیات "خواندن داده ها و محاسبات پیچیده"، مانند "ترازنامه گردش مالی" و "محاسبه محاسبات قیمت تمام شده"، چندین برابر سریعتر در MS SQL مایکروسافت انجام می شود.
  2. در عملیات "نوشتن داده ها و ارسال اسناد" در اکثر تست ها، PostgreSQL DBMS، بهینه سازی شده برای 1C، بهترین نتیجه را نشان می دهد.
  3. تست مصنوعی Gilev نیز مزیت PostgreSQL را نشان می دهد. این واقعیت با این واقعیت مرتبط است که آزمایش مصنوعی مبتنی بر اندازه گیری سرعت ایجاد و ارسال انواع خاصی از اسناد است که عملیات "ضبط داده ها و ارسال اسناد" نیز در نظر گرفته می شود.

بیایید با مقایسه بین پلتفرم پایان دهیم، بیایید به مقایسه در هر سیستم برویم:

  1. همانطور که انتظار می‌رفت، آزمایش‌های 1C روی یک پلت‌فرم سخت‌افزاری نتایج بهتری نسبت به یک مجازی نشان می‌دهند. تفاوت در نتایج یک تست ویژه 1C در هر دو مورد کم است که نشان می دهد سازندگان هایپروایزر مجازی به تدریج آنها را بهینه می کنند.
  2. همچنین انتظار می رود که استفاده از فناوری حافظه مشترک (SharedMemory) روند تبادل داده بین سرور 1C و DBMS را سرعت بخشد. بر این اساس، نتایج آزمایش با تعامل شبکه ای این دو سرویس از طریق پروتکل TCP-IP، کمی بهتر از این طرح است.

می توان نتیجه گرفت که برای تنظیم صحیح 1C و DBMS، شما می توانید نتایج قابل توجهی را حتی به صورت رایگان بدست آورید نرم افزار... بنابراین، هنگام طراحی یک ساختار جدید فناوری اطلاعات برای 1C، باید سطح بار روی سیستم، نوع عملیات غالب در پایگاه داده، بودجه موجود، حضور متخصص در DBMS غیر استاندارد را در نظر گرفت. نیاز به ادغام با خدمات خارجی و غیره بر اساس این داده ها، از قبل امکان انتخاب راه حل مورد نیاز وجود دارد.

برای تست بیشتر به ادامه مطلب بروید.