Pemantauan + ujian beban = ramalan dan tiada kegagalan

Jabatan IT VTB beberapa kali terpaksa berhadapan dengan situasi kecemasan dalam operasi sistem, apabila beban padanya meningkat berkali-kali ganda. Oleh itu, terdapat keperluan untuk membangunkan dan menguji model yang akan meramalkan beban puncak pada sistem kritikal. Untuk melakukan ini, pakar IT bank menyediakan pemantauan, menganalisis data dan belajar mengautomasikan ramalan. Kami akan memberitahu anda dalam artikel pendek alat yang membantu meramalkan beban dan sama ada alat tersebut membantu mengoptimumkan kerja.

Pemantauan + ujian beban = ramalan dan tiada kegagalan

Masalah dengan perkhidmatan beban tinggi timbul dalam hampir semua industri, tetapi bagi sektor kewangan ia adalah kritikal. Pada jam X, semua unit tempur mesti bersedia, dan oleh itu adalah perlu untuk mengetahui terlebih dahulu apa yang boleh berlaku dan juga menentukan hari apabila beban akan melompat dan sistem mana yang akan menghadapinya. Kegagalan perlu ditangani dan dicegah, jadi keperluan untuk melaksanakan sistem analisis ramalan tidak dibincangkan. Ia adalah perlu untuk memodenkan sistem berdasarkan data pemantauan.

Analitis pada lutut anda

Projek gaji adalah salah satu yang paling sensitif sekiranya berlaku kegagalan. Ia adalah yang paling mudah difahami untuk ramalan, jadi kami memutuskan untuk memulakannya. Disebabkan sambungan yang tinggi, subsistem lain, termasuk perkhidmatan perbankan jauh (RBS), boleh mengalami masalah pada masa beban puncak. Sebagai contoh, pelanggan yang gembira dengan SMS mengenai penerimaan wang mula aktif menggunakannya. Beban boleh melonjak lebih daripada satu urutan magnitud. 

Model ramalan pertama dibuat secara manual. Kami mengambil muat naik untuk tahun lepas dan mengira pada hari mana puncak maksimum dijangka: contohnya, 1, 15 dan 25, serta pada hari terakhir bulan itu. Model ini memerlukan kos buruh yang ketara dan tidak memberikan ramalan yang tepat. Walau bagaimanapun, ia mengenal pasti kesesakan apabila perlu menambah perkakasan, dan memungkinkan untuk mengoptimumkan proses pemindahan wang dengan bersetuju dengan pelanggan utama: untuk tidak memberi gaji dalam satu teguk, urus niaga dari kawasan yang berbeza dijarakkan dari semasa ke semasa. Kini kami memprosesnya dalam bahagian yang infrastruktur IT bank boleh "mengunyah" tanpa kegagalan.

Setelah menerima keputusan positif yang pertama, kami beralih kepada mengautomasikan peramalan Sedozen lagi kawasan kritikal sedang menunggu giliran mereka.

Pendekatan bersepadu

VTB telah melaksanakan sistem pemantauan daripada MicroFocus. Dari situ kami mengambil pengumpulan data untuk ramalan, sistem storan dan sistem pelaporan. Malah, pemantauan telah pun disediakan, yang tinggal hanyalah menambah metrik, modul ramalan dan membuat laporan baharu. Keputusan ini disokong oleh kontraktor luar Technoserv, jadi kerja utama untuk melaksanakan projek itu jatuh pada pakarnya, tetapi kami membina model itu sendiri. Sistem ramalan dibuat berdasarkan Nabi, produk sumber terbuka yang dibangunkan oleh Facebook. Ia mudah digunakan dan mudah disepadukan dengan alat pemantauan bersepadu kami yang dipasang dan Vertica. Secara kasarnya, sistem menganalisis graf beban dan mengekstrapolasinya berdasarkan siri Fourier. Anda juga boleh menambah pekali tertentu mengikut hari, yang diambil daripada model kami. Metrik diambil tanpa campur tangan manusia, ramalan dikira semula secara automatik sekali seminggu dan laporan baharu dihantar kepada penerima. 

Pendekatan ini mengenal pasti kitaran utama, contohnya, tahunan, bulanan, suku tahunan dan mingguan. Pembayaran gaji dan pendahuluan, tempoh percutian, cuti dan jualan - semua ini menjejaskan bilangan panggilan ke sistem. Ternyata, sebagai contoh, beberapa kitaran bertindih antara satu sama lain, dan beban utama (75%) pada sistem berasal dari Daerah Persekutuan Tengah. Entiti undang-undang dan individu berkelakuan berbeza. Jika beban daripada "ahli fizik" diagihkan secara relatif pada hari-hari dalam seminggu (ini adalah banyak transaksi kecil), maka bagi syarikat 99,9% dibelanjakan untuk waktu kerja, dan urus niaga boleh menjadi pendek, atau boleh diproses dalam beberapa minit atau jam.

Pemantauan + ujian beban = ramalan dan tiada kegagalan

Berdasarkan data yang diperoleh, arah aliran jangka panjang ditentukan. Sistem baharu telah mendedahkan bahawa orang ramai berpindah ke perkhidmatan perbankan jauh. Semua orang tahu ini, tetapi kami tidak menjangkakan skala sedemikian dan pada mulanya tidak mempercayainya: bilangan panggilan ke pejabat bank berkurangan dengan sangat cepat, dan bilangan urus niaga jarak jauh meningkat dengan jumlah yang sama. Sehubungan itu, beban pada sistem juga semakin meningkat dan akan terus berkembang. Kami kini meramalkan beban sehingga Februari 2020. Hari biasa boleh diramalkan dengan ralat 3%, dan hari puncak dengan ralat 10%. Ini adalah keputusan yang baik.

Perangkap

Seperti biasa, ini bukan tanpa kesukaran. Mekanisme ekstrapolasi menggunakan siri Fourier tidak melepasi sifar dengan baik - kita tahu bahawa entiti undang-undang menjana sedikit transaksi pada hujung minggu, tetapi modul ramalan menghasilkan nilai yang jauh dari sifar. Ia mungkin untuk membetulkannya secara paksa, tetapi tongkat bukanlah kaedah kami. Di samping itu, kami terpaksa menyelesaikan masalah mendapatkan semula data daripada sistem sumber tanpa rasa sakit. Pengumpulan maklumat yang kerap memerlukan sumber pengkomputeran yang serius, jadi kami membina cache pantas menggunakan replikasi dan menerima data perniagaan daripada replika. Ketiadaan beban tambahan pada sistem induk dalam kes sedemikian adalah keperluan menyekat.

Cabaran baru

Tugas mudah untuk meramalkan puncak telah diselesaikan: tidak ada kegagalan berkaitan beban berlebihan dalam bank sejak Mei tahun ini, dan sistem ramalan baharu memainkan peranan penting dalam hal ini. Ya, ternyata tidak mencukupi, dan kini bank ingin memahami betapa berbahayanya puncak untuknya. Kami memerlukan ramalan menggunakan metrik daripada ujian beban, dan untuk kira-kira 30% sistem kritikal ini sudah berfungsi, selebihnya sedang dalam proses mendapatkan ramalan. Pada peringkat seterusnya, kami akan meramalkan beban pada sistem bukan dalam transaksi perniagaan, tetapi dari segi infrastruktur IT, iaitu kami akan turun satu lapisan. Di samping itu, kami perlu mengautomasikan sepenuhnya pengumpulan metrik dan pembinaan ramalan berdasarkannya, supaya tidak berurusan dengan muat turun. Tiada apa-apa yang menarik mengenainya - kami hanya melintasi pemantauan dan ujian beban sejajar dengan amalan terbaik global.

Sumber: www.habr.com

Tambah komen