Highload информационни блокове Bitrix

Highload информационни блокове Bitrix

Всеки знае, че те са там, но много малко хора ги използват. Какви са те за? Когато е необходимо да бъдат включени в проекта? Кои API трябва да се работи с тях? Нека да се справят!







Да започнем от самото начало. Кои са най-hayload блокове и кога да ги използвате.

Защо те трябва?

Самото име вече ни казва, че са необходими тези информационни блокове, за да издържат на тежък товар. С цел да се съхранява голямо количество данни, които бързо и лесно ще можете да работите. Така че това наистина е така.

Highload блокове в Битрикс - те са отделни юридически лица. С други думи, всеки отделен HL-информационен блок - това е отделна таблица в базата данни, които сте въвели колона и съхранените видове.

За разлика от обикновените информационни блока от Highload

Най-важната разлика - това е скоростта. Важно е да се разбере. Ако работите с проста система информационен блок прави много обаждания до базата данни, за да се направи проста, привидно проба, на HL блокове само един SELECT "а. В крайна сметка, работата е само една маса. Също така имайте предвид това, разработването на проекта.

GetList'a познат ни с един куп параметри в блокове hayload не, всичко е съвсем прозаична.

Кога трябва да използвате Highload блокове?

Веднага пример. Да кажем, че имате забавление портал, на който се опитвате да пишете всеки ден е различен, хладно \ полезен \ интересно съдържание. Хората, които посещават вашия портал би искал да бъде в състояние да запазите любимите си статии за тях, а след това да ги намерите бързо (да речем, в частен офис те имат секция с поддържането на този пост).







Би било глупаво да се създаде тази проста информация блок с определен набор от качества, където всяка нова позиция ще бъде спасен статия конкретен потребител. Това не е само рационален и непрактично.

Друго нещо, HL-блок. Когато тя е създадена, задавате персонализирано поле с 2 вида "номер" - USER_ID. Article_id - и всички! По-нататъшни сравнения в профила си, е много проста. Изважда всички article_id потребителя да USER_ID. формиране на масив и го избутва в метод $ arFilter GetNext прост информационен блок. Просто? Можеш да се обзаложиш!

Е, добре, аз мисля, че е време да се премине към практиката. Нека да видим как софтуерът може да работи с HL-блокове: как да се вземе проба, как да добавите запис, как да се актуализира на предмети и да ги премахнете.

Работа с API

Аз ще се придвижат от факта, че за да се създаде Highload блокове, които познавате. В крайна сметка, това не е голяма работа. Както се казва, "няколко клавиши, за да натиснете".

За да работите с API Highload блокове първо трябва да се свържете на съответния модул:

На следващо място, трябва да създадете копие на лице HL единица, с която работим:

Сега, за да добавите запис в hayload маса, трябва да добавите метод с множество добавена стойност;

Не е трудно? Имаме формира набор от $ arData на факта, че ние трябва да се добави. В нашия случай, ние ще се свърже с потребителя ID = 5 статия с ID = 123.

А сега нека да проба с всички възможни параметри (така че да знаете как става това):

За да изтриете запис, е достатъчно да се използва метода изтриете. минаваща го един параметър - ID HL блокови елементи:

Просто никъде! Остава да се научите как да се актуализира предмети. Тук също, всичко е просто. За да направите това, има метода на актуализация. който се два параметъра - HL блок елемент ID масив и тип данни "персонализирано поле" => "стойност за полето":

Това е всичко. Както можете да видите, нищо сложно и страшно в блокове Highload-не. Но за пореден път, че не е необходимо да ги създаде за всеки кихане. Важно е да се разбере, когато те са наистина необходими, а когато това е само глезене.