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

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

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

یک مطالعه کوچک از منابع روسی زبان در 1C نشان داد که از این موضوع به شدت اجتناب می شود؛ در صورت بروز مشکل، معمولاً توصیه می شود به حالت سرویس گیرنده یا ترمینال بروید. همچنین تقریباً به طور کلی پذیرفته شده است که تنظیمات روی یک برنامه مدیریت شده بسیار کندتر از حد معمول کار می کنند. به عنوان یک قاعده، استدلال ها "آهن" هستند: "حسابداری 2.0 به تازگی پرواز کرد و "تروئیکا" به سختی حرکت کرد. البته، حقیقتی در این کلمات وجود دارد، بنابراین بیایید سعی کنیم آن را بفهمیم.

مصرف منابع، نگاه اول

قبل از شروع این مطالعه، ما دو هدف را برای خود تعیین کردیم: اینکه بفهمیم آیا پیکربندی‌های مبتنی بر برنامه مدیریت شده واقعا کندتر از پیکربندی‌های معمولی هستند و کدام منابع خاص تأثیر اولیه بر عملکرد دارند.

برای آزمایش، ما دو ماشین مجازی با ویندوز سرور 2012 R2 و ویندوز 8.1 را انتخاب کردیم و آنها را با 2 هسته میزبان Core i5-4670 و 2 گیگابایت اختصاص دادیم. حافظه دسترسی تصادفی، که تقریباً با میانگین ماشین اداری مطابقت دارد. سرور بر روی یک آرایه دوتایی RAID 0 قرار گرفت و کلاینت روی آرایه مشابهی از دیسک های همه منظوره قرار گرفت.

به عنوان پایه های آزمایشی، ما چندین پیکربندی از Accounting 2.0، انتشار را انتخاب کردیم 2.0.64.12 ، که سپس به روز رسانی شد 3.0.38.52 ، تمام تنظیمات بر روی پلت فرم راه اندازی شد 8.3.5.1443 .

اولین چیزی که توجه را به خود جلب می کند افزایش اندازه پایگاه اطلاعاتی Troika است که به طور قابل توجهی رشد کرده است و همچنین اشتهای بسیار بیشتری برای RAM دارد:

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

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

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

متعاقباً پس از بارگذاری طبقه‌بندی‌کننده‌ها و دایرکتوری‌های جدید، ایجاد نمایه‌ها و غیره. اندازه پایه افزایش می یابد؛ به طور کلی، پایه های "سه" بزرگتر از پایه های "دو" هستند. با این حال، این مهم تر نیست، اگر نسخه دوم با 150-200 مگابایت رم محتوی بود، نسخه جدید به نیم گیگابایت نیاز دارد و این مقدار باید هنگام برنامه ریزی منابع لازم برای کار با برنامه در نظر گرفته شود.

خالص

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

وقتی یک پایگاه داده فایل 1C را از طریق شبکه راه اندازی می کنید چه اتفاقی می افتد؟ مشتری مقدار نسبتاً زیادی از اطلاعات را در پوشه های موقت بارگیری می کند، به خصوص اگر این اولین شروع "سرد" باشد. با سرعت 100 مگابیت بر ثانیه، انتظار می رود که ما به عرض کانال برسیم و دانلود می تواند زمان قابل توجهی را ببرد، در مورد ما حدود 40 ثانیه (هزینه تقسیم نمودار 4 ثانیه است).

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

همانطور که از نمودارها می بینید، Accounting 2.0 با هر سرعت شبکه دو برابر سریع بارگیری می شود، انتقال از 100 مگابیت بر ثانیه به 1 گیگابیت بر ثانیه به شما امکان می دهد زمان دانلود را چهار برابر افزایش دهید. در این حالت هیچ تفاوتی بین پایگاه داده های بهینه سازی شده و غیربهینه شده "troika" وجود ندارد.

ما همچنین تأثیر سرعت شبکه را بر عملکرد در حالت های سنگین، به عنوان مثال، در حین انتقال گروهی بررسی کردیم. نتیجه نیز در مقادیر نسبی بیان می شود:

در اینجا جالب تر است، پایه بهینه شده "سه" در یک شبکه 100 مگابیت بر ثانیه با همان سرعت "دو" کار می کند، و یک بهینه نشده دو برابر نتایج بدتر را نشان می دهد. در گیگابیت، نسبت‌ها ثابت می‌مانند، «سه» بهینه‌نشده نیز نصف «دو» کند است، و نسبت بهینه‌شده یک سوم عقب‌تر است. همچنین، انتقال به 1 گیگابیت بر ثانیه به شما امکان می دهد زمان اجرا را برای نسخه 2.0 سه برابر و برای نسخه 3.0 به نصف کاهش دهید.

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

در واقع، برای کارهای روزمره، توان عملیاتی شبکه یک گلوگاه نیست، یک "سه" بهینه نشده تنها 20٪ کندتر از یک "دو" است، و پس از بهینه سازی معلوم می شود که تقریباً سریعتر است - مزایای کار در حالت تین کلاینت. مشهود هستند. انتقال به 1 گیگابیت بر ثانیه هیچ مزیتی به پایه بهینه‌سازی‌شده نمی‌دهد و بهینه‌نشده و هر دو سریع‌تر شروع به کار می‌کنند و تفاوت کوچکی را بین خودشان نشان می‌دهند.

از آزمایش‌های انجام‌شده، مشخص می‌شود که شبکه یک گلوگاه برای پیکربندی‌های جدید نیست و برنامه مدیریت‌شده حتی سریع‌تر از حد معمول اجرا می‌شود. اگر کارهای سنگین و سرعت بارگذاری پایگاه داده برای شما حیاتی است، می‌توانید به 1 گیگابیت بر ثانیه تغییر دهید؛ در موارد دیگر، پیکربندی‌های جدید به شما امکان می‌دهند حتی در شبکه‌های کند 100 مگابیت بر ثانیه به طور مؤثر کار کنید.

پس چرا 1C کند است؟ ما بیشتر به آن نگاه خواهیم کرد.

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

در مقاله قبلی، با قرار دادن پایگاه های داده روی SSD به افزایش عملکرد 1C دست یافتیم. شاید عملکرد زیرسیستم دیسک سرور ناکافی باشد؟ ما عملکرد یک سرور دیسک را در طول اجرای گروهی در دو پایگاه داده به طور همزمان اندازه گیری کردیم و به نتیجه نسبتاً خوش بینانه ای رسیدیم.

علیرغم تعداد نسبتاً زیاد عملیات ورودی/خروجی در ثانیه (IOPS) - 913، طول صف از 1.84 تجاوز نکرد که نتیجه بسیار خوبی برای آرایه دو دیسک است. بر این اساس، می توانیم این فرض را داشته باشیم که یک آینه ساخته شده از دیسک های معمولی برای آن کافی خواهد بود عملکرد عادی 8-10 مشتریان شبکهدر شرایط سنگین

بنابراین آیا SSD روی سرور مورد نیاز است؟ بهترین راه برای پاسخ به این سوال از طریق آزمایش خواهد بود، که ما با استفاده از روش مشابه انجام دادیم، اتصال شبکه در همه جا 1 گیگابیت بر ثانیه است، نتیجه نیز در مقادیر نسبی بیان می شود.

بیایید با سرعت بارگذاری پایگاه داده شروع کنیم.

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

بیایید به انجام مجدد ادامه دهیم:

قبلاً اشاره کردیم که عملکرد دیسک حتی برای کار در حالت های سنگین کاملاً کافی است ، بنابراین سرعت SSD نیز تحت تأثیر قرار نمی گیرد ، به جز پایه بهینه نشده ، که در SSD با بهینه سازی شده مطابقت دارد. در واقع، این یک بار دیگر تأیید می کند که عملیات بهینه سازی اطلاعات را در پایگاه داده سازماندهی می کند، تعداد عملیات I/O تصادفی را کاهش می دهد و سرعت دسترسی به آن را افزایش می دهد.

در کارهای روزمره تصویر مشابه است:

فقط پایگاه داده غیربهینه از SSD سود می برد. مطمئناً می توانید یک SSD خریداری کنید، اما بهتر است به نگهداری به موقع پایگاه داده فکر کنید. همچنین، یکپارچه سازی پارتیشن را فراموش نکنید پایگاه های اطلاع رسانیروی سرور

زیرسیستم دیسک مشتری و SSD

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

اما در عین حال، باید توجه داشته باشید که برای یک ایستگاه کاری که در آن کار فعال با یک یا دو پایگاه اطلاعاتی انجام می شود، منابع عملکرد یک HDD معمولی تولید انبوه کاملاً کافی است. خرید یک SSD می تواند برخی از فرآیندها را سرعت بخشد، اما شتاب شدیدی را در کارهای روزمره متوجه نخواهید شد، زیرا برای مثال، بارگذاری محدود خواهد بود. توان عملیاتیشبکه های.

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

رم

علیرغم این واقعیت که RAM اکنون بسیار ارزان است، بسیاری از ایستگاه های کاری با مقدار حافظه ای که هنگام خرید نصب شده است به کار خود ادامه می دهند. اینجاست که اولین مشکلات در کمین است. بر اساس این واقعیت که میانگین "ترویکا" به حدود 500 مگابایت حافظه نیاز دارد، می توانیم فرض کنیم که مقدار کل رم 1 گیگابایتی برای کار با برنامه کافی نخواهد بود.

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

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

به کجا منتهی می شود؟ بیایید ببینیم که منابع سیستم چگونه در عملیات سنگین استفاده می شود، به عنوان مثال، اجازه دهید یک انتقال مجدد گروهی را همزمان در دو پایگاه داده راه اندازی کنیم. ابتدا در سیستمی با 2 گیگابایت رم:

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

حالا بیایید حافظه را به 1 گیگابایت کاهش دهیم:

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

در همان زمان، حتی کار ذهنی با دو پایگاه داده باز روی یک سیستم با 1 گیگابایت حافظه بسیار ناراحت کننده بود؛ دایرکتوری ها و مجلات با تاخیر قابل توجه و دسترسی فعال به دیسک باز شدند. به عنوان مثال، باز کردن مجله فروش کالا و خدمات حدود 20 ثانیه طول کشید و در تمام این مدت با فعالیت بالای دیسک (با خط قرمز برجسته شده) همراه بود.

برای ارزیابی عینی تأثیر RAM بر عملکرد پیکربندی‌ها بر اساس یک برنامه کاربردی مدیریت شده، ما سه اندازه‌گیری را انجام دادیم: سرعت بارگذاری پایگاه داده اول، سرعت بارگذاری پایگاه داده دوم و اجرای مجدد گروه در یکی از پایگاه‌های داده. . هر دو پایگاه داده کاملاً یکسان هستند و با کپی کردن پایگاه داده بهینه شده ایجاد شده اند. نتیجه در واحدهای نسبی بیان می شود.

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

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

CPU

بدون اغراق، پردازنده مرکزی را می توان قلب رایانه نامید، زیرا این است که در نهایت تمام محاسبات را پردازش می کند. برای ارزیابی نقش آن، مجموعه دیگری از تست‌ها را مانند رم انجام دادیم که تعداد هسته‌های موجود برای ماشین مجازی را از دو به یک کاهش دادیم و آزمایش دو بار با حافظه‌های 1 و 2 گیگابایتی انجام شد.

نتیجه کاملاً جالب و غیرمنتظره بود: یک پردازنده قدرتمندتر به طور کاملاً مؤثری در زمان کمبود منابع بار را به عهده گرفت، بقیه زمان بدون اینکه مزیت ملموسی را به همراه داشته باشد. 1C Enterprise (در حالت فایل) را به سختی می توان برنامه ای نامید که به طور فعال از منابع پردازنده استفاده می کند؛ این نسبتاً بی نیاز است. و در شرایط دشوار، پردازشگر نه با محاسبه داده های خود برنامه، بلکه با سرویس هزینه های سربار: عملیات ورودی / خروجی اضافی و غیره تحت فشار قرار می گیرد.

نتیجه گیری

بنابراین، چرا 1C کند است؟ اول از همه، این کمبود RAM است؛ بار اصلی در این مورد بر روی هارد دیسک و پردازنده است. و اگر همانطور که معمولاً در پیکربندی های اداری اتفاق می افتد با عملکرد نمی درخشند، پس وضعیتی را که در ابتدای مقاله توضیح داده شد دریافت می کنیم - "دو" خوب کار می کردند، اما "سه" به طرز غیر خدایی کند است.

در وهله دوم، عملکرد شبکه قرار دارد؛ یک کانال 100 مگابیت بر ثانیه آهسته می تواند به یک گلوگاه واقعی تبدیل شود، اما در عین حال، حالت تین کلاینت قادر است سطح نسبتاً راحت عملکرد را حتی در کانال های کند حفظ کند.

سپس باید به درایو دیسک توجه کنید؛ خرید یک SSD بعید است سرمایه گذاری خوبی باشد، اما جایگزینی درایو با درایو مدرن تر ایده خوبی خواهد بود. تفاوت بین نسل ها دیسکهای سخترا می توان با استفاده از مواد زیر ارزیابی کرد: .

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

ما امیدواریم که این مطالب به شما کمک کند تا به سرعت سؤال "چرا 1C کند است" را درک کنید و آن را به طور موثر و بدون هزینه اضافی حل کنید.

  • برچسب ها:

لطفا جاوا اسکریپت را برای مشاهده فعال کنید

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

متأسفانه، مانند همه برنامه‌های رایانه‌ای، 1C: Accounting نیز دچار خرابی‌ها و فریزهای مختلفی می‌شود. یکی از رایج ترین مشکلات عملکرد کند سیستم است.

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

از بین بردن علل رایج عملکرد کند 1C

1. شایع ترین دلیل کندی عملکرد برنامه، دسترسی طولانی مدت به فایل پایه 1C است که به دلیل وجود خطا در هارد دیسک یا به دلیل کیفیت پایین اتصال به اینترنت، در صورت استفاده امکان پذیر است. فناوری های ابری. همچنین ممکن است در تنظیمات سیستم آنتی ویروس مشکلاتی وجود داشته باشد.

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

2. شاید کندی برنامه به دلیل حجم بالای فایل دیتابیس باشد.

برای حل این مسئله 1C را در حالت "Configurator" باز کنید، "Administration" را در منوی سیستم و سپس "Testing and correction" را انتخاب کنید. در پنجره، مورد "فشرده سازی جداول پایگاه داده اطلاعات" باید انتخاب شود، مورد "تست و تصحیح" زیر فعال است. روی "Run" کلیک کنید و منتظر بمانید تا فرآیند تکمیل شود.

3. بعد دلیل احتمالی- نرم افزار قدیمی یا نسخه قدیمی خود برنامه.

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

برای نصب آخرین نسخه سیستم 1C، باید برنامه را در حالت "Configuration" وارد کنید، سپس از منو به "Service" -> "Service" -> "Configuration Update" بروید، سپس تنظیمات پیش فرض را انتخاب کنید و روی دکمه "به روز رسانی" کلیک کنید.

عکس آلنا تولیاکوا، خبرگزاری "Clerk.Ru"

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

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

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

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

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

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

کامپیوتر تست شده، خوکچه هندی اصلی: HP DL180G6، مجهز به 2*Xeon 5650، 32 Gb، 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 تا ظاهر شدن پنجره پایگاه داده باید کمتر از یک دقیقه طول بکشد. (سلرون = کند).

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

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

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

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

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

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

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

رایج ترین خطاها در این مرحله

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

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

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

  • کنترل پنل - منبع تغذیه - کارایی بالا. منهای - اگر کامپیوتر برای مدت طولانی سرویس نشده باشد، صدای فن بلندتر می شود، بیشتر گرم می شود و انرژی بیشتری مصرف می کند. این هزینه عملکرد است.
چگونه بررسی کنیم که حالت فعال است. مدیر وظیفه - عملکرد - مانیتور منابع - 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 روشن باشد. و ما چیزی شبیه به این دریافت می کنیم:

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

اما در نهایت معلوم می شود که با توجه به تست های عملکرد 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 و RAS به CAS Delay، که تغییر فرکانس را خنثی می کند. تفاوت زمانی خواهد بود که ماژول‌های حافظه از نظر فیزیکی از کندتر به سریع‌تر تغییر می‌کنند، اما حتی در آنجا اعداد چندان قابل توجه نیستند.

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

و بیشتر. با تنظیمات پیش فرض ویندوز، کلاینت بهترین کار را با آن دارد سرور ویندوز(یا حتی ویندوز کار می کندایستگاه) و پروتکل SMB/CIFS، کلاینت لینوکس (دبیان، اوبونتو به بقیه نگاه نکرد) با لینوکس و NFS بهتر کار می کند (با SMB نیز کار می کند، اما طوطی ها در NFS بالاتر هستند). این واقعیت که در هنگام کپی خطی یک سرور لینوکس ویندوز در NFS سریعتر در یک جریان کپی می شود، معنایی ندارد. تنظیم دبیان برای 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 گیگابیت مسی Intel 350 و 1 گیگابیت نوری Intel 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 i3 می تواند به راحتی 40+ طوطی تولید کند که بسیار خوب است و اینها فقط طوطی نیستند، در کار واقعی نیز تفاوت قابل توجه است. ولی! محدودیت هنگام کار با چند کاربر (بیش از 10) دیگر شبکه نخواهد بود، در اینجا 1 گیگابیت هنوز کافی است، اما در طول کار چند کاربره مسدود می شود (Gilev).
  • پلتفرم 1C 8.3 از نظر پیکربندی مناسب شبکه چندین برابر خواستارتر است. تنظیمات اولیه - به Gilev مراجعه کنید، اما به خاطر داشته باشید که همه چیز می تواند تحت تأثیر قرار گیرد. من شتابی را در حذف (و نه فقط خاموش کردن) آنتی ویروس، از حذف پروتکل هایی مانند FCoE، از تغییر درایورها به نسخه قدیمی تر، اما دارای گواهی مایکروسافت (مخصوصاً برای کارت های ارزان قیمت مانند ASUS و DLC)، از حذف کارت شبکه دوم مشاهده کردم. از سرور . گزینه های زیادی وجود دارد، شبکه خود را با دقت راه اندازی کنید. ممکن است شرایطی وجود داشته باشد که پلت فرم 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 به طور کلی می تواند فرونشست شدیدی را ایجاد کند. بنابراین، اگر پول دارید، بهتر است کارت های شبکه اینتل را همه جا نگه دارید؛ اگر پول ندارید، اینتل را فقط روی سرور (CO خود) نصب کنید. و چندین برابر دستورالعمل های بیشتری برای تنظیم کارت های شبکه اینتل وجود دارد.
  • تنظیمات آنتی ویروس پیش فرض (به عنوان مثال از drweb نسخه 10 استفاده می شود) حدود 8-10٪ از طوطی ها را اشغال می کند. اگر آن را همانطور که باید پیکربندی کنید (اجازه دهید فرآیند 1cv8 همه چیز را انجام دهد، اگرچه ایمن نیست)، سرعت آن مانند بدون آنتی ویروس است.
  • مربیان لینوکس را نخوانید. سرور با سامبا عالی و رایگان است، اما اگر Win XP یا Win7 (یا حتی بهتر - سیستم عامل سرور) را روی سرور نصب کنید، نسخه فایل 1c سریعتر کار می کند. بله، سامبا و پشته پروتکل و تنظیمات شبکه و بسیاری موارد دیگر را می توان به خوبی در دبیان/ابونتو تنظیم کرد، اما این به متخصصان توصیه می شود. این که لینوکس را با تنظیمات پیش فرض نصب کنید و بعد بگویید کند است فایده ای ندارد.
  • این ایده بسیار خوبی است که عملکرد دیسک های متصل شده از طریق استفاده از شبکه را با استفاده از fio بررسی کنید. حداقل مشخص خواهد شد که آیا این مشکلات مربوط به پلتفرم 1C است یا با شبکه/دیسک.
  • برای نسخه تک کاربره، نمی‌توانم به آزمایش‌هایی (یا موقعیتی) فکر کنم که تفاوت بین 1 گیگابیت و 10 گیگابیت قابل مشاهده باشد. تنها چیزی که 10 گیگابیت برای نسخه فایل نتایج بهتری داشت، اتصال دیسک ها از طریق iSCSI است، اما این موضوع برای یک مقاله جداگانه است. با این حال، من فکر می کنم که برای نسخه فایل کارت های 1 گیگابیت کافی است.
  • من نمی دانم چرا با یک شبکه 100 مگابیت، 8.3 به طور قابل توجهی سریعتر از 8.2 کار می کند، اما این یک واقعیت بود. تمام تجهیزات دیگر، تمام تنظیمات دیگر کاملاً یکسان هستند، فقط در یک مورد 8.2 تست شده است و در دیگری - 8.3.
  • بدون تنظیم NFS win-win یا win-lin 6 طوطی می دهد، من آنها را در جدول قرار ندادم. بعد از تنظیم 25 گرفتم، اما ناپایدار بود (تفاوت در اندازه گیری ها بیش از 2 واحد بود). من هنوز نمی توانم توصیه هایی در مورد استفاده از ویندوز و پروتکل NFS ارائه کنم.
پس از تمام تنظیمات و بررسی ها، آزمایش را دوباره از رایانه مشتری اجرا می کنیم و از نتیجه بهبود یافته خوشحال می شویم (اگر کار کند). اگر نتیجه بهبود یافته باشد، بیش از 30 طوطی وجود دارد (و به خصوص بیش از 40)، کمتر از 10 کاربر همزمان کار می کنند، و پایگاه داده کار هنوز کند است - تقریباً مطمئناً مشکلی با برنامه نویس (یا شما دارید) در حال حاضر به اوج قابلیت های نسخه فایل رسیده است).

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

  • پایگاه داده آزمایشی Gilev را به سرور در همان پوشه پایگاه داده اصلی اضافه می کنیم. ما از همان سرور متصل می شویم و تست را اجرا می کنیم. ما نتیجه را به یاد می آوریم.
  • دقیقاً مانند نسخه فایل، پردازنده را پیکربندی می کنیم. در مورد سرور ترمینال، پردازنده به طور کلی نقش اصلی را ایفا می کند (فرض می شود که هیچ صریحی وجود ندارد. نقاط ضعفمانند کمبود حافظه یا مقدار زیادی نرم افزار غیر ضروری).
  • پیکربندی کارت های شبکه در مورد سرور ترمینال عملاً هیچ تأثیری بر عملکرد 1c ندارد. برای اطمینان از راحتی "ویژه"، اگر سرور شما بیش از 50 طوطی تولید می کند، می توانید با نسخه های جدید پروتکل RDP بازی کنید، فقط برای راحتی کاربران، پاسخ سریعتر و پیمایش.
  • هنگامی که تعداد زیادی از کاربران به طور فعال کار می کنند (و در اینجا می توانید از قبل سعی کنید 30 نفر را به یک پایگاه داده متصل کنید، اگر سعی کنید)، نصب درایو SSD بسیار توصیه می شود. بنا به دلایلی، اعتقاد بر این است که دیسک به ویژه بر عملکرد 1C تأثیر نمی گذارد، اما تمام آزمایشات با حافظه پنهان کنترل کننده فعال برای نوشتن انجام می شود، که نادرست است. پایه تست کوچک است، به خوبی در حافظه نهان جا می شود، بنابراین اعداد بالاست. در پایگاه داده های واقعی (بزرگ) همه چیز کاملاً متفاوت خواهد بود، بنابراین کش برای آزمایش غیرفعال است.
به عنوان مثال، من عملکرد تست Gilev را با گزینه های مختلف دیسک بررسی کردم. من دیسک ها را از آنچه در دست بود نصب کردم، فقط برای نشان دادن تمایل. تفاوت بین 8.3.6.2076 و 8.3.7.2008 کم است (در رمدیسک توربو بوست نسخه 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 و cas یکسان هستند. آزمایش با آن بر روی مقدار کمی داده بی فایده است و نشان دهنده هیچ نوع نیست.
  • برای پلتفرم 8.2، تفاوت عملکرد بین گزینه های SATA و SSD بیش از دو برابر است. این اشتباه تایپی نیست. اگر در حین تست درایوهای SATA به نمایشگر عملکرد نگاه کنید. سپس می توانید به وضوح "زمان کار دیسک فعال (در درصد)" 80-95 را ببینید. بله، اگر حافظه پنهان خود دیسک ها را برای ضبط فعال کنید، سرعت به 35 افزایش می یابد، اگر حافظه پنهان کنترلر حمله را فعال کنید - تا 49 (صرف نظر از اینکه در حال حاضر کدام دیسک ها در حال آزمایش هستند). اما این‌ها طوطی‌های کش مصنوعی هستند؛ در کار واقعی، با پایگاه‌های داده بزرگ، هرگز 100% نسبت ضربه حافظه پنهان وجود نخواهد داشت.
  • سرعت حتی SSD های ارزان قیمت (من روی Agility 3 تست کردم) برای اجرای نسخه فایل کاملاً کافی است. منبع ضبط موضوع دیگری است، شما باید در هر مورد خاص به آن نگاه کنید، واضح است که Intel 3700 آن را یک مرتبه بزرگتر خواهد داشت، اما قیمت مطابقت دارد. و بله، من این را هنگام تست می فهمم درایو SSDکش این دیسک را هم به میزان بیشتری تست می کنم، نتایج واقعی کمتر خواهد بود.
  • درست ترین راه حل (از دیدگاه من) این است که 2 دیسک SSD را در یک حمله آینه ای برای یک پایگاه داده فایل (یا چندین پایگاه داده فایل) اختصاص دهید و هیچ چیز دیگری را در آنجا قرار ندهید. بله، با یک آینه، SSD ها به همان اندازه فرسوده می شوند، و این یک منفی است، اما حداقل الکترونیک کنترلر به نحوی از خطا محافظت می شود.
  • مزایای اصلی درایوهای SSD برای نسخه فایل زمانی ظاهر می شود که پایگاه داده های زیادی وجود داشته باشد که هر کدام دارای چندین کاربر هستند. اگر 1-2 پایگاه داده وجود داشته باشد و حدود 10 کاربر وجود داشته باشد، دیسک های SAS کافی خواهند بود. (اما در هر صورت به بارگذاری این دیسک ها حداقل از طریق پرفمون نگاه کنید).
  • مزایای اصلی سرور ترمینال این است که می تواند کلاینت های بسیار ضعیفی داشته باشد و تنظیمات شبکه بسیار کمتر روی سرور ترمینال تأثیر می گذارد (باز هم K.O شما).
نتیجه گیری: اگر تست Gilev را روی یک سرور ترمینال اجرا کنید (از همان دیسکی که پایگاه های داده کار می کند) و در آن لحظاتی که پایگاه داده کار کند می شود و تست Gilev نتیجه خوبی را نشان می دهد (بالای 30)، آنگاه عملکرد کند پایگاه داده اصلی کار به احتمال زیاد یک برنامه نویس مقصر است.

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

گزینه کلاینت-سرور.

آزمایشات فقط در 8.2 انجام شد، زیرا در 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‌های محلی است، حتی اگر سیستم‌های ذخیره‌سازی اندازه‌های کش بزرگ‌تری دارند. 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 استفاده می شود، یافت نشد. : 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٪ را اثر قابل توجهی نمی دانم.
در اینجا کمترین توصیه برای یک مورد خاص وجود خواهد داشت، زیرا ... ترمزها در نسخه مشتری-سرور کار سخت ترین حالت هستند و همه چیز به صورت جداگانه پیکربندی شده است. ساده ترین راه این است که بگوییم برای عملکرد عادی باید فقط برای 1C و MS SQL یک سرور جداگانه بگیرید، پردازنده هایی با حداکثر فرکانس (بالاتر از 3 گیگاهرتز)، درایوهای SSD برای پایگاه داده و حافظه بیشتر (128+) در آنجا قرار دهید. ، از مجازی سازی استفاده نکنید. کمک کرد - عالی است، شما خوش شانس هستید (و تعداد زیادی از این افراد خوش شانس وجود خواهد داشت، بیش از نیمی از مشکلات را می توان با یک ارتقاء کافی حل کرد). اگر نه، هر گزینه دیگری نیاز به بررسی و تنظیمات جداگانه دارد.

ما اغلب در مورد اینکه چه چیزی باعث کاهش سرعت 1c می شود، سؤالاتی دریافت می کنیم، به خصوص هنگام تغییر به نسخه 1c 8.3، به لطف همکاران خود از Interface LLC، ما به طور مفصل به شما می گوییم:

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

یک مطالعه کوچک از منابع روسی زبان در 1C نشان داد که از این موضوع به شدت اجتناب می شود؛ در صورت بروز مشکل، معمولاً توصیه می شود به حالت سرویس گیرنده یا ترمینال بروید. همچنین تقریباً به طور کلی پذیرفته شده است که تنظیمات روی یک برنامه مدیریت شده بسیار کندتر از حد معمول کار می کنند. به عنوان یک قاعده، استدلال های ارائه شده "آهن" هستند: "حسابداری 2.0 فقط پرواز کرد، اما "ترویکا" به سختی حرکت کرد،" البته، در این کلمات حقیقتی وجود دارد، بنابراین بیایید سعی کنیم آن را بفهمیم.

مصرف منابع، نگاه اول

قبل از شروع این مطالعه، ما دو هدف را برای خود تعیین کردیم: اینکه بفهمیم آیا پیکربندی‌های مبتنی بر برنامه مدیریت شده واقعا کندتر از پیکربندی‌های معمولی هستند و کدام منابع خاص تأثیر اولیه بر عملکرد دارند.

برای آزمایش، ما دو ماشین مجازی را انتخاب کردیم که به ترتیب Windows Server 2012 R2 و Windows 8.1 را اجرا می‌کردند و به آنها 2 هسته از Core i5-4670 میزبان و 2 گیگابایت رم دادیم که تقریباً با یک ماشین اداری متوسط ​​مطابقت دارد. سرور روی یک آرایه RAID 0 از دو WD Se قرار گرفت و کلاینت روی آرایه مشابهی از دیسک های همه منظوره قرار گرفت.

به عنوان پایه های آزمایشی، ما چندین پیکربندی از Accounting 2.0، انتشار را انتخاب کردیم 2.0.64.12 ، که سپس به روز رسانی شد 3.0.38.52 ، تمام تنظیمات بر روی پلت فرم راه اندازی شد 8.3.5.1443 .

اولین چیزی که توجه را به خود جلب می کند افزایش اندازه پایگاه اطلاعاتی Troika است که به طور قابل توجهی رشد کرده است و همچنین اشتهای بسیار بیشتری برای RAM دارد:

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

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

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

متعاقباً پس از بارگذاری طبقه‌بندی‌کننده‌ها و دایرکتوری‌های جدید، ایجاد نمایه‌ها و غیره. اندازه پایه افزایش می یابد؛ به طور کلی، پایه های "سه" بزرگتر از پایه های "دو" هستند. با این حال، این مهم تر نیست، اگر نسخه دوم با 150-200 مگابایت رم محتوی بود، نسخه جدید به نیم گیگابایت نیاز دارد و این مقدار باید هنگام برنامه ریزی منابع لازم برای کار با برنامه در نظر گرفته شود.

خالص

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

وقتی یک پایگاه داده فایل 1C را از طریق شبکه راه اندازی می کنید چه اتفاقی می افتد؟ مشتری مقدار نسبتاً زیادی از اطلاعات را در پوشه های موقت بارگیری می کند، به خصوص اگر این اولین شروع "سرد" باشد. با سرعت 100 مگابیت بر ثانیه، انتظار می رود که ما به عرض کانال برسیم و دانلود می تواند زمان قابل توجهی را ببرد، در مورد ما حدود 40 ثانیه (هزینه تقسیم نمودار 4 ثانیه است).

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

همانطور که از نمودارها می بینید، Accounting 2.0 با هر سرعت شبکه دو برابر سریع بارگیری می شود، انتقال از 100 مگابیت بر ثانیه به 1 گیگابیت بر ثانیه به شما امکان می دهد زمان دانلود را چهار برابر افزایش دهید. در این حالت هیچ تفاوتی بین پایگاه داده های بهینه سازی شده و غیربهینه شده "troika" وجود ندارد.

ما همچنین تأثیر سرعت شبکه را بر عملکرد در حالت های سنگین، به عنوان مثال، در حین انتقال گروهی بررسی کردیم. نتیجه نیز در مقادیر نسبی بیان می شود:

در اینجا جالب تر است، پایه بهینه شده "سه" در یک شبکه 100 مگابیت بر ثانیه با همان سرعت "دو" کار می کند، و یک بهینه نشده دو برابر نتایج بدتر را نشان می دهد. در گیگابیت، نسبت‌ها ثابت می‌مانند، «سه» بهینه‌نشده نیز نصف «دو» کند است، و نسبت بهینه‌شده یک سوم عقب‌تر است. همچنین، انتقال به 1 گیگابیت بر ثانیه به شما امکان می دهد زمان اجرا را برای نسخه 2.0 سه برابر و برای نسخه 3.0 به نصف کاهش دهید.

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

در واقع، برای کارهای روزمره، توان عملیاتی شبکه یک گلوگاه نیست، یک "سه" بهینه نشده تنها 20٪ کندتر از یک "دو" است، و پس از بهینه سازی معلوم می شود که تقریباً سریعتر است - مزایای کار در حالت تین کلاینت. مشهود هستند. انتقال به 1 گیگابیت بر ثانیه هیچ مزیتی به پایه بهینه‌سازی‌شده نمی‌دهد و بهینه‌نشده و هر دو سریع‌تر شروع به کار می‌کنند و تفاوت کوچکی را بین خودشان نشان می‌دهند.

از آزمایش‌های انجام‌شده، مشخص می‌شود که شبکه یک گلوگاه برای پیکربندی‌های جدید نیست و برنامه مدیریت‌شده حتی سریع‌تر از حد معمول اجرا می‌شود. اگر کارهای سنگین و سرعت بارگذاری پایگاه داده برای شما حیاتی است، می‌توانید به 1 گیگابیت بر ثانیه تغییر دهید؛ در موارد دیگر، پیکربندی‌های جدید به شما امکان می‌دهند حتی در شبکه‌های کند 100 مگابیت بر ثانیه به طور مؤثر کار کنید.

پس چرا 1C کند است؟ ما بیشتر به آن نگاه خواهیم کرد.

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

در مقاله قبلی، با قرار دادن پایگاه های داده روی SSD به افزایش عملکرد 1C دست یافتیم. شاید عملکرد زیرسیستم دیسک سرور ناکافی باشد؟ ما عملکرد یک سرور دیسک را در طول اجرای گروهی در دو پایگاه داده به طور همزمان اندازه گیری کردیم و به نتیجه نسبتاً خوش بینانه ای رسیدیم.

علیرغم تعداد نسبتاً زیاد عملیات ورودی/خروجی در ثانیه (IOPS) - 913، طول صف از 1.84 تجاوز نکرد که نتیجه بسیار خوبی برای آرایه دو دیسک است. بر این اساس، می توانیم فرض کنیم که یک آینه ساخته شده از دیسک های معمولی برای عملکرد عادی 8-10 مشتری شبکه در حالت های سنگین کافی است.

بنابراین آیا SSD روی سرور مورد نیاز است؟ بهترین راه برای پاسخ به این سوال از طریق آزمایش خواهد بود، که ما با استفاده از روش مشابه انجام دادیم، اتصال شبکه در همه جا 1 گیگابیت بر ثانیه است، نتیجه نیز در مقادیر نسبی بیان می شود.

بیایید با سرعت بارگذاری پایگاه داده شروع کنیم.

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

بیایید به انجام مجدد ادامه دهیم:

قبلاً اشاره کردیم که عملکرد دیسک حتی برای کار در حالت های سنگین کاملاً کافی است ، بنابراین سرعت SSD نیز تحت تأثیر قرار نمی گیرد ، به جز پایه بهینه نشده ، که در SSD با بهینه سازی شده مطابقت دارد. در واقع، این یک بار دیگر تأیید می کند که عملیات بهینه سازی اطلاعات را در پایگاه داده سازماندهی می کند، تعداد عملیات I/O تصادفی را کاهش می دهد و سرعت دسترسی به آن را افزایش می دهد.

در کارهای روزمره تصویر مشابه است:

فقط پایگاه داده غیربهینه از SSD سود می برد. مطمئناً می توانید یک SSD خریداری کنید، اما بهتر است به نگهداری به موقع پایگاه داده فکر کنید. همچنین، یکپارچه سازی بخش با پایگاه های اطلاعاتی در سرور را فراموش نکنید.

زیرسیستم دیسک مشتری و SSD

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

اما در عین حال، باید توجه داشته باشید که برای یک ایستگاه کاری که در آن کار فعال با یک یا دو پایگاه اطلاعاتی انجام می شود، منابع عملکرد یک HDD معمولی تولید انبوه کاملاً کافی است. خرید SSD می‌تواند برخی از فرآیندها را تسریع کند، اما شتاب شدیدی را در کارهای روزمره متوجه نخواهید شد، زیرا برای مثال، بارگیری با پهنای باند شبکه محدود می‌شود.

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

رم

علیرغم این واقعیت که RAM اکنون بسیار ارزان است، بسیاری از ایستگاه های کاری با مقدار حافظه ای که هنگام خرید نصب شده است به کار خود ادامه می دهند. اینجاست که اولین مشکلات در کمین است. بر اساس این واقعیت که میانگین "ترویکا" به حدود 500 مگابایت حافظه نیاز دارد، می توانیم فرض کنیم که مقدار کل رم 1 گیگابایتی برای کار با برنامه کافی نخواهد بود.

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

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

به کجا منتهی می شود؟ بیایید ببینیم که منابع سیستم چگونه در عملیات سنگین استفاده می شود، به عنوان مثال، اجازه دهید یک انتقال مجدد گروهی را همزمان در دو پایگاه داده راه اندازی کنیم. ابتدا در سیستمی با 2 گیگابایت رم:

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

حالا بیایید حافظه را به 1 گیگابایت کاهش دهیم:

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

در همان زمان، حتی کار ذهنی با دو پایگاه داده باز روی یک سیستم با 1 گیگابایت حافظه بسیار ناراحت کننده بود؛ دایرکتوری ها و مجلات با تاخیر قابل توجه و دسترسی فعال به دیسک باز شدند. به عنوان مثال، باز کردن مجله فروش کالا و خدمات حدود 20 ثانیه طول کشید و در تمام این مدت با فعالیت بالای دیسک (با خط قرمز برجسته شده) همراه بود.

برای ارزیابی عینی تأثیر RAM بر عملکرد پیکربندی‌ها بر اساس یک برنامه کاربردی مدیریت شده، ما سه اندازه‌گیری را انجام دادیم: سرعت بارگذاری پایگاه داده اول، سرعت بارگذاری پایگاه داده دوم و اجرای مجدد گروه در یکی از پایگاه‌های داده. . هر دو پایگاه داده کاملاً یکسان هستند و با کپی کردن پایگاه داده بهینه شده ایجاد شده اند. نتیجه در واحدهای نسبی بیان می شود.

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

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

CPU

بدون اغراق، پردازنده مرکزی را می توان قلب رایانه نامید، زیرا این است که در نهایت تمام محاسبات را پردازش می کند. برای ارزیابی نقش آن، مجموعه دیگری از تست‌ها را مانند رم انجام دادیم که تعداد هسته‌های موجود برای ماشین مجازی را از دو به یک کاهش دادیم و آزمایش دو بار با حافظه‌های 1 و 2 گیگابایتی انجام شد.

نتیجه کاملاً جالب و غیرمنتظره بود: یک پردازنده قدرتمندتر به طور کاملاً مؤثری در زمان کمبود منابع بار را به عهده گرفت، بقیه زمان بدون اینکه مزیت ملموسی را به همراه داشته باشد. 1C Enterprise را به سختی می توان برنامه ای نامید که به طور فعال از منابع پردازنده استفاده می کند؛ این نسبتاً بی نیاز است. و در شرایط دشوار، پردازشگر نه با محاسبه داده های خود برنامه، بلکه با سرویس هزینه های سربار: عملیات ورودی / خروجی اضافی و غیره تحت فشار قرار می گیرد.

نتیجه گیری

بنابراین، چرا 1C کند است؟ اول از همه، این کمبود RAM است؛ بار اصلی در این مورد بر روی هارد دیسک و پردازنده است. و اگر همانطور که معمولاً در پیکربندی های اداری اتفاق می افتد با عملکرد نمی درخشند، پس وضعیتی را که در ابتدای مقاله توضیح داده شد دریافت می کنیم - "دو" خوب کار می کردند، اما "سه" به طرز غیر خدایی کند است.

در وهله دوم، عملکرد شبکه قرار دارد؛ یک کانال 100 مگابیت بر ثانیه آهسته می تواند به یک گلوگاه واقعی تبدیل شود، اما در عین حال، حالت تین کلاینت قادر است سطح نسبتاً راحت عملکرد را حتی در کانال های کند حفظ کند.

سپس باید به درایو دیسک توجه کنید؛ خرید یک SSD بعید است سرمایه گذاری خوبی باشد، اما جایگزینی درایو با درایو مدرن تر ایده خوبی خواهد بود. تفاوت بین نسل هارد دیسک ها را می توان از مواد زیر ارزیابی کرد: بررسی دو درایو ارزان قیمت وسترن دیجیتال سری آبی 500 گیگابایتی و 1 ترابایتی.

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

ما امیدواریم که این مطالب به شما کمک کند تا به سرعت سؤال "چرا 1C کند است" را درک کنید و آن را به طور موثر و بدون هزینه اضافی حل کنید.

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

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

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

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

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

کامپیوتر تست شده، خوکچه هندی اصلی: HP DL180G6، مجهز به 2*Xeon 5650، 32 Gb، 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 در حال اجرا است، باید 100-200 مگابایت رایگان روی آن وجود داشته باشد. بر این اساس، بدون ramdisk، برای عملکرد عادی باید 300-400 مگابایت حافظه آزاد وجود داشته باشد.

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

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

رایج ترین خطاها در این مرحله

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

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

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

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

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

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

چگونه بررسی کنیم که حالت فعال است. مدیر وظیفه - عملکرد - مانیتور منابع - 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 روشن باشد. و ما چیزی شبیه به این دریافت می کنیم:

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

عامل

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

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 و RAS به CAS Delay، که تغییر فرکانس را خنثی می کند. تفاوت زمانی خواهد بود که ماژول‌های حافظه از نظر فیزیکی از کندتر به سریع‌تر تغییر می‌کنند، اما حتی در آنجا اعداد چندان قابل توجه نیستند.

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

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

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

در خط فرمان (یا در خط مشی ها، یا هر چیزی که برای شما مناسب است) - از DriveLetter: \\server\share استفاده کنید. مثال: استفاده خالص m: \\server\bases. من به طور خاص بر آدرس 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 گیگابیت مسی 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 i3 می تواند به راحتی 40+ طوطی تولید کند که بسیار خوب است و اینها فقط طوطی نیستند، در کار واقعی نیز تفاوت قابل توجه است. ولی! محدودیت هنگام کار با چند کاربر (بیش از 10) دیگر شبکه نخواهد بود، در اینجا 1 گیگابیت هنوز کافی است، اما در طول کار چند کاربره مسدود می شود (Gilev).

پلتفرم 1C 8.3 از نظر پیکربندی شبکه مناسب چندین برابر تقاضای بیشتری دارد. تنظیمات اولیه - به Gilev مراجعه کنید، اما به خاطر داشته باشید که همه چیز می تواند تحت تأثیر قرار گیرد. من شتابی را در حذف (و نه فقط خاموش کردن) آنتی ویروس، از حذف پروتکل هایی مانند FCoE، از تغییر درایورها به نسخه قدیمی تر، اما دارای گواهی مایکروسافت (مخصوصاً برای کارت های ارزان قیمت مانند ASUS و DLC)، از حذف کارت شبکه دوم مشاهده کردم. از سرور . گزینه های زیادی وجود دارد، شبکه خود را با دقت راه اندازی کنید. ممکن است شرایطی وجود داشته باشد که پلت فرم 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 به طور کلی می تواند فرونشست شدیدی را ایجاد کند. بنابراین، اگر پول دارید، بهتر است کارت های شبکه اینتل را همه جا نگه دارید؛ اگر پول ندارید، اینتل را فقط روی سرور (CO خود) نصب کنید. و چندین برابر دستورالعمل های بیشتری برای تنظیم کارت های شبکه اینتل وجود دارد.

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

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

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

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

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

بدون تنظیم NFS win-win یا win-lin 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 کم است (در رمدیسک توربو بوست نسخه 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 و cas یکسان هستند. آزمایش با آن بر روی مقدار کمی داده بی فایده است و نشان دهنده هیچ نوع نیست.

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

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

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

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

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

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

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

گزینه کلاینت-سرور.

آزمایشات فقط در 8.2 انجام شد، زیرا در 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‌های محلی است، حتی اگر سیستم‌های ذخیره‌سازی اندازه‌های کش بزرگ‌تری دارند. 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: Shared Memory Provider: کتابخانه حافظه مشترک که برای برقراری ارتباط با SQL Server 2000 استفاده می شود، یافت نشد. : 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٪ را اثر قابل توجهی نمی دانم.

اگر خطایی پیدا کردید، لطفاً یک متن را انتخاب کنید و Ctrl+Enter را فشار دهید.