{"id":95760,"date":"2020-10-03T01:42:55","date_gmt":"2020-10-02T23:42:55","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya"},"modified":"2020-10-03T01:42:55","modified_gmt":"2020-10-02T23:42:55","slug":"v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya","status":"publish","type":"post","link":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya","title":{"rendered":"Tarantoolis saab liita superspeedy andmebaasi ja rakenduse nende haldamiseks. Nii lihtne see on!","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>\u041f\u044f\u0442\u044c \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Tarantool, \u043d\u043e \u0442\u043e\u0433\u0434\u0430 \u043e\u043d \u043c\u043d\u0435 \u043d\u0435 \u0437\u0430\u0448\u0435\u043b. \u041d\u043e \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u0432\u0435\u0431\u0438\u043d\u0430\u0440, \u0433\u0434\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043f\u0440\u043e Hadoop, \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 MapReduce. \u0422\u0430\u043c \u043c\u043d\u0435 \u0437\u0430\u0434\u0430\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441 \u2014 \u00ab\u0410 \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u043e\u0434 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Tarantool?\u00bb.<\/p>\n<p>\u0420\u0430\u0434\u0438 \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430 \u044f \u0440\u0435\u0448\u0438\u043b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443, \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u2014 \u0438 \u043d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u043f\u0440\u043e\u0435\u043a\u0442 \u043c\u043d\u0435 \u043e\u0447\u0435\u043d\u044c \u043f\u043e\u043d\u0440\u0430\u0432\u0438\u043b\u0441\u044f. \u0421\u0435\u0439\u0447\u0430\u0441 \u044f \u043f\u043e\u043a\u0430\u0436\u0443, \u043a\u0430\u043a \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0432 Tarantool \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u043d\u0430\u0433\u0440\u0443\u0436\u0443 \u0435\u0433\u043e \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044e \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c, \u0438 \u0432\u044b \u0443\u0432\u0438\u0434\u0438\u0442\u0435, \u043a\u0430\u043a \u0442\u0430\u043c \u0432\u0441\u0435 \u043b\u0435\u0433\u043a\u043e \u0438 \u043a\u0440\u0443\u0442\u043e.<\/p>\n<p><img decoding=\"async\" alt=\"\u0412 Tarantool \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0441\u0443\u043f\u0435\u0440\u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c\u0438. \u0412\u043e\u0442 \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f\" src=\"\/wp-content\/uploads\/2020\/10\/8cf3aa0417ba6356aa4a3ff8b1448deb.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>\u0427\u0442\u043e \u0442\u0430\u043a\u043e\u0435 Tarantool<\/h2>\n<p>\nTarantool \u043f\u043e\u0437\u0438\u0446\u0438\u043e\u043d\u0438\u0440\u0443\u0435\u0442 \u0441\u0435\u0431\u044f \u043a\u0430\u043a \u0441\u0432\u0435\u0440\u0445\u0431\u044b\u0441\u0442\u0440\u0430\u044f \u0411\u0414. \u0422\u0443\u0434\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u0438\u0445\u0430\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043a\u0430\u043a\u0438\u0435 \u0437\u0430\u0445\u043e\u0442\u0438\u0442\u0435. \u041f\u043b\u044e\u0441, \u0440\u0435\u043f\u043b\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445, \u0448\u0430\u0440\u0434\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u2014 \u0442\u043e \u0435\u0441\u0442\u044c \u0440\u0430\u0437\u0431\u0438\u0432\u0430\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c \u0438 \u043e\u0431\u044a\u0435\u0434\u0438\u043d\u044f\u0442\u044c \u0441 \u043d\u0438\u0445 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u2014 \u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0442\u043a\u0430\u0437\u043e\u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u044b\u0435 \u0441\u0432\u044f\u0437\u043a\u0438 \u0442\u0438\u043f\u0430 \u00ab\u043c\u0430\u0441\u0442\u0435\u0440-\u043c\u0430\u0441\u0442\u0435\u0440\u00bb.<\/p>\n<p>\u0412\u043e \u0432\u0442\u043e\u0440\u0443\u044e \u043e\u0447\u0435\u0440\u0435\u0434\u044c, \u044d\u0442\u043e application-\u0441\u0435\u0440\u0432\u0435\u0440. \u0412\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0430 \u043d\u0435\u043c \u0441\u0432\u043e\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0443\u0434\u0430\u043b\u044f\u0442\u044c \u0432 \u0444\u043e\u043d\u0435 \u0441\u0442\u0430\u0440\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u043c \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c. \u041c\u043e\u0436\u043d\u043e \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u044f\u043c\u043e \u0432 \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u0435 Http-\u0441\u0435\u0440\u0432\u0435\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438: \u0432\u044b\u0434\u0430\u0432\u0430\u0442\u044c \u0438\u0445 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e, \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0442\u0443\u0434\u0430 \u043d\u043e\u0432\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0440\u0435\u0434\u0443\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e \u0432\u0441\u0435 \u043d\u0430 \u043c\u0430\u0441\u0442\u0435\u0440\u0430. <\/p>\n<p>\u042f \u0447\u0438\u0442\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u044e, \u043a\u0430\u043a \u0440\u0435\u0431\u044f\u0442\u0430 \u0441\u0434\u0435\u043b\u0430\u043b\u0438 \u043e\u0447\u0435\u0440\u0435\u0434\u044c \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u043d\u0430 300 \u0441\u0442\u0440\u043e\u043a, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u0440\u0432\u0435\u0442 \u0438 \u043c\u0435\u0447\u0435\u0442 \u2014 \u0443 \u043d\u0438\u0445 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u043e\u0442 20 000 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0439 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443. \u0417\u0434\u0435\u0441\u044c \u043c\u043e\u0436\u043d\u043e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0447\u0435\u043d\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0438 \u044d\u0442\u043e \u0431\u0443\u0434\u0443\u0442 \u043d\u0435 \u0445\u0440\u0430\u043d\u0438\u043c\u043a\u0438, \u043a\u0430\u043a \u0432 PostgreS.<\/p>\n<p>\u041f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440, \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0439, \u044f \u0438 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u044e \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u0432 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435.<\/p>\n<h2>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430<\/h2>\n<p>\n\u0414\u043b\u044f \u0442\u0435\u0441\u0442\u0430 \u044f \u0437\u0430\u0432\u0435\u043b \u0442\u0440\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u2013 \u0436\u0435\u0441\u0442\u043a\u0438\u0439 \u0434\u0438\u0441\u043a \u043d\u0430 20 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442, Ubuntu 18.04. 2 \u0432\u0438\u0440\u0442\u0443\u0430\u043b CPU \u0438 4 \u0433\u0438\u0433\u0430 \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<p>\u041c\u044b \u0441\u0442\u0430\u0432\u0438\u043c Tarantool \u2014 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0431\u0430\u0448\u0435\u0432\u044b\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 \u043b\u0438\u0431\u043e \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u043c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u0438 \u0434\u0435\u043b\u0430\u0435\u043c apt get install Tarantool. \u0421\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u0441\u043a\u0440\u0438\u043f\u0442 \u2014 (curl -L <noindex><a rel=\"nofollow\" href=\"https:\/\/tarantool.io\/installer.sh\">https:\/\/tarantool.io\/installer.sh<\/a><\/noindex> | VER=2.4 sudo -E bash). \u0423 \u043d\u0430\u0441 \u043d\u0430\u0441 \u043f\u043e\u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u0442\u0430\u043a\u0438\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u043a\u0430\u043a:<\/p>\n<p><i>tarantoolctl<\/i> \u2014 \u043e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430\u043c\u0438 \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u0430. <br \/>\n<i>\/etc\/tarantool<\/i> \u2014 \u0437\u0434\u0435\u0441\u044c \u043b\u0435\u0436\u0438\u0442 \u0432\u0441\u044f \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f. <br \/>\n<i>var\/log\/tarantool<\/i> \u2014 \u0437\u0434\u0435\u0441\u044c \u043b\u0435\u0436\u0430\u0442 \u043b\u043e\u0433\u0438.<br \/>\n<i>var\/lib\/tarantool<\/i> \u2014 \u0437\u0434\u0435\u0441\u044c \u043b\u0435\u0436\u0430\u0442 \u0434\u0430\u043d\u043d\u044b\u0435, \u0438 \u0434\u0430\u043b\u044c\u0448\u0435 \u043e\u043d\u0438 \u0440\u0430\u0437\u0431\u0438\u0442\u044b \u043f\u043e \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430\u043c.<\/p>\n<p>\u0415\u0441\u0442\u044c \u043f\u0430\u043f\u043a\u0438 instance-available \u0438 instance-enable \u2014 \u0432 \u043d\u0435\u0439 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0442\u043e, \u0447\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c\u0441\u044f \u2014 \u0444\u0430\u0439\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430 \u0441 lua \u043a\u043e\u0434\u043e\u043c, \u0433\u0434\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u043e, \u043d\u0430 \u043a\u0430\u043a\u0438\u0445 \u043f\u043e\u0440\u0442\u0430\u0445 \u043e\u043d \u0441\u043b\u0443\u0448\u0430\u0435\u0442, \u043a\u0430\u043a\u0430\u044f \u043f\u0430\u043c\u044f\u0442\u044c \u0435\u043c\u0443 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u0432\u0438\u0436\u043a\u0430 Vinyl, \u043a\u043e\u0434, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0448\u0430\u0440\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435, \u043e\u0447\u0435\u0440\u0435\u0434\u0438, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435.<\/p>\n<p>\u0418\u043d\u0441\u0442\u0430\u043d\u0441\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0442 \u043a\u0430\u043a \u0432 PostgreS. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u0445\u043e\u0442\u0438\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043f\u0438\u0439 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u0438\u0441\u0438\u0442 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043e\u0440\u0442\u0430\u0445. \u041f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f, \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044e\u0442\u0441\u044f \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u043e\u0432 \u0431\u0430\u0437 \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432\u0438\u0441\u044f\u0442 \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u043e\u0440\u0442\u0430\u0445. \u0423 \u043d\u0438\u0445 \u043c\u043e\u0433\u0443\u0442 \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u0440\u0430\u0437\u043d\u044b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u2014 \u043e\u0434\u0438\u043d \u0438\u043d\u0441\u0442\u0430\u043d\u0441 \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442 \u043e\u0434\u043d\u0443 \u043b\u043e\u0433\u0438\u043a\u0443, \u0432\u0442\u043e\u0440\u043e\u0439 \u2014 \u0434\u0440\u0443\u0433\u0443\u044e. <\/p>\n<h2>\u0423\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435 \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430\u043c\u0438<\/h2>\n<p>\n\u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u0430 tarantoolctl, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430\u043c\u0438 \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u0430. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, tarantoolctl check example \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442 \u0444\u0430\u0439\u043b \u0441 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0435\u0439 \u0438 \u0441\u043a\u0430\u0436\u0435\u0442 \u2014 \u0444\u0430\u0439\u043b is ok, \u0435\u0441\u043b\u0438 \u0442\u0430\u043c \u043d\u0435\u0442 \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0441\u0438\u043d\u0442\u0430\u043a\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043e\u0448\u0438\u0431\u043e\u043a. <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u0442\u0430\u0442\u0443\u0441 \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0430 \u2014 tarantoolctl status example. \u0422\u0430\u043a\u0438\u043c \u0436\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0434\u0435\u043b\u0430\u0442\u044c start, stop, restart.<\/p>\n<p>\u041a\u043e\u0433\u0434\u0430 instance \u0437\u0430\u043f\u0443\u0449\u0435\u043d, \u043a \u043d\u0435\u043c\u0443 \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u0434\u0432\u0443\u043c\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438.<\/p>\n<p><b>1. \u0410\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043a\u043e\u043d\u0441\u043e\u043b\u044c <\/b><\/p>\n<p>\u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e Tarantool \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u043a\u0435\u0442, \u0442\u0430\u043c \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u043e\u0431\u044b\u0447\u043d\u044b\u0439 ASCII-\u0442\u0435\u043a\u0441\u0442 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u043e\u043c. \u041f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043a \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c admin, \u0442\u0430\u043c \u043d\u0435\u0442 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u044b\u043d\u043e\u0441\u0438\u0442\u044c \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 \u0434\u043b\u044f \u0443\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u044f \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u043e\u043c \u0432\u043e\u0432\u043d\u0435 \u043d\u0435 \u043d\u0430\u0434\u043e.<\/p>\n<p>\u0414\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u044d\u0442\u0438\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u043d\u0430\u0434\u043e \u0432\u0432\u0435\u0441\u0442\u0438 Tarantoolctl enter instance name. \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u0441\u044f \u043f\u043e\u0434 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c admin. \u041d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u0439\u0442\u0435 \u043a\u043e\u043d\u0441\u043e\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 \u043d\u0430\u0440\u0443\u0436\u0443 \u2014 \u043b\u0443\u0447\u0448\u0435 \u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u044e\u043d\u0438\u0442\u0441\u043e\u043a\u0435\u0442\u043e\u043c. \u0422\u043e\u0433\u0434\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c\u0441\u044f \u043a \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u0443 \u0431\u0443\u0434\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0443 \u0442\u0435\u0445, \u0443 \u043a\u043e\u0433\u043e \u0435\u0441\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0437\u0430\u043f\u0438\u0441\u0438 \u0432 \u0441\u043e\u043a\u0435\u0442. <\/p>\n<p>\u042d\u0442\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u0432\u0435\u0449\u0435\u0439. \u0414\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0432\u0442\u043e\u0440\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431 \u2014 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b.<\/p>\n<p><b>2. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0430 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043a \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u043c\u0443 \u043f\u043e\u0440\u0442\u0443<\/b> <\/p>\n<p>\u0412 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0435\u0441\u0442\u044c \u0434\u0438\u0440\u0435\u043a\u0442\u0438\u0432\u0430 listen, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u043f\u043e\u0440\u0442 \u0434\u043b\u044f \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043a\u043e\u043c\u043c\u0443\u043d\u0438\u043a\u0430\u0446\u0438\u0439. \u042d\u0442\u043e\u0442 \u043f\u043e\u0440\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0441 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u043c \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u043e\u043c, \u0438 \u0442\u0430\u043c \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f. <\/p>\n<p>\u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f tarantoolctl connect to port number. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0435\u0435, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c\u0441\u044f \u043a \u0443\u0434\u0430\u043b\u0435\u043d\u043d\u044b\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e \u0438 \u0434\u0430\u0432\u0430\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043f\u0440\u0430\u0432\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430. <\/p>\n<h2>\u0417\u0430\u043f\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043c\u043e\u0434\u0443\u043b\u044c Box<\/h2>\n<p>\n\u0422\u0430\u043a \u043a\u0430\u043a Tarantool \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438 \u0431\u0430\u0437\u043e\u0439 \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 application-\u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c, \u0432 \u043d\u0435\u043c \u0435\u0441\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438. \u041d\u0430\u0441 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u0435\u0442 \u043c\u043e\u0434\u0443\u043b\u044c box \u2014 \u043e\u043d \u0440\u0435\u0430\u043b\u0438\u0437\u0443\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438. \u041a\u043e\u0433\u0434\u0430 \u0432\u044b \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u0442\u0435 \u0447\u0442\u043e-\u0442\u043e \u0432 box, Tarantool \u043f\u0438\u0448\u0435\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u0434\u0438\u0441\u043a, \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u0438\u043b\u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u0441 \u043d\u0438\u043c\u0438 \u0447\u0442\u043e-\u0442\u043e \u0435\u0449\u0435.<\/p>\n<h3>\u0417\u0430\u043f\u0438\u0441\u044c<\/h3>\n<p>\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043c\u044b \u0437\u0430\u0445\u043e\u0434\u0438\u043c \u0432 \u043c\u043e\u0434\u0443\u043b\u044c box \u0438 \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e box.once. \u041e\u043d\u0430 \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442 Tarantool \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043d\u0430\u0448 \u043a\u043e\u0434 \u043f\u0440\u0438 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c space, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0431\u0443\u0434\u0443\u0442 \u0445\u0440\u0430\u043d\u0438\u0442\u044c\u0441\u044f \u043d\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435. <\/p>\n<pre><code class=\"lua\">local function bootstrap()\n    local space = box.schema.create_space('example')\n    space:create_index('primary')\n    box.schema.user.grant('guest', 'read,write,execute', 'universe')\n\n    -- Keep things safe by default\n    --  box.schema.user.create('example', { password = 'secret' })\n    --  box.schema.user.grant('example', 'replication')\n    --  box.schema.user.grant('example', 'read,write,execute', 'space', 'example')\nend<\/code><\/pre>\n<p>\n\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u2013 primary \u2014 \u043f\u043e \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043c\u043e\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043a\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435. \u041f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0435\u0441\u043b\u0438 \u043d\u0435 \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432, \u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043e \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u043e\u043b\u0435 \u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 \u0434\u043b\u044f \u043f\u0440\u0430\u0439\u043c\u0435\u0440\u0438-\u0438\u043d\u0434\u0435\u043a\u0441\u0430.<\/p>\n<p>\u0417\u0430\u0442\u0435\u043c \u0434\u0435\u043b\u0430\u0435\u043c \u0433\u0440\u0430\u043d\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e guest, \u043f\u043e\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c\u0441\u044f \u043f\u043e \u0431\u0438\u043d\u0430\u0440\u043d\u043e\u043c\u0443 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443. \u0420\u0430\u0437\u0440\u0435\u0448\u0430\u0435\u043c \u0447\u0438\u0442\u0430\u0442\u044c, \u043f\u0438\u0441\u0430\u0442\u044c \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0432\u043e \u0432\u0441\u0435\u043c \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0435.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0441\u0440\u0430\u0432\u043d\u0438\u0432\u0430\u0442\u044c \u0441 \u043e\u0431\u044b\u0447\u043d\u044b\u043c\u0438 \u0431\u0430\u0437\u0430\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u0437\u0434\u0435\u0441\u044c \u0432\u0441\u0435 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e. \u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c space \u2013 \u043e\u0431\u043b\u0430\u0441\u0442\u044c, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0441\u0442\u043e \u0445\u0440\u0430\u043d\u044f\u0442\u0441\u044f \u043d\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435. \u041a\u0430\u0436\u0434\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u043a\u043e\u0440\u0442\u0435\u0436. \u041e\u043d\u0430 \u043f\u0430\u043a\u0443\u0435\u0442\u0441\u044f \u0432 MessagePack. \u042d\u0442\u043e \u043e\u0447\u0435\u043d\u044c \u043f\u0440\u0438\u043a\u043e\u043b\u044c\u043d\u044b\u0439 \u0444\u043e\u0440\u043c\u0430\u0442 \u2014 \u043e\u043d \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0439 \u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043c\u0435\u043d\u044c\u0448\u0435 \u043c\u0435\u0441\u0442\u0430 \u2013 18 \u0431\u0430\u0439\u0442 \u043f\u0440\u043e\u0442\u0438\u0432 27. <\/p>\n<p><img decoding=\"async\" alt=\"\u0412 Tarantool \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0441\u0443\u043f\u0435\u0440\u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c\u0438. \u0412\u043e\u0442 \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f\" src=\"\/wp-content\/uploads\/2020\/10\/d8e394a3fe2d3eff2335f58c0cd89922.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u0421 \u043d\u0438\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0443\u0434\u043e\u0431\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u041f\u043e\u0447\u0442\u0438 \u043a\u0430\u0436\u0434\u0430\u044f \u0441\u0442\u0440\u043e\u0447\u043a\u0430, \u043a\u0430\u0436\u0434\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u0438\u043c\u0435\u0442\u044c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u043a\u043e\u043b\u043e\u043d\u043a\u0438.<\/p>\n<p>\u0412\u0441\u0435 \u0441\u043f\u0435\u0439\u0441\u044b \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b Box.space. \u0427\u0442\u043e\u0431\u044b \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0430\u043d\u0441 \u2013 \u043f\u0438\u0448\u0435\u043c box.space example \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043f\u043e\u043b\u043d\u0443\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043f\u043e \u043d\u0435\u043c\u0443. <\/p>\n<p>\u0412 Tarantool \u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043e \u0434\u0432\u0430 \u0442\u0438\u043f\u0430 \u0434\u0432\u0438\u0436\u043a\u043e\u0432: Memory \u0438 Vinyl. Memory \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442 \u0432\u0441\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u0440\u043e\u0441\u0442\u043e \u0438 \u0431\u044b\u0441\u0442\u0440\u043e. \u0414\u0430\u043d\u043d\u044b\u0435 \u0434\u0430\u043c\u043f\u044f\u0442\u0441\u044f \u043d\u0430 \u0434\u0438\u0441\u043a, \u0430 \u0442\u0430\u043a\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c write ahead log, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u0442\u0435\u0440\u044f\u0435\u043c \u043f\u0440\u0438 \u043f\u0430\u0434\u0435\u043d\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. <\/p>\n<p>Vinyl \u0445\u0440\u0430\u043d\u0438\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u0434\u0438\u0441\u043a\u0435 \u0432 \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u043c \u043d\u0430\u043c \u0432\u0438\u0434\u0435 \u2014 \u0442\u043e \u0435\u0441\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u0445\u0440\u0430\u043d\u0438\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u0434\u0430\u043d\u043d\u044b\u0445, \u0447\u0435\u043c \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u043f\u0430\u043c\u044f\u0442\u0438, \u0438 \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b \u0431\u0443\u0434\u0435\u0442 \u0447\u0438\u0442\u0430\u0442\u044c \u0438\u0445 \u0441 \u0434\u0438\u0441\u043a\u0430.<\/p>\n<p>\u0421\u0435\u0439\u0447\u0430\u0441 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Memory. <\/p>\n<pre><code class=\"lua\">unix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example\n---\n- engine: memtx\n  before_replace: 'function: 0x41eb02c8'\n  on_replace: 'function: 0x41eb0568'\n  ck_constraint: []\n  field_count: 0\n  temporary: false\n  index:\n    0: &amp;0\n      unique: true\n      parts:\n      - type: unsigned\n        is_nullable: false\n        fieldno: 1\n      id: 0\n      space_id: 512\n      type: TREE\n      name: primary\n    primary: *0\n  is_local: false\n  enabled: true\n  name: example\n  id: 512\n...\n\nunix\/:\/var\/run\/tarantool\/example.control&gt;<\/code><\/pre>\n<p>\n<b>Index:<\/b><\/p>\n<p>\u041f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441 \u043d\u0430\u0434\u043e \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u043b\u044e\u0431\u043e\u0433\u043e \u0441\u043f\u0435\u0439\u0441\u0430, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0431\u0435\u0437 \u043d\u0435\u0433\u043e \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c. \u041a\u0430\u043a \u0438 \u0432 \u043b\u044e\u0431\u043e\u0439 \u0431\u0430\u0437\u0435, \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u043e\u043b\u0435 \u2013 ID \u0437\u0430\u043f\u0438\u0441\u0438. <\/p>\n<p><b>Parts:<\/b><\/p>\n<p>\u0417\u0434\u0435\u0441\u044c \u043c\u044b \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c, \u0438\u0437 \u0447\u0435\u0433\u043e \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043d\u0430\u0448 \u0438\u043d\u0434\u0435\u043a\u0441. \u041e\u043d \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u043e\u0434\u043d\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u2013 \u043f\u0435\u0440\u0432\u043e\u0435 \u043f\u043e\u043b\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c, \u0442\u0438\u043f unsigned \u2014 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0435 \u0446\u0435\u043b\u043e\u0435 \u0447\u0438\u0441\u043b\u043e. \u041d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u044f \u043f\u043e\u043c\u043d\u044e \u0438\u0437 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0447\u0438\u0441\u043b\u043e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u2013 18 \u043a\u0432\u0438\u043d\u0442\u0438\u043b\u043b\u0438\u043e\u043d\u043e\u0432. \u041e\u0444\u0438\u0433\u0435\u043d\u043d\u043e \u043c\u043d\u043e\u0433\u043e.<\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u0441\u0442\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u044b insert.<\/p>\n<pre><code class=\"lua\">unix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example:insert{1, 'test1', 'test2'}\n---\n- [1, 'test1', 'test2']\n...\n\nunix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example:insert{2, 'test2', 'test3', 'test4'}\n---\n- [2, 'test2', 'test3', 'test4']\n...\n\nunix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example:insert{3, 'test3'}\n---\n- [3, 'test3']\n...\n\nunix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example:insert{4, 'test4'}\n---\n- [4, 'test4']\n...\n\nunix\/:\/var\/run\/tarantool\/example.control&gt;<\/code><\/pre>\n<p>\n\u041f\u0435\u0440\u0432\u043e\u0435 \u043f\u043e\u043b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043a\u0430\u043a \u043f\u0435\u0440\u0432\u0438\u0447\u043d\u044b\u0439 \u043a\u043b\u044e\u0447, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u043d\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435. \u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u043c\u044b \u043d\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u044b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0442\u0443\u0434\u0430 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0433\u043e\u0434\u043d\u043e \u0434\u0430\u043d\u043d\u044b\u0445. \u041e\u043d\u0438 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 MessagePack, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f \u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043b \u0432\u044b\u0448\u0435.<\/p>\n<h2>\u0412\u044b\u0432\u043e\u0434 \u0434\u0430\u043d\u043d\u044b\u0445<\/h2>\n<p>\n\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 select.<\/p>\n<p>Box.example.select \u0441 \u0443\u043a\u0430\u0437\u0430\u043d\u0438\u0435\u043c \u043a\u043b\u044e\u0447\u0430 {1} \u0432\u044b\u0432\u0435\u0434\u0435\u0442 \u043d\u0443\u0436\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c. \u0415\u0441\u043b\u0438 \u043c\u044b \u043e\u043f\u0443\u0441\u0442\u0438\u043c \u043a\u043b\u044e\u0447, \u0442\u043e \u0443\u0432\u0438\u0434\u0438\u043c \u0432\u0441\u0435 \u0437\u0430\u043f\u0438\u0441\u0438, \u043a\u0430\u043a\u0438\u0435 \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c. \u041e\u043d\u0438 \u0432\u0441\u0435 \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b \u043f\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0443 \u043a\u043e\u043b\u043e\u043d\u043e\u043a, \u043d\u043e \u0437\u0434\u0435\u0441\u044c \u0432 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0435 \u043d\u0435\u0442 \u043f\u043e\u043d\u044f\u0442\u0438\u044f \u043a\u043e\u043b\u043e\u043d\u043e\u043a \u2014 \u0435\u0441\u0442\u044c \u043d\u043e\u043c\u0435\u0440\u0430 \u043f\u043e\u043b\u044f.<\/p>\n<p>\u0414\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0430\u0431\u0441\u043e\u043b\u044e\u0442\u043d\u043e \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0443\u0433\u043e\u0434\u043d\u043e \u043c\u043d\u043e\u0433\u043e. \u0418 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0438\u0441\u043a\u0430\u0442\u044c \u0438\u0445 \u043f\u043e \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u043e\u043b\u044e. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u0434\u0435\u043b\u0430\u0435\u043c \u043d\u043e\u0432\u044b\u0439 \u0432\u0442\u043e\u0440\u0438\u0447\u043d\u044b\u0439 \u0438\u043d\u0434\u0435\u043a\u0441.<\/p>\n<pre><code class=\"lua\">\nbox.space.example:create_index( \u2018secondary\u2019, { type = \u2018TREE\u2019, unique = false, parts = {{field = 2, type =\u2019string\u2019} }}) <\/code><\/pre>\n<p>\n\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443 Create_index.<br \/>\n\u041d\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0435\u0433\u043e Secondary.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u044b. \u0422\u0438\u043f \u0438\u043d\u0434\u0435\u043a\u0441\u0430 \u2014 TREE. \u041e\u043d\u043e \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043d\u0435 \u0443\u043d\u0438\u043a\u0430\u043b\u044c\u043d\u043e\u0435, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0432\u043e\u0434\u0438\u043c Unique = false.<\/p>\n<p>\u0417\u0430\u0442\u0435\u043c \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c, \u0438\u0437 \u043a\u0430\u043a\u0438\u0445 \u0447\u0430\u0441\u0442\u0435\u0439 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u043d\u0430\u0448 \u0438\u043d\u0434\u0435\u043a\u0441. Field \u2014 \u044d\u0442\u043e \u043d\u043e\u043c\u0435\u0440 \u043f\u043e\u043b\u044f, \u043a \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043c\u044b \u043f\u0440\u0438\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u043c \u0438\u043d\u0434\u0435\u043a\u0441, \u0438 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0442\u0438\u043f string. \u0418 \u0432\u043e\u0442 \u043e\u043d \u0441\u043e\u0437\u0434\u0430\u043b\u0441\u044f.<\/p>\n<pre><code class=\"lua\">unix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example:create_index('secondary', { type = 'TREE', unique = false, parts = {{field = 2, type = 'string'}}})\n---\n- unique: false\n  parts:\n  - type: string\n    is_nullable: false\n    fieldno: 2\n  id: 1\n  space_id: 512\n  type: TREE\n  name: secondary\n...\n\nunix\/:\/var\/run\/tarantool\/example.control&gt;<\/code><\/pre>\n<p>\n\u0422\u0435\u043f\u0435\u0440\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u043c\u044b \u043c\u043e\u0436\u0435\u043c \u0435\u0433\u043e \u0432\u044b\u0437\u0432\u0430\u0442\u044c:<\/p>\n<pre><code class=\"lua\">unix\/:\/var\/run\/tarantool\/example.control&gt; box.space.example.index.secondary:select('test1')\n---\n- - [1, 'test1', 'test2']\n...\n<\/code><\/pre>\n<p><\/p>\n<h2>\u0421\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435<\/h2>\n<p>\n\u0415\u0441\u043b\u0438 \u043c\u044b \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0430\u043d\u0435\u043c \u0438\u043d\u0441\u0442\u0430\u043d\u0441 \u0438 \u0441\u043d\u043e\u0432\u0430 \u043f\u043e\u043f\u0440\u043e\u0431\u0443\u0435\u043c \u0432\u044b\u0437\u0432\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u2014 \u0442\u043e \u0443\u0432\u0438\u0434\u0438\u043c, \u0447\u0442\u043e \u0438\u0445 \u043d\u0435\u0442 \u2014 \u0432\u0441\u0435 \u043f\u0443\u0441\u0442\u043e. \u0422\u0430\u043a \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 Tarantool \u0434\u0435\u043b\u0430\u0435\u0442 \u0447\u0435\u043a\u043f\u043e\u0438\u043d\u0442\u044b \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0430 \u0434\u0438\u0441\u043a, \u043d\u043e \u0435\u0441\u043b\u0438 \u043c\u044b \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0443 \u0434\u043e \u0431\u043b\u0438\u0436\u0430\u0439\u0448\u0435\u0433\u043e \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f, \u0442\u043e \u043f\u043e\u0442\u0435\u0440\u044f\u0435\u043c \u0432\u0441\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438 \u2014 \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c\u0441\u044f \u0441 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0447\u0435\u043a\u043f\u043e\u0438\u043d\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u044b\u043b, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0434\u0432\u0430 \u0447\u0430\u0441\u0430 \u043d\u0430\u0437\u0430\u0434.<\/p>\n<p>\u0421\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u043a\u0430\u0436\u0434\u0443\u044e \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0442\u043e\u0436\u0435 \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442 \u2014 \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0434\u0430\u043c\u043f\u0438\u0442\u044c \u043d\u0430 \u0434\u0438\u0441\u043a \u043f\u043e 20 \u0413\u0431 \u2014 \u0442\u0430\u043a \u0441\u0435\u0431\u0435 \u0437\u0430\u0442\u0435\u044f.<\/p>\n<p>\u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0431\u044b\u043b\u0430 \u043f\u0440\u0438\u0434\u0443\u043c\u0430\u043d\u0430 \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u0430 \u043a\u043e\u043d\u0446\u0435\u043f\u0446\u0438\u044f write-ahead log. \u0421 \u0435\u0435 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441\u043e\u0437\u0434\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u043e\u043c write-ahead log \u0444\u0430\u0439\u043b\u0435. <\/p>\n<p>\u041a\u0430\u0436\u0434\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0434\u043e \u0447\u0435\u043a\u043f\u043e\u0438\u043d\u0442\u0430 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u0432 \u043d\u0438\u0445. \u0414\u043b\u044f \u044d\u0442\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u043c\u044b \u0432\u044b\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u043c \u0440\u0430\u0437\u043c\u0435\u0440 \u2014 \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, 64 \u043c\u0431. \u041a\u043e\u0433\u0434\u0430 \u043e\u043d \u0437\u0430\u043f\u043e\u043b\u043d\u044f\u0435\u0442\u0441\u044f, \u0437\u0430\u043f\u0438\u0441\u044c \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0438\u0434\u0442\u0438 \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0444\u0430\u0439\u043b. \u0418 \u043f\u043e\u0441\u043b\u0435 \u0440\u0435\u0441\u0442\u0430\u0440\u0442\u0430 Tarantool \u0432\u043e\u0441\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0438\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u0447\u0435\u043a\u043f\u043e\u0438\u043d\u0442\u0430 \u0438 \u0437\u0430\u0442\u0435\u043c \u043d\u0430\u043a\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u0435 \u0431\u043e\u043b\u0435\u0435 \u043f\u043e\u0437\u0434\u043d\u0438\u0435 \u0442\u0440\u0430\u043d\u0437\u0430\u043a\u0446\u0438\u0438 \u0434\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438.<\/p>\n<p><img decoding=\"async\" alt=\"\u0412 Tarantool \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0441\u0443\u043f\u0435\u0440\u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c\u0438. \u0412\u043e\u0442 \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f\" src=\"\/wp-content\/uploads\/2020\/10\/5c80534751f7541e5cc4c8b0f5f6a3a1.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\n\u0427\u0442\u043e\u0431\u044b \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u0442\u044c \u0442\u0430\u043a\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c, \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u0430\u0442\u044c \u043e\u043f\u0446\u0438\u044e \u0432 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u0445 box.cfg (\u0432 \u0444\u0430\u0439\u043b\u0435 example.lua): <\/p>\n<pre><code class=\"lua\">wal_mode = \u201cwrite\u201d;<\/code><\/pre>\n<p><\/p>\n<h2>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0445<\/h2>\n<p>\n\u0421 \u0442\u0435\u043c, \u0447\u0442\u043e \u043c\u044b \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0441\u0435\u0439\u0447\u0430\u0441, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b \u0434\u043b\u044f \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043e\u0447\u0435\u043d\u044c \u0431\u044b\u0441\u0442\u0440\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043a\u0430\u043a \u0411\u0414. \u0410 \u0442\u0435\u043f\u0435\u0440\u044c \u0441\u0430\u043c\u0430\u044f \u0432\u0438\u0448\u0435\u043d\u043a\u0430 \u043d\u0430 \u0442\u043e\u0440\u0442\u0435 \u2013 \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441 \u044d\u0442\u0438\u043c \u0441\u043e \u0432\u0441\u0435\u043c \u0434\u0435\u043b\u0430\u0442\u044c. <\/p>\n<h3>\u041f\u0438\u0448\u0435\u043c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/h3>\n<p>\n\u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0434\u043b\u044f \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u0430 \u0442\u0430\u043a\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435<\/p>\n<p>                        <b class=\"spoiler_title\">\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043f\u043e\u0434 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u043e\u043c<\/b><\/p>\n<pre><code class=\"lua\">box.cfg {\n    listen = '0.0.0.0:3301';\n    io_collect_interval = nil;\n    readahead = 16320;\n    memtx_memory = 128 * 1024 * 1024; -- 128Mb\n    memtx_min_tuple_size = 16;\n    memtx_max_tuple_size = 128 * 1024 * 1024; -- 128Mb\n    vinyl_memory = 128 * 1024 * 1024; -- 128Mb\n    vinyl_cache = 128 * 1024 * 1024; -- 128Mb\n    vinyl_max_tuple_size = 128 * 1024 * 1024; -- 128Mb\n    vinyl_write_threads = 2;\n    wal_mode = &quot;write&quot;;\n    wal_max_size = 256 * 1024 * 1024;\n    checkpoint_interval = 60 * 60; -- one hour\n    checkpoint_count = 6;\n    force_recovery = true;\n    log_level = 5;\n    log_nonblock = false;\n    too_long_threshold = 0.5;\n    read_only   = false\n}\n\nlocal function bootstrap()\n    local space = box.schema.create_space('example')\n    space:create_index('primary')\n\n    box.schema.user.create('example', { password = 'secret' })\n    box.schema.user.grant('example', 'read,write,execute', 'space', 'example')\n\n    box.schema.user.create('repl', { password = 'replication' })\n    box.schema.user.grant('repl', 'replication')\nend\n\n-- for first run create a space and add set up grants\nbox.once('replica', bootstrap)\n\n-- enabling console access\nconsole = require('console')\nconsole.listen('127.0.0.1:3302')\n\n-- http config\nlocal charset = {}  do -- [0-9a-zA-Z]\n    for c = 48, 57  do table.insert(charset, string.char(c)) end\n    for c = 65, 90  do table.insert(charset, string.char(c)) end\n    for c = 97, 122 do table.insert(charset, string.char(c)) end\nend\n\nlocal function randomString(length)\n    if not length or length &lt;= 0 then return '' end\n    math.randomseed(os.clock()^5)\n    return randomString(length - 1) .. charset[math.random(1, #charset)]\nend\n\nlocal http_router = require('http.router')\nlocal http_server = require('http.server')\nlocal json = require('json')\n\nlocal httpd = http_server.new('0.0.0.0', 8080, {\n    log_requests = true,\n    log_errors = true\n})\n\nlocal router = http_router.new()\n\nlocal function get_count()\n local cnt = box.space.example:len()\n return cnt\nend\n\nrouter:route({method = 'GET', path = '\/count'}, function()\n    return {status = 200, body = json.encode({count = get_count()})}\nend)\n\nrouter:route({method = 'GET', path = '\/token'}, function()\n    local token = randomString(32)\n    local last = box.space.example:len()\n    box.space.example:insert{ last + 1, token }\n    return {status = 200, body = json.encode({token = token})}\nend)\n\nprometheus = require('prometheus')\n\nfiber = require('fiber')\ntokens_count = prometheus.gauge(&quot;tarantool_tokens_count&quot;,\n                              &quot;API Tokens Count&quot;)\n\nfunction monitor_tokens_count()\n  while true do\n    tokens_count:set(get_count())\n    fiber.sleep(5)\n  end\nend\nfiber.create(monitor_tokens_count)\n\nrouter:route( { method = 'GET', path = '\/metrics' }, prometheus.collect_http)\n\nhttpd:set_router(router)\nhttpd:start()<\/code><\/pre>\n<p>\u041c\u044b \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c \u043d\u0435\u043a\u043e\u0442\u043e\u0440\u0443\u044e \u0442\u0430\u0431\u043b\u0438\u0447\u043a\u0443 \u0432 lua, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0441\u0438\u043c\u0432\u043e\u043b\u044b. \u042d\u0442\u0430 \u0442\u0430\u0431\u043b\u0438\u0447\u043a\u0430 \u043d\u0443\u0436\u043d\u0430 \u0434\u043b\u044f \u0433\u0435\u043d\u0435\u0440\u0430\u0446\u0438\u0438 \u0440\u0430\u043d\u0434\u043e\u043c\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438. <\/p>\n<pre><code class=\"lua\">local charset = {}  do -- [0-9a-zA-Z]\n    for c = 48, 57  do table.insert(charset, string.char(c)) end\n    for c = 65, 90  do table.insert(charset, string.char(c)) end\n    for c = 97, 122 do table.insert(charset, string.char(c)) end\nend<\/code><\/pre>\n<p>\n\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043c\u044b \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u2013 randomString \u0438 \u043f\u0440\u0438\u0434\u0430\u0434\u0438\u043c \u0432 \u0441\u043a\u043e\u0431\u043a\u0430\u0445 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u0438\u043d\u044b. <\/p>\n<pre><code class=\"lua\">local function randomString(length)\n    if not length or length &lt;= 0 then return '' end\n    math.randomseed(os.clock()^5)\n    return randomString(length - 1) .. charset[math.random(1, #charset)]\nend<\/code><\/pre>\n<p>\n\u0417\u0430\u0442\u0435\u043c \u043c\u044b \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u043c http-\u0440\u043e\u0443\u0442\u0435\u0440 \u0438 http-\u0441\u0435\u0440\u0432\u0435\u0440 \u0432 \u043d\u0430\u0448 \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b-\u0441\u0435\u0440\u0432\u0435\u0440, JSON, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0431\u0443\u0434\u0435\u043c \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u043a\u043b\u0438\u0435\u043d\u0442\u0443.<\/p>\n<pre><code class=\"lua\">local http_router = require('http.router')\nlocal http_server = require('http.server')\nlocal json = require('json')<\/code><\/pre>\n<p>\n\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u0441\u0442\u0430\u0440\u0442\u0443\u0435\u043c \u043d\u0430 \u043f\u043e\u0440\u0442\u0443 8080 \u043d\u0430 \u0432\u0441\u0435\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430\u0445 http server, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0432\u0441\u0435 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0438 \u043e\u0448\u0438\u0431\u043a\u0438.<\/p>\n<pre><code class=\"lua\">local httpd = http_server.new('0.0.0.0', 8080, {\n    log_requests = true,\n    log_errors = true\n})<\/code><\/pre>\n<p>\n\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c route, \u0447\u0442\u043e \u0435\u0441\u043b\u0438 \u043d\u0430 \u043f\u043e\u0440\u0442 8080 \/count \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u043f\u0440\u043e\u0441 \u0441 \u043c\u0435\u0442\u043e\u0434\u043e\u043c GET, \u0442\u043e \u043c\u044b \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0438\u0437 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u0440\u043e\u0447\u043a\u0438. \u041e\u043d\u0430 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u0441\u0442\u0430\u0442\u0443\u0441 \u2014 200, 404, 403 \u0438\u043b\u0438 \u043b\u044e\u0431\u043e\u0439 \u0434\u0440\u0443\u0433\u043e\u0439, \u043a\u0430\u043a\u043e\u0439 \u0443\u043a\u0430\u0436\u0435\u043c. <\/p>\n<pre><code class=\"lua\">router:route({method = 'GET', path = '\/count'}, function()\n    return {status = 200, body = json.encode({count = get_count()})}\nend)<\/code><\/pre>\n<p>\n\u0412 \u0442\u0435\u043b\u0435 \u043c\u044b \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u043c json.encode, \u0432 \u043d\u0435\u0439 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c count \u0438 getcount, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0438 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0432 \u043d\u0430\u0448\u0435\u0439 \u0431\u0430\u0437\u0435. <\/p>\n<p><b>\u0412\u0442\u043e\u0440\u043e\u0439 \u043c\u0435\u0442\u043e\u0434<\/b><\/p>\n<pre><code class=\"lua\">router:route({method = 'GET', path = '\/token'}, function() \n    local token = randomString(32) \n    local last = box.space.example:len() \n    box.space.example:insert{ last + 1, token } \n    return {status = 200, body = json.encode({token = token})}\nend)<\/code><\/pre>\n<p>\n\u0413\u0434\u0435 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 <i>router:route({method = &#8216;GET&#8217;, path = &#8216;\/token&#8217;}, function()<\/i> \u043c\u044b \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u043c \u0444\u0443\u043d\u043a\u0446\u0438\u044e \u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c \u0442\u043e\u043a\u0435\u043d.<\/p>\n<p>\u0421\u0442\u0440\u043e\u043a\u0430 <i>local token = randomString(32)<\/i> \u2013 \u044d\u0442\u043e \u0440\u0430\u043d\u0434\u043e\u043c\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u0438\u0437 32 \u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432. <br \/>\n\u0412 \u0441\u0442\u0440\u043e\u043a\u0435 <i>local last = box.space.example:len()<\/i> \u043c\u044b \u0432\u044b\u0442\u0430\u0441\u043a\u0438\u0432\u0430\u0435\u043c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u044d\u043b\u0435\u043c\u0435\u043d\u0442. <br \/>\n\u0410 \u0432 \u0441\u0442\u0440\u043e\u043a\u0435 <i>box.space.example:insert{ last + 1, token }<\/i> \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0432 \u043d\u0430\u0448\u0443 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0435, \u0442\u043e \u0435\u0441\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432\u0430\u0435\u043c ID \u043d\u0430 1. \u042d\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043a\u0441\u0442\u0430\u0442\u0438, \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0432\u043e\u0442 \u0442\u0430\u043a\u0438\u043c \u043a\u043e\u0440\u044f\u0432\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c. \u0412 \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b\u0435 \u0435\u0441\u0442\u044c \u0441\u0438\u043a\u0432\u0435\u043d\u0441\u044b \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0434\u0435\u043b\u0430. <\/p>\n<p>\u0417\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0442\u0443\u0434\u0430 \u0442\u043e\u043a\u0435\u043d.<\/p>\n<p>\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043c\u044b \u0432 \u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435. \u0412 \u043d\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u0441\u0440\u0430\u0437\u0443 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u0438 \u043c\u043e\u0434\u0443\u043b\u044c box \u0441\u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430 \u0432\u0430\u0441 \u0432\u0441\u044e \u0433\u0440\u044f\u0437\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443.<\/p>\n<p>\u041e\u043d\u043e \u0441\u043b\u0443\u0448\u0430\u0435\u0442 http \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438, \u0432\u0441\u0435 \u043d\u0430\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u0435\u0434\u0438\u043d\u043e\u043c \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u0435 \u2014 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435, \u0438 \u0434\u0430\u043d\u043d\u044b\u0435. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0441\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e. <\/p>\n<p>\u0414\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043c\u044b \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c http \u043c\u043e\u0434\u0443\u043b\u044c:<\/p>\n<p>                        <b class=\"spoiler_title\">\u041a\u0430\u043a \u043c\u044b \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u043c, \u0441\u043c\u043e\u0442\u0440\u0438\u0442\u0435 \u043f\u043e\u0434 \u0441\u043f\u043e\u0439\u043b\u0435\u0440\u043e\u043c<\/b><\/p>\n<pre><code class=\"lua\">root@test2:\/# tarantoolctl rocks install http\nInstalling http:\/\/rocks.tarantool.org\/http-scm-1.src.rock\nMissing dependencies for http scm-1:\n   checks &gt;= 3.0.1 (not installed)\n\nhttp scm-1 depends on checks &gt;= 3.0.1 (not installed)\nInstalling http:\/\/rocks.tarantool.org\/checks-3.0.1-1.rockspec\n\nCloning into 'checks'...\nremote: Enumerating objects: 28, done.\nremote: Counting objects: 100% (28\/28), done.\nremote: Compressing objects: 100% (19\/19), done.\nremote: Total 28 (delta 1), reused 16 (delta 1), pack-reused 0\nReceiving objects: 100% (28\/28), 12.69 KiB | 12.69 MiB\/s, done.\nResolving deltas: 100% (1\/1), done.\nNote: checking out '580388773ef11085015b5a06fe52d61acf16b201'.\n\nYou are in 'detached HEAD' state. You can look around, make experimental\nchanges and commit them, and you can discard any commits you make in this\nstate without impacting any branches by performing another checkout.\n\nIf you want to create a new branch to retain commits you create, you may\ndo so (now or later) by using -b with the checkout command again. Example:\n\n  git checkout -b &lt;new-branch-name&gt;\n\nNo existing manifest. Attempting to rebuild...\nchecks 3.0.1-1 is now installed in \/.rocks (license: BSD)\n\n-- The C compiler identification is GNU 7.5.0\n-- Check for working C compiler: \/usr\/bin\/cc\n-- Check for working C compiler: \/usr\/bin\/cc -- works\n-- Detecting C compiler ABI info\n-- Detecting C compiler ABI info - done\n-- Detecting C compile features\n-- Detecting C compile features - done\n-- Found TARANTOOL: \/usr\/include (found version &quot;2.4.2-80-g18f2bc82d&quot;)\n-- Tarantool LUADIR is \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\n-- Tarantool LIBDIR is \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lib\n-- Configuring done\n-- Generating done\nCMake Warning:\n  Manually-specified variables were not used by the project:\n\n    version\n\n\n-- Build files have been written to: \/tmp\/luarocks_http-scm-1-V4P9SM\/http\/build.luarocks\nScanning dependencies of target httpd\n[ 50%] Building C object http\/CMakeFiles\/httpd.dir\/lib.c.o\nIn file included from \/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/lib.c:32:0:\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/lib.c: In function \u2018tpl_term\u2019:\n\/usr\/include\/tarantool\/lauxlib.h:144:15: warning: this statement may fall through [-Wimplicit-fallthrough=]\n    (*(B)-&gt;p++ = (char)(c)))\n    ~~~~~~~~~~~^~~~~~~~~~~~\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/lib.c:62:7: note: in expansion of macro \u2018luaL_addchar\u2019\n       luaL_addchar(b, '\\');\n       ^~~~~~~~~~~~\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/lib.c:63:6: note: here\n      default:\n      ^~~~~~~\nIn file included from \/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/lib.c:39:0:\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/tpleval.h: In function \u2018tpe_parse\u2019:\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/tpleval.h:147:9: warning: this statement may fall through [-Wimplicit-fallthrough=]\n    type = TPE_TEXT;\n    ~~~~~^~~~~~~~~~\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/tpleval.h:149:3: note: here\n   case TPE_LINECODE:\n   ^~~~\nIn file included from \/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/lib.c:40:0:\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/httpfast.h: In function \u2018httpfast_parse\u2019:\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/httpfast.h:372:22: warning: this statement may fall through [-Wimplicit-fallthrough=]\n                 code = 0;\n                 ~~~~~^~~\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/httpfast.h:374:13: note: here\n             case status:\n             ^~~~\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/httpfast.h:393:23: warning: this statement may fall through [-Wimplicit-fallthrough=]\n                 state = message;\n                 ~~~~~~^~~~~~~~~\n\/tmp\/luarocks_http-scm-1-V4P9SM\/http\/http\/httpfast.h:395:13: note: here\n             case message:\n             ^~~~\n[100%] Linking C shared library lib.so\n[100%] Built target httpd\n[100%] Built target httpd\nInstall the project...\n-- Install configuration: &quot;Debug&quot;\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/VERSION.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lib\/http\/lib.so\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/server\/init.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/server\/tsgi_adapter.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/nginx_server\/init.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/router\/init.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/router\/fs.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/router\/matching.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/router\/middleware.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/router\/request.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/router\/response.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/tsgi.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/utils.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/mime_types.lua\n-- Installing: \/.rocks\/share\/tarantool\/rocks\/http\/scm-1\/lua\/http\/codes.lua\nhttp scm-1 is now installed in \/.rocks (license: BSD)\n\nroot@test2:\/#<\/code><\/pre>\n<p>\u0422\u0430\u043a\u0436\u0435 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043d\u0430\u043c \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f prometheus:<\/p>\n<pre><code class=\"lua\">root@test2:\/# tarantoolctl rocks install prometheus\nInstalling http:\/\/rocks.tarantool.org\/prometheus-scm-1.rockspec\n\nCloning into 'prometheus'...\nremote: Enumerating objects: 19, done.\nremote: Counting objects: 100% (19\/19), done.\nremote: Compressing objects: 100% (19\/19), done.\nremote: Total 19 (delta 2), reused 5 (delta 0), pack-reused 0\nReceiving objects: 100% (19\/19), 10.73 KiB | 10.73 MiB\/s, done.\nResolving deltas: 100% (2\/2), done.\nprometheus scm-1 is now installed in \/.rocks (license: BSD)\n\nroot@test2:\/#\n<\/code><\/pre>\n<p>\n\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0438 \u043c\u043e\u0436\u0435\u043c \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u043c\u043e\u0434\u0443\u043b\u044f\u043c<\/p>\n<pre><code class=\"lua\">root@test2:\/# curl -D - -s http:\/\/127.0.0.1:8080\/token\nHTTP\/1.1 200 Ok\nContent-length: 44\nServer: Tarantool http (tarantool v2.4.2-80-g18f2bc82d)\nConnection: keep-alive\n\n{&quot;token&quot;:&quot;e2tPq9l5Z3QZrewRf6uuoJUl3lJgSLOI&quot;}\n\nroot@test2:\/# curl -D - -s http:\/\/127.0.0.1:8080\/token\nHTTP\/1.1 200 Ok\nContent-length: 44\nServer: Tarantool http (tarantool v2.4.2-80-g18f2bc82d)\nConnection: keep-alive\n\n{&quot;token&quot;:&quot;fR5aCA84gj9eZI3gJcV0LEDl9XZAG2Iu&quot;}\n\nroot@test2:\/# curl -D - -s http:\/\/127.0.0.1:8080\/count\nHTTP\/1.1 200 Ok\nContent-length: 11\nServer: Tarantool http (tarantool v2.4.2-80-g18f2bc82d)\nConnection: keep-alive\n\n{&quot;count&quot;:2}root@test2:\/#<\/code><\/pre>\n<p>\n\/count \u043e\u0442\u0434\u0430\u0435\u0442 \u043d\u0430\u043c \u0441\u0442\u0430\u0442\u0443\u0441 200.<br \/>\n\/token \u0432\u044b\u0434\u0430\u0435\u0442 \u0442\u043e\u043a\u0435\u043d \u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u0437\u0430\u043f\u0438\u0441\u044c \u044d\u0442\u043e\u0433\u043e \u0442\u043e\u043a\u0435\u043d\u0430 \u0432 \u0431\u0430\u0437\u0443.<\/p>\n<h2>\u0422\u0435\u0441\u0442\u0438\u0440\u0443\u0435\u043c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c<\/h2>\n<p>\n\u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043c \u0431\u0435\u043d\u0447\u043c\u0430\u0440\u043a \u043d\u0430 50 000 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432. \u041a\u043e\u043d\u043a\u0443\u0440\u0435\u043d\u0442\u043d\u044b\u0445 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0431\u0443\u0434\u0435\u0442 500. <\/p>\n<pre><code class=\"lua\">root@test2:\/# ab -c 500 -n 50000 http:\/\/127.0.0.1:8080\/token\nThis is ApacheBench, Version 2.3 &lt;$Revision: 1807734 $&gt;\nCopyright 1996 Adam Twiss, Zeus Technology Ltd, http:\/\/www.zeustech.net\/\nLicensed to The Apache Software Foundation, http:\/\/www.apache.org\/\n\nBenchmarking 127.0.0.1 (be patient)\nCompleted 5000 requests\nCompleted 10000 requests\nCompleted 15000 requests\nCompleted 20000 requests\nCompleted 25000 requests\nCompleted 30000 requests\nCompleted 35000 requests\nCompleted 40000 requests\nCompleted 45000 requests\nCompleted 50000 requests\nFinished 50000 requests\n\n\nServer Software:        Tarantool\nServer Hostname:        127.0.0.1\nServer Port:            8080\n\nDocument Path:          \/token\nDocument Length:        44 bytes\n\nConcurrency Level:      500\nTime taken for tests:   14.578 seconds\nComplete requests:      50000\nFailed requests:        0\nTotal transferred:      7950000 bytes\nHTML transferred:       2200000 bytes\nRequests per second:    3429.87 [#\/sec] (mean)\nTime per request:       145.778 [ms] (mean)\nTime per request:       0.292 [ms] (mean, across all concurrent requests)\nTransfer rate:          532.57 [Kbytes\/sec] received\n\nConnection Times (ms)\n              min  mean[+\/-sd] median   max\nConnect:        0   10 103.2      0    3048\nProcessing:    12   69 685.1     15   13538\nWaiting:       12   69 685.1     15   13538\nTotal:         12   78 768.2     15   14573\n\nPercentage of the requests served within a certain time (ms)\n  50%     15\n  66%     15\n  75%     16\n  80%     16\n  90%     16\n  95%     16\n  98%     21\n  99%     42\n 100%  14573 (longest request)\nroot@test2:\/#<\/code><\/pre>\n<p>\n\u0422\u043e\u043a\u0435\u043d\u044b \u0432\u044b\u043f\u0438\u0441\u044b\u0432\u0430\u044e\u0442\u0441\u044f. \u0418 \u043c\u044b \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0435. 99% \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u043e\u0442\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0437\u0430 42 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434\u044b. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0443 \u043d\u0430\u0441 \u043f\u043e\u0440\u044f\u0434\u043a\u0430 3500 \u0437\u0430\u043f\u0440\u043e\u0441\u043e\u0432 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u043d\u0430 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u043a\u0435, \u0433\u0434\u0435 2 \u044f\u0434\u0440\u0430 \u0438 4 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u043f\u0430\u043c\u044f\u0442\u0438.<\/p>\n<p>\u0422\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u0441\u0435\u043b\u0435\u043a\u0442\u0438\u0442\u044c \u043a\u0430\u043a\u043e\u0439-\u043d\u0438\u0431\u0443\u0434\u044c 50000-\u0442\u043e\u043a\u0435\u043d \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0435\u0433\u043e \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435.<\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e http, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0431\u044d\u043a\u0433\u0440\u0430\u0443\u043d\u0434-\u0444\u0443\u043d\u043a\u0446\u0438\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043e\u0431\u0440\u0430\u0431\u0430\u0442\u044b\u0432\u0430\u044e\u0442 \u0432\u0430\u0448\u0438 \u0434\u0430\u043d\u043d\u044b\u0435. \u041f\u043b\u044e\u0441 \u0435\u0441\u0442\u044c \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0435 \u0442\u0440\u0438\u0433\u0433\u0435\u0440\u044b. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0432\u044b \u043c\u043e\u0436\u0435\u0442\u0435 \u0432\u044b\u0437\u044b\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u043d\u0430 \u0430\u043f\u0434\u0435\u0439\u0442\u0430\u0445, \u0447\u0442\u043e-\u0442\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u2013 \u0438\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u043a\u043e\u043d\u0444\u043b\u0438\u043a\u0442\u044b. <\/p>\n<p>\u041c\u043e\u0436\u043d\u043e \u043f\u0438\u0441\u0430\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f-\u0441\u043a\u0440\u0438\u043f\u0442\u044b \u043f\u0440\u044f\u043c\u043e \u0432 \u0441\u0430\u043c\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0431\u0430\u0437\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u0438 \u043d\u0438\u0447\u0435\u043c \u043d\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432\u0430\u0442\u044c\u0441\u044f, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043b\u044e\u0431\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438 \u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u043b\u044e\u0431\u0443\u044e \u043b\u043e\u0433\u0438\u043a\u0443. <\/p>\n<p>\u0410\u043f\u043f\u043b\u0438\u043a\u0435\u0439\u0448\u043d-\u0441\u0435\u0440\u0432\u0435\u0440 \u043c\u043e\u0436\u0435\u0442 \u043e\u0431\u0440\u0430\u0449\u0430\u0442\u044c\u0441\u044f \u043a \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c, \u0437\u0430\u0431\u0438\u0440\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438 \u0441\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c \u043a \u0441\u0435\u0431\u0435 \u0432 \u0431\u0430\u0437\u0443. \u0414\u0430\u043d\u043d\u044b\u0435 \u0438\u0437 \u044d\u0442\u043e\u0439 \u0431\u0430\u0437\u044b \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u0440\u0443\u0433\u0438\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. <\/p>\n<p>\u042d\u0442\u043e \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0430\u043c \u0422\u0430\u0440\u0430\u043d\u0442\u0443\u043b, \u0438 \u043d\u0435 \u043f\u0440\u0438\u0434\u0435\u0442\u0441\u044f \u043f\u0438\u0441\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435.<\/p>\n<h2>\u0412 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h2>\n<p>\n\u042d\u0442\u043e \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0440\u0432\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u044b. \u0412\u0442\u043e\u0440\u0430\u044f \u0431\u0443\u0434\u0435\u0442 \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u0430 \u0441\u043e\u0432\u0441\u0435\u043c \u0441\u043a\u043e\u0440\u043e \u0432 \u0431\u043b\u043e\u0433\u0435 Mail.ru Group, \u0438 \u043c\u044b \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u043d\u0435\u0435 \u0432 \u044d\u0442\u043e\u0442 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b.<\/p>\n<p><i>\u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e \u043f\u043e\u0441\u0435\u0449\u0430\u0442\u044c \u043c\u0435\u0440\u043e\u043f\u0440\u0438\u044f\u0442\u0438\u044f, \u0433\u0434\u0435 \u043c\u044b \u0441\u043e\u0437\u0434\u0430\u0435\u043c \u0442\u0430\u043a\u0438\u0435 \u0448\u0442\u0443\u043a\u0438 \u043e\u043d\u043b\u0430\u0439\u043d, \u0438 \u0437\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0439\u0442\u0435\u0441\u044c \u043a<noindex><a rel=\"nofollow\" href=\"https:\/\/rebrainme.com\/channel\"> \u043a\u0430\u043d\u0430\u043b\u0443 DevOps by REBRAIN<\/a><\/noindex>.<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u043f\u0435\u0440\u0435\u0435\u0437\u0434 \u0432 \u043e\u0431\u043b\u0430\u043a\u043e \u0438\u043b\u0438 \u0435\u0441\u0442\u044c \u0432\u043e\u043f\u0440\u043e\u0441\u044b \u043f\u043e \u0432\u0430\u0448\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435, <noindex><a rel=\"nofollow\" href=\"https:\/\/fevlake.com\"><b>\u0441\u043c\u0435\u043b\u043e \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0439\u0442\u0435 \u0437\u0430\u044f\u0432\u043a\u0443<\/b><\/a><\/noindex>.<\/p>\n<p>P.S. \u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c 2 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0445 \u0430\u0443\u0434\u0438\u0442\u0430 \u0432 \u043c\u0435\u0441\u044f\u0446, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0438\u043c\u0435\u043d\u043d\u043e \u0432\u0430\u0448 \u043f\u0440\u043e\u0435\u043a\u0442 \u0431\u0443\u0434\u0435\u0442 \u0432 \u0438\u0445 \u0447\u0438\u0441\u043b\u0435.<\/i><br \/>\n<br \/>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/rebrainme\/blog\/521556\/\">habr.com<\/a> <\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u044f\u0442\u044c \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Tarantool, \u043d\u043e \u0442\u043e\u0433\u0434\u0430 \u043e\u043d \u043c\u043d\u0435 \u043d\u0435 \u0437\u0430\u0448\u0435\u043b. \u041d\u043e \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u0432\u0435\u0431\u0438\u043d\u0430\u0440, \u0433\u0434\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043f\u0440\u043e Hadoop, \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 MapReduce. \u0422\u0430\u043c \u043c\u043d\u0435 \u0437\u0430\u0434\u0430\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441 \u2014 \u00ab\u0410 \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u043e\u0434 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Tarantool?\u00bb. \u0420\u0430\u0434\u0438 \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430 \u044f \u0440\u0435\u0448\u0438\u043b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443, \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u2014 \u0438 \u043d\u0430 \u044d\u0442\u043e\u0442 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":95761,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-95760","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u044f\u0442\u044c \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Tarantool, \u043d\u043e \u0442\u043e\u0433\u0434\u0430 \u043e\u043d \u043c\u043d\u0435 \u043d\u0435 \u0437\u0430\u0448\u0435\u043b. \u041d\u043e \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u0432\u0435\u0431\u0438\u043d\u0430\u0440, \u0433\u0434\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043f\u0440\u043e Hadoop, \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 MapReduce. \u0422\u0430\u043c \u043c\u043d\u0435 \u0437\u0430\u0434\u0430\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441 \u2014 \u00ab\u0410 \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u043e\u0434 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Tarantool?\u00bb. \u0420\u0430\u0434\u0438 \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430 \u044f \u0440\u0435\u0448\u0438\u043b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443, \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u2014 \u0438 \u043d\u0430 \u044d\u0442\u043e\u0442\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"et_EE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412 Tarantool \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0441\u0443\u043f\u0435\u0440\u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c\u0438. \u0412\u043e\u0442 \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u044f\u0442\u044c \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Tarantool, \u043d\u043e \u0442\u043e\u0433\u0434\u0430 \u043e\u043d \u043c\u043d\u0435 \u043d\u0435 \u0437\u0430\u0448\u0435\u043b. \u041d\u043e \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u0432\u0435\u0431\u0438\u043d\u0430\u0440, \u0433\u0434\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043f\u0440\u043e Hadoop, \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 MapReduce. \u0422\u0430\u043c \u043c\u043d\u0435 \u0437\u0430\u0434\u0430\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441 \u2014 \u00ab\u0410 \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u043e\u0434 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Tarantool?\u00bb. \u0420\u0430\u0434\u0438 \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430 \u044f \u0440\u0435\u0448\u0438\u043b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443, \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u2014 \u0438 \u043d\u0430 \u044d\u0442\u043e\u0442\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-02T23:42:55+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-02T23:42:55+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Tarantoolis on v\u00f5imalik \u00fchendada superkiire andmebaas ja rakendus nendega t\u00f6\u00f6tamiseks. Nii lihtne on see | ProHoster","description":"Viis aastat tagasi proovisin t\u00f6\u00f6tada Tarantooliga, kuid siis ei sobinud see mulle. Hiljuti korraldasin veebiseminari, kus r\u00e4\u00e4kisin Hadoobi kohta, kuidas MapReduce t\u00f6\u00f6tab. Seal k\u00fcsiti minult: \"Miks ei kasuta selle \u00fclesande jaoks Tarantoolit?\" Huvi p\u00e4rast otsustasin selle juurde tagasi minna, katsetasin viimast versiooni \u2014 ja seal","canonical_url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"et_EE","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412 Tarantool \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0441\u0443\u043f\u0435\u0440\u0431\u044b\u0441\u0442\u0440\u0443\u044e \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043d\u0438\u043c\u0438. \u0412\u043e\u0442 \u043a\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u044d\u0442\u043e \u0434\u0435\u043b\u0430\u0435\u0442\u0441\u044f | ProHoster","og:description":"\u041f\u044f\u0442\u044c \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u044f \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Tarantool, \u043d\u043e \u0442\u043e\u0433\u0434\u0430 \u043e\u043d \u043c\u043d\u0435 \u043d\u0435 \u0437\u0430\u0448\u0435\u043b. \u041d\u043e \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u044f \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b \u0432\u0435\u0431\u0438\u043d\u0430\u0440, \u0433\u0434\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u043b \u043f\u0440\u043e Hadoop, \u043f\u0440\u043e \u0442\u043e, \u043a\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 MapReduce. \u0422\u0430\u043c \u043c\u043d\u0435 \u0437\u0430\u0434\u0430\u043b\u0438 \u0432\u043e\u043f\u0440\u043e\u0441 \u2014 \u00ab\u0410 \u043f\u043e\u0447\u0435\u043c\u0443 \u043f\u043e\u0434 \u044d\u0442\u0443 \u0437\u0430\u0434\u0430\u0447\u0443 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c Tarantool?\u00bb. \u0420\u0430\u0434\u0438 \u043b\u044e\u0431\u043e\u043f\u044b\u0442\u0441\u0442\u0432\u0430 \u044f \u0440\u0435\u0448\u0438\u043b \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u043a \u043d\u0435\u043c\u0443, \u043f\u0440\u043e\u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u2014 \u0438 \u043d\u0430 \u044d\u0442\u043e\u0442","og:url":"https:\/\/prohoster.info\/et\/blog\/administrirovanie\/v-tarantool-mozhno-sovmestit-superbystruyu-bazu-dannyh-i-prilozhenie-dlya-raboty-s-nimi-vot-kak-prosto-eto-delaetsya","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-02T23:42:55+00:00","article:modified_time":"2020-10-02T23:42:55+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"95760","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:58:25","updated":"2022-09-28 05:38:56"},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/95760","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/comments?post=95760"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/posts\/95760\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media\/95761"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/media?parent=95760"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/categories?post=95760"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/et\/wp-json\/wp\/v2\/tags?post=95760"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}