Məzmuna keç
Tez Base

1C performansının optimallaşdırılması

1C-in yavaşlamasının əsl səbəbini tapır və onun işini necə sürətləndirməyi müəyyən edirik - təxminlə yox, texnoloji jurnal və sorğu planları ilə. Sənədlərin keçirilməsini, hesabatları və mübadilələri dəfələrlə sürətləndiririk. Qazaxıstan və MDB üzrə uzaqdan.

WhatsApp-da yazın Pulsuz ekspress-audit əldə edin

saatlar → dəqiqələr "ağır" əməliyyatlar üzrə tipik nəticə

150 000 ₸-dən qiymət · layihə üçün vergilərsiz pulsuz auditdən sonra sabitlənir

Scan нашли, где тормозит

Tanış problemlərdir?

Sənədlər dəqiqələrlə keçirilir

Satış sənədinin keçirilməsi və ya ayın bağlanması o qədər uzanır ki, istifadəçilər çay içməyə macal tapır. Bundan sonra daha da pis olacaq.

İstifadəçilər kilidlənmələrə "düşür"

"Kilidlənmə konflikti", "gözləmə vaxtı aşılıb" - bazada adam çox olanda, xüsusən pik günlərdə iş dayanır.

Hesabatlar əbədiyyət qədər qurulur

İdarəetmə hesabatları və böyük dövrlər üzrə dövriyyə-qalıq cədvəli onlarla dəqiqə çəkir və ya taymautla çökür.

Avadanlığı gücləndirdiniz - kömək etmədi

Daha güclü server aldınız, amma sürət artmadı. Deməli, məsələ avadanlıqda deyil - sorğularda, indekslərdə və ya arxitekturadadır.

1C niyə yavaşlayır və niyə yeni server adətən kömək etmir

Birincisi - yeni server almamaq. On haldan səkkizində 1C-in yavaş işləməsinin səbəbi avadanlıqda deyil: milyonlarla artıq sətir oxuyan sorğularda, çatışmayan indekslərdə, VBİS-in köhnəlmiş statistikasında və ya istifadəçilər arasındakı kilidlənmələrdədir. Bütün bunlar alətlərlə diaqnostika olunur: 1C-in texnoloji jurnalı və SQL sorğu planları günahkarı kod sətrinə qədər dəqiq göstərir.

Səbəbi necə axtarırıq

  • 1C-in texnoloji jurnalı - uzun sorğular və kilidlənmə gözləmələri üzrə hadisələrin toplanmasını sazlayırıq; hansı əməliyyatların və kimin kodunun vaxtı yediyi barədə dəqiq mənzərə alırıq.
  • SQL sorğu planları - VBİS-in ağır sorğuları əslində necə icra etdiyinə baxırıq: indekslə axtarış əvəzinə skanlamalar, artıq birləşmələr, qeyri-optimal daxili sorğular.
  • VBİS gözləmə statistikası - serverin nəyə dirəndiyini müəyyən edirik: disklər, prosessor, kilidlənmələr, yaddaş.
  • Əsas əməliyyatlar üzrə APDEX ölçmələri - sürəti “orta göstərici” ilə yox, istifadəçinin gözü ilə qeydə alırıq.

Tipik tapıntılar

İllər ərzində “günahkarlar” siyahısı təkrarlanır: dövr içində sorğular, seçimsiz virtual cədvəllərlə birləşmələr, keçirilmə tranzaksiyası içində qalıqların alınması, indekslənməmiş sahələr üzrə seçimlər, kütləvi yükləmələrdən sonra köhnəlmiş statistika, öz yazılmış kodda artıq kilidlənmələr. Demək olar ki, hamısı avadanlığı dəyişmədən və yeni konfiqurasiyaya keçmədən müalicə olunur.

Real layihələrdən təzə nəticələr

  • Kassir qarşısındakı çeklərin siyahısı: 25 saniyə → dərhal (505 410 → 4 məntiqi oxuma) - kassa əməliyyatları üçün indekslər üstəgəl giriş məhdudlaşdırma mexanizminin araşdırılması.
  • Altı ağır idarəetmə hesabatı: vaxt üzrə −22…−42 % - tam eyni məlumatlarla: “əvvəl” və “sonra” nəticəsi “gözəyarı” yox, SHA-256 nəzarət cəmi ilə tutuşdurulub.
  • “Kassaların axşam donmaları”: kilidlənmə sıfır çıxdı - 48 nüvəli serverdə SQL-in aqressiv paralelizmi yavaşladırdı (zavod ayarları: cost threshold = 5, MAXDOP = 0). İki ayar - və pik lotereya olmaqdan çıxdı. Niyə əvvəlcə ölçüb, yalnız sonra avadanlıq alındığının klassik nümunəsi.
  • 2 dəqiqə “keçirilməyən” sənəd → 17 saniyə - hər sətir üzrə dövr içindəki qalıqlar sorğusu bir set-based sorğuya yenidən yazıldı.
  • Araşdırmadan sonra hesabatların bir hissəsi dəyişdirilmədən saxlanıldı - dar yer sorğuda deyildi və yenidən yazmaq qazanc verməzdi. Sürətlənməyəcək şeyə büdcənizi xərcləməmək də nəticədir.

Ən iri layihənin ətraflı təhlili - “Bazanın kəsilməsi: 4,2 TB → 105 QB” keysində.

SQL serverində 1C-in sürətləndirilməsi

Ayrıca istiqamət - VBİS-in 1C üçün sazlanması: yaddaş və paralellik parametrləri, tempdb, statistikanın avtomatik yenilənməsi, indekslərə xidmət. “Defolt” quraşdırmalar abstrakt yükə hesablanıb, 1C profilinə yox. Həm MS SQL, həm də PostgreSQL sazlayırıq - birindən digərinə miqrasiyalar da daxil olmaqla.

Nə əldə edirsiniz

  • Rəqəmlərlə diaqnostika: hansı əməliyyat nə qədər çəkir və niyə
  • Optimallaşdırılmış sorğular və kod - "əvvəl/sonra" ölçmələri ilə
  • VBİS səviyyəsində sazlanmış indekslər və statistika
  • Kilidlənmə gözləmələrinin araşdırılması və aradan qaldırılması
  • Sazlanmış texnoloji jurnal və nəzarət metodikası
  • Arxitektura və avadanlıq üzrə tövsiyələrlə hesabat - yalnız həqiqətən lazım olan yerdə

Necə işləyirik

  1. 01

    Ölçmə və simptomların qeydə alınması

    Yavaş əməliyyatların siyahısını toplayır və cari göstəriciləri ölçürük - effekti onlardan hesablayacağıq.

  2. 02

    Diaqnostika

    Texnoloji jurnal, SQL sorğu planları, gözləmə statistikası. Konkret kod sətirlərini və günahkar sorğuları tapırıq.

  3. 03

    Optimallaşdırma

    Sorğuları və kodu düzəldirik, indeksləri sazlayırıq, kilidlənmələri aradan qaldırırıq. Hər dəyişikliyi ölçmə ilə yoxlayırıq.

  4. 04

    Nəticəyə nəzarət

    Siyahıdakı hər əməliyyat üzrə "əvvəl/sonra" göstəririk. Deqradasiya öncədən görünsün deyə monitorinq qururuq.

1C sisteminiz üçün pulsuz ekspress-audit

1-2 gün ərzində bazanıza baxıb, məhsuldarlığın harada itdiyini tapacağıq və nə etmək lazım olduğunu deyəcəyik. Öhdəliksiz.

Pulsuz ekspress-audit əldə edin

Tez-tez verilən suallar

1C yavaşlayır - bəlkə sadəcə daha güclü server alaq?

Çox vaxt bu kömək etmir: səbəb adətən avadanlıqda yox, sorğularda, indekslərdə və ya kilidlənmələrdədir. Əvvəlcə diaqnostika - o, dar yerin harada olduğunu dəqiq göstərəcək. Məsələ həqiqətən avadanlıqdadırsa, bunu açıq deyəcəyik və hansı yenilənmənin effekt verəcəyini hesablayacağıq.

Optimallaşdırma müddətində işi dayandırmaq lazımdırmı?

Xeyr. Diaqnostika işlək sistemdə aparılır və istifadəçilərə mane olmur. Kod və indeks dəyişiklikləri nüsxə üzərində hazırlanır və razılaşdırılmış pəncərələrdə - adətən gecə - produktivə köçürülür.

Bizdə qeyri-tipik (təkmilləşdirilmiş) konfiqurasiya var. Bu, problemdirmi?

Əksinə, bu tipik haldır: performans problemlərinin çoxu məhz təkmilləşdirmələrdə yaşayır. Texnoloji jurnal və sorğu planları günahkarı kod sətrinə qədər dəqiq göstərir - konfiqurasiya standart olsun, ya öz yazılmış, fərq etmir.

Hansı effekti gözləmək olar?

"Ağır" əməliyyatlar üzrə tipik nəticə - dəfələrlə sürətlənmə: hesabatlar onlarla dəqiqədən dəqiqələrə, sənəd keçirilməsi dəqiqələrdən saniyələrə enir. Başlamazdan əvvəl ölçmələri qeydə alırıq, sonda hər əməliyyat üzrə "əvvəl/sonra" göstəririk. Təsdiqlənmiş nəticəyə görə ödəyirsiniz.

1C yenilənmədən sonra yavaşlamağa başladı. Kömək edərsinizmi?

Bəli, bu, tez-tez rast gəlinən ssenaridir: yenilənmədən sonra sorğular dəyişir və VBİS statistikası pozulur. Nəyin dəyişdiyini tapır və sürəti geri qaytarırıq - adətən bu, bir neçə gün çəkir.

1C nə üçün sənədləri uzun müddət keçirir?

Adətən günahkar məlumatların həcmi deyil, keçirilmə kodunun necə yazılmasıdır: sənəd sətirləri üzrə dövr içində qalıq sorğuları, tranzaksiya içində qalıqların alınması, artıq kilidlənmələr, VBİS-in köhnəlmiş statistikası. Bizim təcrübəmizdə 2 dəqiqə "keçirilməyən" sənəd məntiqi set-based sorğuya yenidən yazıldıqdan sonra 17 saniyəyə keçirilməyə başladı. Texnoloji jurnal üzrə diaqnostika günahkarı kod sətrinə qədər dəqiq göstərir.

1C hesabatları uzun müddət formalaşdırır - nə etməli?

Əvvəlcə hesabat sorğusunu ölçüb təhlil etmək lazımdır: tez-tez rast gəlinən səbəblər - registrlər üzrə artıq keçidlər, soraqçalara sətirbəsətir müraciət, filtrlərin təkrarı, aktual olmayan statistika. Dar yerləri yenidən yazır və məlumatların eyniliyini SHA-256 nəzarət cəmi ilə sübut edirik - "əvvəl" və "sonra" baytbabayt üst-üstə düşür. Ağır hesabatların tipik sürətlənməsi - 22-42 %, ayrı-ayrı veb-yükləmələr - 3-8 dəfə.

1C donub qalırsa, nə etməli?

"Donub qalma" - çox vaxt kilidlənmələrdəki gözləmə və ya seansı tutub saxlayan ağır əməliyyatdır. Texnoloji jurnal və gözləmə statistikasının toplanmasını sazlayır, kimin və nəyi kilidlədiyini tapırıq. Bir layihədə "kassaların axşam donmaları" kilidlənmələr deyil (onlar sıfır idi), 48 nüvəli serverdə SQL-in aqressiv paralelizmi oldu - pikin "ilişib qalmasını" dayandırmaq üçün iki ayar kifayət etdi.

Tapşırığı müzakirə edək

Ən sürətlisi WhatsApp: tapşırıq barədə bir-iki sətir yazın, iş günü ərzində cavab verəcəyik.

[email protected]

Müraciəti forma ilə qoymaq daha rahatdır

Oxşar xidmətlər