Mail.ru āĻā§āĻ°ā§āĻĒā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻā§ Tarantool - āĻāĻāĻŋ Lua-āĻ āĻāĻāĻāĻŋ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°, āĻ¯āĻž āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻšāĻŋāĻ¸ā§āĻŦā§āĻ āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻšāĻ¯āĻŧ (āĻ
āĻĨāĻŦāĻž āĻŦāĻŋāĻĒāĻ°ā§āĻ¤?)āĨ¤ āĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻāĻŦāĻ āĻĻā§āĻ°ā§āĻĻāĻžāĻ¨ā§āĻ¤, āĻ¤āĻŦā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻāĻāĻ¨āĻ āĻ¸ā§āĻŽāĻžāĻšā§āĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ˛ā§āĻ˛āĻŽā§āĻŦ āĻ¸ā§āĻā§āĻ˛āĻŋāĻāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻˇā§āĻ§āĻ āĻ¨āĻ¯āĻŧ, āĻ¤āĻžāĻ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ā§āĻ° āĻ
āĻ¨ā§āĻā§āĻŽāĻŋāĻ āĻ¸ā§āĻā§āĻ˛āĻŋāĻ-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ°āĻā§āĻāĻžāĻŽ āĻ°āĻ¯āĻŧā§āĻā§ - vshard āĻŽāĻĄāĻŋāĻāĻ˛
āĻ¸ā§āĻ¸āĻāĻŦāĻžāĻĻ: āĻāĻŽāĻ°āĻž āĻāĻŋāĻā§ āĻŦāĻĄāĻŧ āĻļāĻ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°ā§āĻāĻŋ (āĻ¯ā§āĻŽāĻ¨
āĻāĻŦāĻ āĻāĻŋ, āĻ āĻŋāĻ, āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž?
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛āĻž āĻāĻā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŋāĻļāĻžāĻ°ā§āĻĄ āĻāĻā§ - āĻāĻĒāĻ¨āĻŋ āĻāĻ° āĻāĻŋ āĻāĻžāĻ¨?
āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻāĻāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĨ¤ vshard āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ Lua āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ§āĻŋāĻ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨āĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻ¤ā§āĻ° āĻāĻāĻ āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻā§āĻ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ āĻ¤āĻāĻŦ, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ§āĻ°āĻŖā§āĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ, āĻāĻ¤ā§āĻ¤āĻ°āĻ¯ā§āĻā§āĻ¯ āĻāĻŦāĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻ¨āĻŋāĻā§āĻ vshard āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§, āĻāĻāĻŋ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻāĻŋ āĻāĻ°ā§ āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨. āĻāĻāĻŋ āĻŽā§āĻ˛āĻ¤ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ YAML āĻĢāĻžāĻāĻ˛, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ Tarantool āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ°āĻ˛ā§āĻāĻ°āĻŖ āĻšāĻ˛ āĻ¯ā§ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¨āĻŋāĻā§āĻ āĻ¤āĻžāĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻ¨āĻŋāĻ°ā§āĻā§āĻˇāĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻ¤ā§āĻ° āĻāĻāĻāĨ¤
āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧāĻ¤, āĻāĻāĻž āĻāĻŦāĻžāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĨ¤ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻŦāĻŋāĻāĻžāĻļā§āĻ° āĻ¸āĻžāĻĨā§ vshard āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻā§āĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ āĻ¨ā§āĻ āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻžāĻ°āĻā§ āĻ¤āĻžāĻ° āĻāĻžāĻ āĻĨā§āĻā§ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻāĻ°ā§āĨ¤ āĻ¯āĻāĻ¨ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻŋ, āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻĒā§āĻĨāĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻŋāĻĨāĻ¸ā§āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻŋāĨ¤ 3āĻāĻŋ āĻĄā§āĻāĻž āĻ¸ā§āĻ¨ā§āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°āĻž āĻā§āĻŦ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋāĨ¤
āĻāĻŽāĻ°āĻž āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°ā§āĻāĻŋ, āĻāĻŦāĻ āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻŽāĻ°āĻž āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻŦāĻŋāĻāĻžāĻļ āĻāĻ°āĻ¤ā§ āĻĒā§āĻ°ā§āĻāĻŋ āĻ¯āĻž āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¤āĻžāĻ° āĻ¸āĻŽāĻā§āĻ° āĻā§āĻŦāĻ¨āĻāĻā§āĻ° āĻā§āĻĄāĻŧā§ āĻāĻžāĻāĻā§ āĻ¸āĻšāĻ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§: āĻ¸ā§āĻˇā§āĻāĻŋ, āĻŦāĻŋāĻāĻžāĻļ, āĻĒāĻ°ā§āĻā§āĻˇāĻž, CI/CD, āĻ°āĻā§āĻˇāĻŖāĻžāĻŦā§āĻā§āĻˇāĻŖāĨ¤
āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻžāĻ° āĻ§āĻžāĻ°āĻŖāĻž āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻā§āĻŽāĻŋāĻāĻž āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ§āĻžāĻ°āĻŖāĻž āĻ¯āĻž āĻāĻāĻāĻ¨ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻā§ āĻā§āĻĄ āĻ˛ā§āĻāĻžāĻ° āĻāĻĒāĻ° āĻĢā§āĻāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻŽāĻŋāĻāĻž āĻāĻāĻāĻŋ Tarantool āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻĨā§āĻˇā§āĻ āĻšāĻŦā§āĨ¤
āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻāĻžāĻ°ā§āĻāĻŋāĻā§āĻ° āĻŽā§āĻ˛ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯:
- āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻ āĻ°ā§āĻā§āĻ¸ā§āĻā§āĻ°ā§āĻļāĻ¨;
- āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻŽāĻŋāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻž;
- āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻāĻŦāĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ;
- āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻļāĻžāĻ°ā§āĻĄāĻŋāĻ;
- Luatest āĻā§āĻ¸ā§āĻāĻŋāĻ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻā§āĻāĻ°āĻŖ;
- WebUI āĻāĻŦāĻ API āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž;
- āĻĒā§āĻ¯āĻžāĻā§āĻāĻŋāĻ āĻāĻŦāĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ¸āĻ°āĻā§āĻāĻžāĻŽāĨ¤
āĻāĻšā§ āĻŦāĻŋāĻļā§āĻŦ!
āĻāĻŽāĻŋ āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻāĻāĻŋ āĻ¨āĻŋāĻā§āĻ āĻĻā§āĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻĨāĻžāĻĒāĻ¤ā§āĻ¯ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ˛ā§āĻĒāĻāĻŋ āĻĒāĻ°ā§ āĻ°ā§āĻā§ āĻĻā§āĻŦ āĻāĻŦāĻ āĻ¸āĻšāĻ āĻāĻŋāĻā§ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻŦāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻ§āĻ°ā§ āĻ¨āĻŋāĻ āĻ¯ā§ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻ¨āĻŋāĻā§āĻ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¯āĻž āĻŦāĻžāĻāĻŋ āĻāĻā§ āĻ¤āĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
$ tarantoolctl rocks install cartridge-cli
$ export PATH=$PWD/.rocks/bin/:$PATH
āĻāĻ āĻĻā§āĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋāĻā§āĻ˛āĻŋ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻŦā§ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻĨā§āĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻŦā§:
$ cartridge create --name myapp
āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻ¯āĻž āĻĒāĻžāĻ āĻ¤āĻž āĻšāĻ˛:
myapp/
âââ .git/
âââ .gitignore
âââ app/roles/custom.lua
âââ deps.sh
âââ init.lua
âââ myapp-scm-1.rockspec
âââ test
â âââ helper
â â âââ integration.lua
â â âââ unit.lua
â âââ helper.lua
â âââ integration/api_test.lua
â âââ unit/sample_test.lua
âââ tmp/
āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ°ā§āĻĄāĻŋāĻŽā§āĻĄ "āĻšā§āĻ¯āĻžāĻ˛ā§, āĻāĻ¯āĻŧāĻžāĻ°ā§āĻ˛ā§āĻĄ!" āĻ¸āĻš āĻāĻāĻāĻŋ āĻāĻŋāĻ āĻ¸āĻāĻā§āĻ°āĻšāĻ¸ā§āĻĨāĻ˛āĨ¤ āĻāĻŦā§āĻĻāĻ¨ āĻāĻā§ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§ (āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¨āĻŋāĻā§āĻ āĻ¸āĻš): āĻāĻ¸ā§āĻ¨ āĻāĻāĻ¨āĻ āĻāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋ:
$ tarantoolctl rocks make
$ ./init.lua --http-port 8080
āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ¨ā§āĻĄ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ āĻļāĻžāĻ°ā§āĻĄā§āĻĄ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛āĻā§āĨ¤ āĻāĻāĻāĻ¨ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻŋā§āĻ¸ā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŽāĻžāĻ¨ā§āĻˇ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻ¯āĻŧā§āĻŦ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻŽāĻžāĻāĻ¸ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¨ā§āĻĄā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻāĻĒāĻā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻāĻ¨āĻ¨ā§āĻĻ āĻāĻ°āĻž āĻā§āĻŦ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋāĨ¤ āĻāĻāĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻŋāĻā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻĒāĻ°ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻŦāĻ˛āĻŦ, āĻ¤āĻŦā§ āĻāĻāĻ¨ āĻā§āĻĄ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧāĨ¤
āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĄā§āĻā§āĻ˛āĻĒāĻŽā§āĻ¨ā§āĻ
āĻļā§āĻ§ā§ āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻāĻŽāĻ°āĻž āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻāĻŋ āĻ¯āĻž āĻ āĻŦāĻļā§āĻ¯āĻ āĻĄā§āĻāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŦā§, āĻāĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŦā§ āĻāĻŦāĻ āĻĻāĻŋāĻ¨ā§ āĻāĻāĻŦāĻžāĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĨ¤
āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻĄāĻžāĻ¯āĻŧāĻžāĻā§āĻ°āĻžāĻŽ āĻāĻāĻāĻž āĻļā§āĻ°ā§ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻāĻāĻŋāĻ¤ā§ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ°āĻžāĻāĻŋ: āĻā§āĻāĻāĻ¯āĻŧā§, āĻ¸ā§āĻā§āĻ°ā§āĻ āĻāĻŦāĻ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻā§āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻ°āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¤ā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻāĻŋāĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻā§āĻ°ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ vshard āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ, āĻāĻŽāĻ°āĻž āĻ¸ā§āĻāĻŋāĻŽā§ vshard-āĻ°āĻžāĻāĻāĻžāĻ° āĻāĻŦāĻ vshard-storage āĻ¯ā§āĻ āĻāĻ°āĻŋāĨ¤ āĻā§āĻāĻāĻ¯āĻŧā§ āĻŦāĻž āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻā§ āĻāĻāĻ¯āĻŧāĻ āĻ¸āĻā§āĻāĻ¯āĻŧāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ
ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻŦā§ āĻ¨āĻž; āĻ°āĻžāĻāĻāĻžāĻ°āĻāĻŋ āĻāĻ° āĻāĻ¨ā§āĻ¯āĻ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻāĻ āĻāĻŋāĻ¤ā§āĻ°āĻāĻŋ āĻāĻāĻ¨āĻ āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻ¨āĻž āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦ āĻāĻžāĻ°āĻŖ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻŦāĻŋāĻŽā§āĻ°ā§āĻ¤ āĻĻā§āĻāĻžāĻā§āĻā§āĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻ¨āĻ āĻĻā§āĻāĻ¤ā§ āĻšāĻŦā§ āĻā§āĻāĻžāĻŦā§ āĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ā§ āĻĒā§āĻ°āĻā§āĻā§āĻ āĻāĻ°āĻž āĻšāĻŦā§ - āĻāĻ¸ā§āĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ
āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻˇā§āĻ ā§āĻŦāĻĻā§āĻ§ āĻāĻ°āĻŋāĨ¤
āĻāĻ˛āĻžāĻĻāĻž āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤ā§ vshard-āĻ°āĻžāĻāĻāĻžāĻ° āĻāĻŦāĻ āĻā§āĻāĻāĻ¯āĻŧā§ āĻ°āĻžāĻāĻžāĻ° āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻāĻā§āĨ¤ āĻā§āĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻŦāĻžāĻ° āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¸āĻžāĻ°ā§āĻĢ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻ°āĻžāĻāĻāĻžāĻ°ā§āĻ° āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ? āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ
āĻ°ā§āĻĨāĻžā§, āĻā§āĻāĻāĻ¯āĻŧā§ āĻāĻŦāĻ vshard.router.cfg āĻāĻāĻ¯āĻŧāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĻāĻŋāĻ¨āĨ¤
āĻ¨āĻāĻļāĻž āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻž āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ āĻāĻŋāĻ˛, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻŋ, āĻāĻāĻāĻ¨ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻā§āĻĄāĻāĻŋ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, Tarnatool āĻāĻ° āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻāĻĨāĻž āĻāĻžāĻŦāĻ¤ā§ āĻāĻžāĻ āĻ¨āĻžāĨ¤ āĻāĻŽāĻžāĻā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻāĻŽāĻŋ āĻā§āĻāĻāĻ¯āĻŧā§ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻ˛āĻŋāĻā§āĻāĻŋāĨ¤ āĻ āĻĨāĻŦāĻž āĻšāĻ¯āĻŧāĻ¤ā§ āĻāĻŽāĻŋ āĻāĻŽāĻžāĻ° āĻ¸āĻšāĻāĻ°ā§āĻŽā§āĻĻā§āĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĨ¤ āĻā§āĻ¨ āĻāĻŽāĻŋ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻĒāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻāĻžāĻŽā§āĻ˛āĻžāĻ° āĻŽāĻ§ā§āĻ¯ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻšāĻŦā§? āĻāĻāĻžāĻŦā§āĻ āĻā§āĻŽāĻŋāĻāĻžāĻ° āĻ§āĻžāĻ°āĻŖāĻžāĻ° āĻāĻ¨ā§āĻŽ āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻž āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ˛ā§āĻ¯āĻŧāĻžāĻļ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¯āĻžāĻ° āĻā§āĻŦāĻ¨āĻāĻā§āĻ° āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻ°āĻāĻŋ āĻ°āĻ¯āĻŧā§āĻā§ - āĻā§āĻāĻāĻ¯āĻŧā§, āĻ°āĻžāĻāĻāĻžāĻ°, āĻ¸ā§āĻā§āĻ°ā§āĻ, āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻžāĻ°āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§ āĻāĻ°āĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻŽāĻŋāĻāĻž āĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻŋ āĻ¯āĻĨā§āĻˇā§āĻ āĻšāĻŦā§āĨ¤
āĻāĻŦāĻ āĻ¯āĻāĻ¨ āĻ¸ā§āĻā§āĻāĻŋāĻ āĻŦāĻž āĻā§āĻĒāĻžāĻĻāĻ¨ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻāĻĨāĻž āĻāĻ¸ā§, āĻ¤āĻāĻ¨ āĻāĻŽāĻ°āĻž āĻšāĻžāĻ°ā§āĻĄāĻāĻ¯āĻŧā§āĻ¯āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§ āĻ¤āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻā§āĻŽāĻŋāĻāĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻŦ:
āĻāĻĒā§āĻ˛āĻāĻŋ āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž
āĻā§āĻĨāĻžāĻ¯āĻŧ āĻā§āĻ¨ āĻā§āĻŽāĻŋāĻāĻž āĻāĻ˛āĻā§ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻā§āĻĨāĻžāĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻŦāĻ āĻāĻ "āĻā§āĻĨāĻžāĻ" āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨, āĻ¯āĻž āĻāĻŽāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻĒāĻ°ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻāĻŋāĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻ˛ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻĒā§āĻ˛āĻāĻŋāĨ¤ āĻāĻāĻžāĻ¨ā§ 3āĻāĻŋ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° 5āĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋ āĻā§āĻ°ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§:
āĻāĻŽāĻ°āĻž āĻĄā§āĻāĻž āĻšāĻžāĻ°āĻžāĻ¤ā§ āĻāĻžāĻ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻāĻ˛āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻ¯āĻ¤ā§āĻ¨ āĻ¸āĻšāĻāĻžāĻ°ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋāĨ¤ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻĻā§āĻ-āĻĢā§āĻ āĻāĻŽāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻ°āĻžāĻā§āĨ¤ āĻāĻāĻŦāĻžāĻ° āĻāĻŽāĻ°āĻž āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ, āĻāĻāĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻŦāĻ āĻ¨āĻ¤ā§āĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĨ¤ āĻāĻ° āĻĒāĻ°ā§, āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻāĻžāĻŦā§, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ
āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ¸āĻžāĻŽāĻ¯āĻŧāĻŋāĻāĻāĻžāĻŦā§ āĻ
āĻ¨ā§āĻĒāĻ˛āĻŦā§āĻ§ āĻšāĻ¤ā§ āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧ, āĻāĻžāĻ°āĻžāĻĒ āĻāĻŋāĻā§āĻ āĻāĻāĻŦā§ āĻ¨āĻžāĨ¤ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨āĻāĻŋ āĻā§āĻŦāĻ˛ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¨āĻž āĻāĻŦāĻ āĻāĻĒāĻ¨āĻŋ āĻāĻā§ āĻĨā§āĻā§āĻ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦā§āĻ¨āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻĒā§āĻ˛āĻāĻŋ āĻŦāĻŋāĻāĻžāĻā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋ āĻā§āĻˇā§āĻ ā§āĻ° āĻ¨ā§āĻ¤āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻāĻĒāĻŋ āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°āĻž āĻšāĻā§āĻā§. āĻŦāĻžāĻāĻŋāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯, āĻ¯āĻĻāĻŋāĻ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻ¸āĻžāĻšāĻ¸ā§ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻ°āĻž āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦā§āĻ° āĻāĻ¯āĻŧ āĻĒāĻžāĻ¨ āĻ¨āĻž āĻāĻŦāĻ āĻ¸āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĻžāĻ˛āĻāĻžāĻŦā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋāĻ¤ā§ āĻĄā§āĻāĻž āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻāĻŋāĻā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¯āĻžāĻ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨, āĻĻā§āĻŦāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻ āĻāĻ¨ā§āĻ¯ āĻ¨ā§āĻ¤āĻžāĻ° āĻāĻŋāĻšā§āĻ¨ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
āĻā§āĻŽāĻŋāĻāĻžāĻ° āĻā§āĻŦāĻ¨
āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¤ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻŽā§āĻ°ā§āĻ¤ āĻā§āĻŽāĻŋāĻāĻž āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻžāĻ āĻžāĻŽā§āĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ¨ā§ āĻ¨āĻž āĻā§āĻ¨ā§āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻāĻāĻžāĻŦā§āĻ, āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°āĻŽā§āĻ āĻ¨āĻž āĻāĻ°ā§āĻ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻā§āĨ¤ āĻā§āĻŽāĻŋāĻāĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ 4āĻāĻŋ āĻāĻ˛āĻŦā§āĻ¯āĻžāĻ āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻ¨āĻŋāĻā§āĻ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ˛ āĻāĻ°āĻŦā§ āĻ¤āĻžāĻ° āĻŦāĻŋāĻ¤āĻ°āĻŖāĻā§āĻ¤ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§ āĻ¯āĻž āĻ˛ā§āĻāĻž āĻāĻā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§, āĻ¯āĻžāĻ° āĻĢāĻ˛ā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻā§āĻŽāĻŋāĻāĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
function init()
function validate_config()
function apply_config()
function stop()
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻž āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻā§ init
. āĻāĻāĻŋ āĻāĻāĻŦāĻžāĻ° āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻā§āĻŽāĻŋāĻāĻž āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻŦāĻž āĻ¯āĻāĻ¨ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, box.space.create āĻļā§āĻ°ā§ āĻāĻ°āĻž, āĻ
āĻĨāĻŦāĻž āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻāĻžāĻ°ā§ āĻāĻŋāĻā§ āĻŦā§āĻ¯āĻžāĻāĻā§āĻ°āĻžāĻāĻ¨ā§āĻĄ āĻĢāĻžāĻāĻŦāĻžāĻ° āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻŦā§āĻ¯āĻŦāĻ§āĻžāĻ¨ā§ āĻāĻžāĻ āĻāĻ°āĻŦā§āĨ¤
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ init
āĻ¯āĻĨā§āĻˇā§āĻ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻā§āĻŽāĻŋāĻāĻžāĻā§āĻ˛āĻŋāĻā§ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ¨āĻŋāĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻ¯āĻž āĻāĻāĻŋ āĻāĻĒā§āĻ˛āĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻŋāĻāĻžāĻ āĻā§āĻˇāĻŖāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻāĻŦāĻ āĻāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ
āĻāĻļ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻŽāĻžāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĄā§āĻāĻž āĻ¸ā§āĻāĻŋāĻŽāĻž āĻŦāĻž āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻžāĻ°ā§āĻ° āĻā§āĻŽāĻŋāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻā§ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻ˛ validate_config
и apply_config
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻŦāĻŋāĻ¤āĻ°āĻŖāĻā§āĻ¤ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻāĻāĻāĻŋ āĻĻā§āĻŦāĻŋ-āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻ¯ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻž āĻāĻ āĻ¨āĻ¤ā§āĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨āĻāĻŋ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ°ā§āĨ¤ āĻ¯āĻāĻ¨ āĻ¸āĻŦāĻžāĻ āĻāĻāĻŽāĻ¤ āĻ¯ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ, āĻ¤āĻžāĻ°āĻĒāĻ° apply_config
.
āĻā§āĻŽāĻŋāĻāĻžāĻ°āĻ āĻāĻāĻāĻŋ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻā§ stop
, āĻ¯āĻž āĻā§āĻŽāĻŋāĻāĻžāĻ° āĻāĻāĻāĻĒā§āĻ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻŦāĻ˛āĻŋ āĻ¯ā§ āĻāĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻžāĻ°ā§āĻ° āĻāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻ, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻ¸ā§āĻ āĻĢāĻžāĻāĻŦāĻžāĻ°āĻā§āĻ˛āĻŋāĻā§ āĻĨāĻžāĻŽāĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻž āĻāĻāĻŋ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ init
.
āĻā§āĻŽāĻŋāĻāĻž āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž Lua-āĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻ˛āĻŋāĻāĻ¤ā§ āĻ āĻā§āĻ¯āĻ¸ā§āĻ¤, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻž āĻāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻā§āĻŽāĻŋāĻāĻž āĻ¨ā§āĻāĨ¤ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ°ā§āĻĨā§, āĻāĻŽāĻ°āĻž rpc (āĻ°āĻŋāĻŽā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛) āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻŽāĻĄāĻŋāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ, āĻ¯āĻž Tarantool-āĻ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ¨ā§āĻāĻŦāĻā§āĻ¸ā§āĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ¤ā§ āĻ¤ā§āĻ°āĻŋāĨ¤ āĻāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻāĻāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻĻāĻŋāĻ¨ āĻ āĻĒā§āĻā§āĻˇāĻž āĻ¨āĻž āĻāĻ°ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻļāĻŋāĻĄāĻŋāĻāĻ˛āĻžāĻ°āĻā§ āĻāĻāĻ¨āĻ āĻāĻžāĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻ¯āĻŧāĨ¤
āĻāĻ°ā§āĻāĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻā§āĻā§ āĻĻā§āĻˇ āĻ¸āĻšāĻ¨āĻļā§āĻ˛āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻžāĨ¤ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸ā§āĻŦāĻžāĻ¸ā§āĻĨā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻā§āĻˇāĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ SWIM āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻāĻ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§, āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻ¸āĻāĻāĻ āĻŋāĻ¤ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¤āĻžāĻ° āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻ¨āĻŋāĻ°ā§āĻā§āĻˇāĻŖ āĻāĻ°ā§, āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻ¨ā§āĻ¤āĻž āĻšāĻ āĻžā§ āĻ¸āĻžāĻĄāĻŧāĻž āĻĻā§āĻāĻ¯āĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻā§āĻ¯āĻŧ, āĻĒā§āĻ°āĻ¤āĻŋāĻ°ā§āĻĒāĻāĻŋ āĻ¤āĻžāĻ° āĻā§āĻŽāĻŋāĻāĻž āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸ā§āĻ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻāĻ˛āĻŽāĻžāĻ¨ āĻā§āĻŽāĻŋāĻāĻžāĻā§āĻ˛āĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻžāĻ¨ā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ
āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ¨ āĻāĻ¨ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°āĻžāĻ° āĻĢāĻ˛ā§ āĻĄā§āĻāĻž āĻĻā§āĻŦāĻ¨ā§āĻĻā§āĻŦ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ
āĻŦāĻļā§āĻ¯āĻ, āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ˛ā§āĻŽā§āĻ˛ā§āĻāĻžāĻŦā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻ
āĻŦāĻļā§āĻ¯āĻ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻŦā§āĻāĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻā§ āĻāĻāĻā§ āĻāĻŦāĻ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻ¨ā§āĻ¤āĻž āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§ āĻāĻŦāĻ āĻŽā§āĻā§āĻāĻāĻŋ āĻ¤āĻžāĻā§ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋāĻāĻŋ āĻā§āĻā§ āĻ¯āĻžāĻŦā§ āĻ¨āĻžāĨ¤
āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĨā§āĻā§, āĻāĻĒāĻ¨āĻŋ āĻ āĻ¨ā§āĻāĻŦ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¯ā§ āĻā§āĻŽāĻŋāĻāĻžāĻā§āĻ˛āĻŋ āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻžāĻ°ā§āĻāĻŋāĻ¸ā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒāĨ¤ āĻāĻ āĻ āĻ°ā§āĻĨā§, āĻ¤āĻžāĻ°āĻž āĻ āĻŋāĻ āĻ¸ā§āĻ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŽāĻĄāĻŋāĻāĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŽā§āĻ˛āĻŋāĻ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯āĻ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§āĻ° āĻā§āĻŽāĻŋāĻāĻž āĻāĻāĻ āĻā§āĻĄ āĻŦā§āĻ¸ā§ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻŦāĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ Tarantool āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻāĻ āĻā§āĻĄ āĻŦā§āĻ¸ āĻĨā§āĻā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤, āĻ¯āĻžāĻ¤ā§ āĻāĻŽāĻ°āĻž āĻ¯āĻāĻ¨ āĻļāĻŋāĻĄāĻŋāĻ¯āĻŧā§āĻ˛āĻžāĻ°āĻāĻŋ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋ āĻ¤āĻāĻ¨ āĻā§āĻ¨ āĻāĻļā§āĻāĻ°ā§āĻ¯ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻā§āĻŦāĻ˛ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ā§āĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ, āĻāĻžāĻ°āĻŖ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻāĻ°āĻŖ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻĻā§āĻŦāĻžāĻŖā§ āĻāĻ°āĻž āĻāĻŦāĻ āĻĄāĻŋāĻŦāĻžāĻ āĻāĻ°āĻž āĻā§āĻŦ āĻāĻ āĻŋāĻ¨āĨ¤
āĻĄāĻāĻžāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻā§āĻŦāĻ˛ āĻāĻāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻž "āĻāĻŽā§āĻ" āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž, āĻāĻāĻŋāĻā§ āĻ āĻ¨ā§āĻ¯ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻŋāĻ¯āĻŧā§ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻŽāĻŋāĻāĻž āĻĄāĻāĻžāĻ° āĻāĻ¨ā§āĻā§āĻāĻ¨āĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ¤ā§ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻĻā§āĻāĻŋ āĻ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻŽāĻŋāĻāĻž āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻžāĨ¤ āĻāĻāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻž āĻšāĻ¯āĻŧ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻŦāĻž āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ āĻ°ā§āĻĨā§ āĻ¨āĻ¯āĻŧ, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻā§āĻāĻ˛āĻāĻ¨āĨ¤ āĻāĻŦāĻ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧāĻ¤, āĻā§āĻŽāĻŋāĻāĻžāĻā§āĻ˛āĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸āĻŽāĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋ āĻā§āĻˇā§āĻ ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻ āĻšāĻ¤ā§ āĻšāĻŦā§, āĻāĻžāĻ°āĻŖ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻ āĻ¯ā§āĻā§āĻ¤āĻŋāĻ āĻšāĻŦā§ - āĻĄā§āĻāĻž āĻāĻāĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻāĻŋāĻ¨ā§āĻ¨āĨ¤
āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻ¸āĻ°āĻā§āĻāĻžāĻŽ
āĻāĻŽāĻŋ āĻĻā§āĻāĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛āĻžāĻŽ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°ā§āĨ¤ āĻ āĻ¨ā§āĻ¯āĻĻā§āĻ° āĻā§āĻŦāĻ¨ āĻ¸āĻšāĻ āĻāĻ°āĻ¤ā§, āĻĢā§āĻ°ā§āĻŽāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĒā§āĻ¯āĻžāĻā§āĻ RPM āĻĒā§āĻ¯āĻžāĻā§āĻ:
$ cartridge pack rpm myapp -- ŅĐŋĐ°ĐēŅĐĩŅ Đ´ĐģŅ ĐŊĐ°Ņ ./myapp-0.1.0-1.rpm
$ sudo yum install ./myapp-0.1.0-1.rpm
āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻĒā§āĻ¯āĻžāĻā§āĻāĻāĻŋāĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻ°āĻ¯āĻŧā§āĻā§: āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻāĻāĻ¯āĻŧāĻāĨ¤ RPM āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ Tarantool āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻāĻ¸āĻŦā§ āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻāĻžāĻ˛ā§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤āĨ¤ āĻāĻāĻŋ systemd āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻ˛āĻŋāĻāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻ¨ā§āĻ¯ā§āĻ¨āĻ¤āĻŽ, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° URI āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻŋāĻ¸ā§āĻŦā§ āĻ¤āĻŋāĻ¨āĻāĻŋāĻ āĻ¯āĻĨā§āĻˇā§āĻāĨ¤
$ sudo tee /etc/tarantool/conf.d/demo.yml <<CONFIG
myapp.router: {"advertise_uri": "localhost:3301", "http_port": 8080}
myapp.storage_A: {"advertise_uri": "localhost:3302", "http_enabled": False}
myapp.storage_B: {"advertise_uri": "localhost:3303", "http_enabled": False}
CONFIG
āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ nuance āĻāĻā§. āĻļā§āĻ§ā§ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻĒā§āĻ°ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻšā§āĻ¸ā§āĻāĻ¨āĻžāĻŽ āĻ¸āĻš āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĒāĻžāĻŦāĻ˛āĻŋāĻ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻŋāĨ¤ āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¯āĻžāĻ¤ā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻ¨ā§āĻĄāĻā§āĻ˛āĻŋ āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻāĻžāĻŦā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻāĻžāĻ¨ā§āĨ¤ advertise_uri āĻ āĻŋāĻāĻžāĻ¨āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ 0.0.0.0 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻžāĻ°āĻžāĻĒ āĻ§āĻžāĻ°āĻŖāĻž āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻšāĻŋāĻ°āĻžāĻāĻ¤ āĻāĻāĻĒāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤, āĻ¸āĻā§āĻ āĻŦāĻžāĻāĻ¨ā§āĻĄ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻž, āĻāĻŋāĻā§āĻ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻ˛ advertise_uri āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¨ā§āĻĄ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ āĻĻā§āĻŦā§ āĻ¨āĻžāĨ¤
āĻāĻāĻ¨ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤, āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻĄ āĻāĻāĻ¨āĻŋāĻ āĻāĻāĻžāĻ§āĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¨āĻž, āĻāĻžāĻ°ā§āĻāĻŋāĻā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋ āĻ¤āĻĨāĻžāĻāĻĨāĻŋāĻ¤ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¤āĻžāĻ¤ā§āĻā§āĻˇāĻŖāĻŋāĻ āĻāĻāĻ¨āĻŋāĻ āĻ¯āĻž āĻāĻ āĻŽāĻ¤ āĻāĻžāĻ āĻāĻ°ā§:
$ sudo systemctl start myapp@router
$ sudo systemctl start myapp@storage_A
$ sudo systemctl start myapp@storage_B
āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§, āĻāĻŽāĻ°āĻž HTTP āĻĒā§āĻ°ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻāĻŋ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻžāĻ°ā§āĻāĻŋāĻ āĻāĻ¯āĻŧā§āĻŦ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĒāĻ°āĻŋāĻŦā§āĻļāĻ¨ āĻāĻ°ā§ - 8080āĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻāĻŋāĻ¤ā§ āĻ¯āĻžāĻ¨ āĻāĻŦāĻ āĻāĻāĻŦāĻžāĻ° āĻĻā§āĻā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ:
āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻā§āĻāĻŋ āĻ¯ā§ āĻ¯āĻĻāĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻāĻ˛āĻā§, āĻ¸ā§āĻā§āĻ˛āĻŋ āĻāĻāĻ¨āĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻāĻžāĻ°ā§āĻ¤ā§āĻ āĻāĻāĻ¨āĻ āĻāĻžāĻ¨ā§ āĻ¨āĻž āĻā§ āĻāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻāĻŦāĻ āĻ¨āĻŋāĻā§ āĻĨā§āĻā§ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ°ā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ
āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻā§āĨ¤ āĻ¤āĻŦā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻĒāĻāĻ¨ā§āĻĻ āĻ¨ā§āĻ: āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§āĻ° āĻā§āĻŦāĻ¨ āĻĒā§āĻ°āĻĨāĻŽ āĻ¨ā§āĻĄā§āĻ° āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻŽāĻ°āĻž āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°ā§ āĻ
āĻ¨ā§āĻ¯āĻĻā§āĻ° āĻ¯ā§āĻ āĻāĻ°āĻŦ, āĻ¤āĻžāĻĻā§āĻ° āĻā§āĻŽāĻŋāĻāĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻŦ āĻāĻŦāĻ āĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻāĻŋāĻā§ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻŦāĻ˛ā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻ˛ā§āĻ¨ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻĒāĻžāĻ¨ā§āĻ¯āĻŧ āĻāĻ āĻā§āĻ˛āĻžāĻ¸ āĻĸāĻžāĻ˛āĻž āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ āĻāĻ°ā§āĻŽ āĻ¸āĻĒā§āĻ¤āĻžāĻš āĻĒāĻ°ā§ āĻŦāĻŋāĻļā§āĻ°āĻžāĻŽ. āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§.
āĻĢāĻ˛āĻžāĻĢāĻ˛
āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻŋ? āĻāĻāĻŋ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨, āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĻāĻŋāĻ¨, Github āĻ āĻāĻŋāĻāĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤
āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸
[1]
āĻāĻ¤ā§āĻ¸: www.habr.com