āĻāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§ āĻāĻŽāĻ°āĻž āĻā§āĻāĻžāĻŦā§ āĻāĻŦāĻ āĻā§āĻ¨ āĻŦāĻŋāĻāĻžāĻļ āĻāĻ°ā§āĻāĻŋ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻĨāĻž āĻŦāĻ˛āĻŦ
āĻāĻ¨ā§āĻāĻžāĻ°āĻ ā§āĻ¯āĻžāĻāĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ (āĻāĻ°āĻĒāĻ°ā§ - CB) āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ¸āĻš āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻ¤ā§āĻ°ā§āĻāĻŋ-āĻ¸āĻšāĻ¨āĻļā§āĻ˛ āĻŽā§āĻ¸ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĨ¤ CB āĻāĻāĻāĻŋ āĻāĻā§āĻ-āĻ˛ā§āĻĄ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻā§āĻ āĻŽāĻžāĻĒāĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻš, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž (1C āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž) āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻžāĻĒāĻ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻĒāĻŖā§āĻ¯ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ¯āĻŧāĻ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¯āĻž āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
SW āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻ āĻ¨
āĻāĻŽāĻ°āĻž āĻā§āĻ¨ āĻāĻ¨ā§āĻāĻžāĻ°āĻ ā§āĻ¯āĻžāĻāĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋ āĻ¤āĻž āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ 1C-āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻāĻžāĻļ āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¸ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻāĻā§ āĻŦāĻ˛āĻŦāĨ¤
āĻĒā§āĻ°āĻĨāĻŽāĻ¤, āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻāĻā§ āĻ¯āĻžāĻ°āĻž āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž āĻāĻŽāĻ°āĻž āĻāĻāĻ¨āĻ āĻāĻŋ āĻāĻ°āĻŋ :) āĻāĻŽāĻ°āĻž 1C:Enterprise āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻāĻŋāĨ¤ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĄā§āĻā§āĻ˛āĻĒāĻŽā§āĻ¨ā§āĻ āĻā§āĻ˛, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ° āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ°āĻ¸-āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻĒāĻ°āĻŋāĻŦā§āĻļā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧāĨ¤
āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ-āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤
1C-āĻ āĻ¤ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨: āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻ āĻ¤āĻŋāĻ¨-āĻ¸ā§āĻ¤āĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§
āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻā§āĻĄā§, āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻŦāĻ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻļāĻŋāĻ°ā§āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻā§āĻĄāĻāĻŋ āĻā§āĻĨāĻžāĻ¯āĻŧ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻŦā§ - āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ &AtClient / &AtServer (āĻāĻžāĻˇāĻžāĻ° āĻāĻāĻ°ā§āĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ &AtClient / &AtServer)āĨ¤ 1C āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻ°āĻž āĻāĻāĻ¨ āĻāĻŽāĻžāĻā§ āĻāĻ āĻŦāĻ˛ā§ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻŦā§ āĻ¯ā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻā§āĻ˛āĻŋ āĻāĻ¸āĻ˛ā§
āĻāĻĒāĻ¨āĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻā§āĻĄ āĻĨā§āĻā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻĄ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻĄ āĻĨā§āĻā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻā§āĻĄ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŽā§āĻ˛āĻŋāĻ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž, āĻ¯āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻžāĻ°āĻŖā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻāĻžāĻ°āĻŖ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻĄāĻāĻŋ āĻāĻŽāĻ¨āĻāĻžāĻŦā§ āĻ˛āĻŋāĻāĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻžāĻ¤ā§ āĻāĻāĻŋ āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ, āĻāĻāĻŋ āĻ¯ā§āĻāĻžāĻ¨ā§āĻ āĻĄāĻžāĻāĻž āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨ - āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŦāĻž āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§āĨ¤ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻĄ āĻĨā§āĻā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻĄā§ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻŽāĻ¨ āĻā§āĻ¨āĻ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¨ā§āĻāĨ¤ āĻāĻŦāĻ āĻāĻžāĻ°āĻŖ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻā§āĻĄāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¯ā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻāĻŋāĻā§ āĻāĻ˛ āĻāĻ°ā§āĻāĻŋāĻ˛ āĻ¸ā§āĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻĨā§āĻā§ āĻŦā§āĻ°āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻŽāĻ¤ā§ āĻā§āĻ āĻĨāĻžāĻāĻŦā§ āĻ¨āĻžāĨ¤
āĻā§āĻĄ āĻ¯āĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¤āĻžāĻŽ āĻā§āĻ˛āĻŋāĻ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§: āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛ āĻāĻ°āĻž āĻāĻžāĻ āĻāĻ°āĻŦā§, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¨āĻž
āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§ āĻāĻŋāĻā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻāĻžāĻ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ "āĻ˛āĻ-āĻĒā§āĻ˛ā§āĻ¯āĻŧāĻŋāĻ" āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨ā§āĻ° āĻāĻ āĻ¨ āĻļā§āĻˇ āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨āĻāĻŋ āĻĻā§āĻāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻāĻŽāĻ¨ āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻāĨ¤ āĻāĻĒāĻ¨āĻžāĻā§ āĻā§āĻļāĻ˛āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻā§āĻ°āĻŽā§ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻā§āĻĄ āĻĨā§āĻā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻāĻŋ āĻĒā§āĻ˛ āĻāĻ°ā§āĻ¨āĨ¤ āĻ¤āĻŦā§ āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋāĻā§ āĻ˛ā§āĻĄ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻā§āĻŦ āĻŽāĻžāĻ°ā§āĻāĻŋāĻ¤ āĻĻā§āĻāĻžāĻ¯āĻŧ āĻ¨āĻžāĨ¤
āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻŋāĻĢā§āĻ¨
āĻāĻ¸āĻ˛ā§ āĻ¸ā§āĻāĻŋāĻ
āĻāĻāĻāĻŋ āĻŽā§āĻ¸ā§āĻāĻŋāĻ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤ āĻĻā§āĻ°ā§āĻ¤, āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¯ā§āĻā§āĻ¯, āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻĄā§āĻ˛āĻŋāĻāĻžāĻ°āĻŋ āĻ¸āĻš, āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§āĻ° āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž āĻ¸āĻšāĨ¤ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§, āĻāĻāĻāĻŋ āĻŽā§āĻ¸ā§āĻā§āĻāĻžāĻ° (āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻāĻŋāĻĄāĻŋāĻ āĻāĻ˛) āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯āĻž 1C āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻ āĻ¨ā§āĻā§āĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻŽāĻžāĻĒāĻ¯ā§āĻā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽāĻŦāĻ°ā§āĻ§āĻŽāĻžāĻ¨ āĻ˛ā§āĻĄ āĻ¨ā§āĻĄ āĻ¸āĻāĻā§āĻ¯āĻž āĻŦā§āĻĻā§āĻ§āĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻŦā§āĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤.
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨
āĻāĻŽāĻ°āĻž āĻ¸āĻŋāĻŦāĻŋ-āĻāĻ° āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻ āĻāĻļāĻāĻŋāĻā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ 1C:Enterprise āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻāĻŽā§āĻŦā§āĻĄ āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ, āĻ¤āĻŦā§ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĒāĻŖā§āĻ¯ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻ¯āĻžāĻ° API 1C āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻā§āĻĄ āĻĨā§āĻā§ āĻāĻ˛ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻŋ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻāĻžāĻ°āĻŖā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻ¯āĻžāĻ° āĻĒā§āĻ°āĻ§āĻžāĻ¨āĻāĻŋ āĻāĻŋāĻ˛ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ 1C āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻĻāĻžāĻ¨-āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻāĻ°āĻž (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻŦāĻžāĻŖāĻŋāĻā§āĻ¯ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻāĻŋāĻ āĻŦāĻŋāĻāĻžāĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§)āĨ¤ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ 1C āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋ 1C āĻāĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻāĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ, āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻŦā§ āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĨ¤ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§, 1C āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ā§āĻ° "āĻĒāĻžāĻļā§" āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĒāĻŖā§āĻ¯ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻŋāĻŦāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻšāĻ˛ āĻ¸āĻ°ā§āĻŦā§āĻ¤ā§āĻ¤āĻŽ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨āĨ¤
āĻ¤āĻžāĻ, āĻāĻŽāĻ°āĻž āĻ¸āĻŋāĻŦāĻŋāĻā§ āĻāĻ˛āĻžāĻĻāĻž āĻĒāĻŖā§āĻ¯ āĻšāĻŋāĻ¸ā§āĻŦā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻā§āĻ āĻā§āĻŽā§āĻĒāĻžāĻ¨āĻŋāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻāĻžāĻ°āĻšā§āĻĄ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ˛āĻžāĻāĻĄā§ (wss://1cdialog.com) āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž CB āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻĻāĻŋāĻāĨ¤ āĻŦāĻĄāĻŧ āĻā§āĻ°āĻžāĻšāĻāĻ°āĻž, āĻ¤āĻŦā§, āĻ¤āĻžāĻĻā§āĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ CB āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻ¸āĻŽā§āĻā§āĻ¨ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ˛āĻžāĻāĻĄ SaaS āĻĒāĻŖā§āĻ¯ā§ āĻ
āĻ¨ā§āĻ°ā§āĻĒ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻāĻŋāĨ¤
āĻāĻŦā§āĻĻāĻ¨
āĻ˛ā§āĻĄ āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻļāĻ¨ āĻāĻŦāĻ āĻĢāĻ˛ā§āĻ āĻāĻ˛āĻžāĻ°ā§āĻ¨ā§āĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻžāĻāĻž āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŦ āĻ¨āĻž, āĻ¤āĻŦā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ, āĻāĻŽāĻ°āĻž āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻžāĻŽāĻ¨ā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻĄ āĻŦā§āĻ¯āĻžāĻ˛ā§āĻ¨ā§āĻ¸āĻžāĻ° āĻ°āĻžāĻāĻŦāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¨ā§āĻĄ āĻĨā§āĻā§ āĻ¨ā§āĻĄā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ Hazelcast āĻ āĻĒā§āĻ°āĻāĻžāĻļ/āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻžāĻāĻŦ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻŦāĻ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ - āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻā§āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĨ¤ āĻāĻāĻŋ āĻ°āĻŋāĻ¯āĻŧā§āĻ˛-āĻāĻžāĻāĻŽ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤
āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻž āĻā§āĻ¯āĻžāĻļā§
Redis, Hazelcast āĻāĻŦāĻ Ehcache āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¨āĨ¤ 2015 āĻ¸āĻžāĻ˛ā§ āĻŦāĻžāĻāĻ°ā§āĨ¤ āĻ°ā§āĻĄāĻŋāĻ¸ āĻ¸āĻŦā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°ā§āĻā§ (āĻā§āĻŦ āĻ¨āĻ¤ā§āĻ¨, āĻā§āĻ¤āĻŋāĻāĻ°), āĻ¸ā§āĻāĻžāĻ¨ā§ āĻ
āĻ¨ā§āĻ āĻŦāĻŋāĻ§āĻŋāĻ¨āĻŋāĻˇā§āĻ§ āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸ā§āĻ¨ā§āĻāĻŋāĻ¨ā§āĻ˛ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ Ehcache āĻāĻŋāĻāĻžāĻŦā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻāĻžāĻ¨ā§ āĻ¨āĻž (āĻāĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĒāĻ°ā§ āĻĻā§āĻāĻž āĻā§āĻā§)āĨ¤ āĻāĻŽāĻ°āĻž Hazelcast 3.4 āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤
Hazelcast āĻŦāĻā§āĻ¸ā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻāĻ āĻ¨ā§āĻĄ āĻŽā§āĻĄā§, āĻāĻāĻŋ āĻā§āĻŦ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻļā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĢāĻŋāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ - āĻāĻāĻŋ āĻā§āĻāĻžāĻŦā§ āĻĄāĻŋāĻ¸ā§āĻā§ āĻĄā§āĻāĻž āĻĄāĻžāĻŽā§āĻĒ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¤āĻž āĻāĻžāĻ¨ā§ āĻ¨āĻž, āĻ¯āĻĻāĻŋ āĻāĻāĻŽāĻžāĻ¤ā§āĻ° āĻ¨ā§āĻĄāĻāĻŋ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻ¤āĻŦā§ āĻĄā§āĻāĻž āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻŽāĻ°āĻž āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŋ, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻ¸āĻŽāĻžāĻ˛ā§āĻāĻ¨āĻžāĻŽā§āĻ˛āĻ āĻĄā§āĻāĻž āĻŦā§āĻ¯āĻžāĻ āĻāĻĒ āĻāĻ°āĻŋāĨ¤ āĻāĻŽāĻ°āĻž āĻā§āĻ¯āĻžāĻļā§ āĻŦā§āĻ¯āĻžāĻāĻāĻĒ āĻāĻ°āĻŋ āĻ¨āĻž - āĻāĻŽāĻ°āĻž āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻāĻāĻŋāĻ¤ āĻŦā§āĻ§ āĻāĻ°āĻŋ āĻ¨āĻžāĨ¤
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ āĻšāĻ˛:
- āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸ā§āĻļāĻ¨ā§āĻ° āĻ¸ā§āĻā§āĻ°ā§āĻāĨ¤ āĻāĻāĻāĻŋ āĻ¸ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻ¯ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ āĻ¸āĻŽāĻ¯āĻŧ āĻ˛āĻžāĻā§, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸ā§āĻļāĻ¨ āĻ°āĻžāĻāĻŋāĨ¤
- āĻā§āĻ¯āĻžāĻļā§āĨ¤ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻĒā§āĻ°ā§āĻĢāĻžāĻāĻ˛ āĻā§āĻāĻāĻā§āĻ¨ - āĻā§āĻ¯āĻžāĻļā§ āĻā§āĻ āĻāĻ°ā§āĻ¨. āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛āĻŋāĻā§āĻā§āĻ¨ - āĻāĻāĻŋ āĻā§āĻ¯āĻžāĻļā§ āĻ°āĻžāĻā§āĻ¨āĨ¤
- āĻāĻŦā§āĻĻāĻ¨ āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤ āĻ¯ā§āĻāĻžāĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻˇāĻ¯āĻŧ. āĻ¨ā§āĻĄāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻā§āĻ¨ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻāĻāĻŋ Hazelcast āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻ°āĻžāĻā§āĨ¤ āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻ¸āĻĻāĻ¸ā§āĻ¯āĻ¤āĻž āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¨ā§āĻĄāĻā§āĻ˛āĻŋ āĻāĻā§āĻ¨ā§āĻāĻāĻŋ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°ā§āĨ¤
- āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻ˛āĻāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ āĻ¨āĻ¨ā§āĻ¯ āĻā§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻāĻ¨āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ (1C āĻŦā§āĻ¸ā§āĻ° āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻ˛ā§āĻāĻ¨āĻž-āĻ¸āĻŋāĻā§āĻā§āĻ˛āĻāĻ¨):
conversationKeyChecker.check("ĐĐĐĐĐĐĐĐĐĐĐĐ");
doInClusterLock("ĐĐĐĐĐĐĐĐĐĐĐĐ", () -> {
conversationKeyChecker.check("ĐĐĐĐĐĐĐĐĐĐĐĐ");
createChannel("ĐĐĐĐĐĐĐĐĐĐĐĐ");
});
āĻāĻŽāĻ°āĻž āĻā§āĻ āĻāĻ°ā§āĻāĻŋ āĻā§āĻ¨ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛ āĻ¨ā§āĻāĨ¤ āĻ¤āĻžāĻ°āĻž āĻ¤āĻžāĻ˛āĻžāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻāĻāĻŋ āĻāĻŦāĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻā§, āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ˛āĻāĻāĻŋ āĻ¨ā§āĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§ āĻā§āĻ āĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸ā§āĻ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§ āĻāĻ°ā§āĻāĻāĻŋ āĻĨā§āĻ°ā§āĻĄ āĻā§āĻ āĻāĻ°āĻžāĻ° āĻ¸ā§āĻ¯ā§āĻ āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻāĻāĻ¨ āĻāĻāĻ āĻāĻ˛ā§āĻāĻ¨āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦā§ - āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨āĨ¤ āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻāĻāĻĄ āĻŦāĻž āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻāĻžāĻāĻž āĻ˛āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ˛āĻ āĻāĻ°āĻž āĻ āĻ¸āĻŽā§āĻāĻŦāĨ¤ āĻŦā§āĻ¸ āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ - āĻ§ā§āĻ°ā§ āĻ§ā§āĻ°ā§, āĻāĻŦāĻ āĻŦā§āĻ¸ āĻāĻāĻāĻŋ āĻāĻ°ā§āĻŖāĻž, Hazelcast āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ - āĻāĻĒāĻ¨āĻŋ āĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨.
āĻāĻāĻāĻŋ DBMS āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻā§āĻā§
PostgreSQL āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻŦā§āĻ¯āĻžāĻĒāĻ āĻāĻŦāĻ āĻ¸āĻĢāĻ˛ āĻ āĻāĻŋāĻā§āĻāĻ¤āĻž āĻāĻŦāĻ āĻāĻ DBMS āĻāĻ° āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻšāĻ¯ā§āĻāĻŋāĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ° āĻ¸āĻš, PostgreSQL āĻ¸āĻšāĻ āĻ¨āĻ¯āĻŧ - āĻāĻā§
āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻ°āĻŋāĻ˛ā§āĻļāĻ¨āĻžāĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¸ā§āĻā§āĻ˛ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛
āĻāĻŽāĻžāĻĻā§āĻ° āĻļāĻžāĻ°ā§āĻĄāĻŋāĻāĻ¯āĻŧā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻāĻŽāĻžāĻĻā§āĻ° āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻŦāĻŋāĻ˛āĻā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ āĻ¨ā§āĻĒāĻžāĻ¤ā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž āĻ§āĻ°ā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° A-āĻ¤ā§ āĻĒā§āĻ°āĻā§āĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻž - āĻĻāĻ¯āĻŧāĻž āĻāĻ°ā§ āĻāĻ āĻā§āĻŦāĻŋāĻ˛ā§āĻ° āĻāĻŋāĻā§ āĻ āĻāĻļ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° B-āĻ āĻ¸āĻ°āĻžāĻ¨ā§ āĻ¯āĻžāĻāĨ¤ āĻāĻ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤āĻāĻŋ āĻ āĻāĻžāĻ˛ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻā§āĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŋā§āĻāĻžāĻ° āĻāĻ°ā§āĻā§, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻā§āĻĻā§āĻ°āĻā§ āĻŦāĻšā§-āĻāĻžāĻĄāĻŧāĻžāĻĻāĻžāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ°āĻžāĻāĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻžāĻĄāĻŧāĻžāĻā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻžāĻāĻā§
āĻāĻ¸āĻāĻŋāĻ¤ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻāĻŦāĻ āĻā§āĻ°āĻžāĻšāĻā§āĻ° āĻ§āĻžāĻ°āĻŖāĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ¯āĻŧāĻŋāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨, āĻ¯ā§āĻŽāĻ¨ ERP āĻŦāĻž āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻāĻŋāĻ, āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻ¸āĻžāĻ° āĻĄā§āĻāĻž āĻ¸āĻšāĨ¤ āĻā§āĻ°āĻžāĻšāĻ āĻšāĻ˛ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻˇā§āĻ āĻžāĻ¨ āĻŦāĻž āĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¯āĻžāĻ° āĻĒāĻā§āĻˇā§ āĻāĻŦā§āĻĻāĻ¨āĻāĻŋ āĻ¸āĻŋāĻŦāĻŋ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŋāĻ¤āĨ¤ āĻāĻāĻāĻ¨ āĻā§āĻ°āĻžāĻšāĻā§āĻ° āĻāĻāĻžāĻ§āĻŋāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻŋāĻ¤ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ āĻāĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋ āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻŦāĻŋāĻ¨āĻŋāĻŽāĻ¯āĻŧ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻā§āĻ°āĻžāĻšāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻžāĻĄāĻŧāĻžāĻā§ āĻšāĻ¯āĻŧā§ āĻāĻ ā§āĻā§āĨ¤ āĻāĻāĻžāĻ§āĻŋāĻ āĻā§āĻ°āĻžāĻšāĻā§āĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻļāĻžāĻ°ā§āĻ°āĻŋāĻ āĻŦā§āĻ¸ā§ āĻ āĻŦāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§; āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻĻā§āĻāĻŋ āĻ¯ā§ āĻāĻŋāĻā§ āĻā§āĻ°āĻžāĻšāĻ āĻĒā§āĻ°āĻā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻĢāĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻā§, āĻāĻŽāĻ°āĻž āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĢāĻŋāĻāĻŋāĻā§āĻ¯āĻžāĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ (āĻŦāĻž āĻāĻŽāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§) āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻāĨ¤
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ°āĻžāĻāĻāĻŋāĻ āĻā§āĻŦāĻŋāĻ˛āĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ°āĻžāĻšāĻ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻ¸āĻš āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻŽā§āĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸āĻā§ āĻŦāĻžāĻ§āĻžāĻā§āĻ°āĻ¸ā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻž āĻĨā§āĻā§ āĻāĻāĻāĻžāĻ¤ā§, āĻāĻŽāĻ°āĻž āĻ°āĻžāĻāĻāĻŋāĻ āĻā§āĻŦāĻŋāĻ˛ (āĻāĻŦāĻ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻ¨ āĻāĻ¨ āĻ
āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°āĻž āĻĄā§āĻāĻž) āĻā§āĻ¯āĻžāĻļā§ āĻ°āĻžāĻāĻŋāĨ¤
āĻ¯āĻĻāĻŋ āĻā§āĻ°āĻžāĻšāĻā§āĻ° āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ§ā§āĻ° āĻšāĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻāĻŽāĻ°āĻž āĻāĻāĻŋāĻā§ āĻāĻŋāĻ¤āĻ°ā§ āĻĒāĻžāĻ°ā§āĻāĻŋāĻļāĻ¨ā§ āĻā§āĻā§ āĻĻā§āĻŦāĨ¤ āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻāĻ˛ā§āĻĒā§, āĻŦāĻĄāĻŧ āĻā§āĻŦāĻŋāĻ˛ āĻŦāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ
āĻ¯ā§āĻšā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻšāĻžāĻ°āĻžāĻ¨ā§ āĻāĻžāĻ°āĻžāĻĒ, āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋ āĻ¸āĻš āĻāĻŽāĻžāĻĻā§āĻ° āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŦā§āĻ¯āĻžāĻ āĻāĻĒ āĻāĻ°āĻŋāĨ¤ āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻĒā§āĻ°āĻ¤āĻŋāĻ˛āĻŋāĻĒāĻŋāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻāĻŽāĻŋāĻļā§āĻ°āĻŖ āĻāĻĒāĻ¨āĻžāĻā§ āĻŽā§āĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻā§āĻˇāĻ¤āĻŋāĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻŦā§āĻŽāĻž āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻŽā§āĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻāĻŦāĻ āĻāĻ° āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻĒā§āĻ°āĻ¤āĻŋāĻ°ā§āĻĒā§āĻ° āĻāĻāĻ¯ā§āĻā§ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻā§āĻˇāĻ¤āĻŋ āĻāĻāĻŦā§āĨ¤
āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻ°ā§āĻĒā§āĻ˛āĻŋāĻāĻž āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻā§āĻ˛ā§, āĻ
ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻ°ā§āĻĒā§āĻ˛āĻŋāĻāĻž āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻšāĻžāĻ°āĻŋāĻ¯āĻŧā§ āĻā§āĻ˛ā§, āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻ°ā§āĻĒā§āĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ, āĻ
ā§āĻ¯āĻžāĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻ°ā§āĻĒā§āĻ˛āĻŋāĻāĻž āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻ¸ āĻ°ā§āĻĒā§āĻ˛āĻŋāĻāĻž āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛āĻžāĻ¸ā§āĻāĻŋāĻ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨
āĻ¯ā§āĻšā§āĻ¤ā§, āĻ
āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¨āĻŋāĻ¸ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻ¸āĻŋāĻŦāĻŋāĻ āĻāĻāĻāĻ¨ āĻŽā§āĻ¸ā§āĻā§āĻāĻžāĻ°, āĻ¤āĻžāĻ āĻāĻāĻžāĻ¨ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ¤, āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ āĻāĻŦāĻ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ āĻ
āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨, āĻ
āĻ¯ā§āĻā§āĻ¤āĻŋāĻ āĻŽāĻŋāĻ˛ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ°ā§āĻĒāĻŦāĻŋāĻĻā§āĻ¯āĻžāĻā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻžāĻāĻžāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻĻā§āĻāĻžāĻŦāĻ¨ āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻŦāĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ¤ā§ āĻ¤ā§āĻ°āĻŋ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§ āĻāĻ˛āĻžāĻ¸ā§āĻāĻŋāĻ āĻ¸āĻžāĻ°ā§āĻ āĻ¸āĻžāĻ°ā§āĻ āĻāĻā§āĻāĻŋāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ
āĻāĻŋāĻĨā§āĻŦā§ āĻāĻŽāĻ°āĻž āĻā§āĻāĻā§ āĻĒā§āĻ¯āĻŧā§āĻāĻŋ
āĻāĻŦāĻ "āĻā§āĻā§āĻ¸āĻ" āĻļāĻŦā§āĻĻā§āĻ° āĻŽā§āĻ˛āĻāĻŋāĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻļā§āĻ°ā§āĻ¤ā§, āĻŽāĻžāĻāĻāĻžāĻ¨ā§ āĻāĻŦāĻ āĻļāĻŦā§āĻĻā§āĻ° āĻļā§āĻˇā§ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻŦāĻŋ
āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ā§āĻ° āĻļā§āĻ°ā§ āĻĨā§āĻā§ āĻāĻŦāĻŋāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻ¸āĻš:
- āĻŦā§āĻ¯āĻžāĻ˛āĻžāĻ¨ā§āĻ¸āĻžāĻ° āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻā§ āĻāĻ¨ā§āĻŽā§āĻā§āĻ¤; āĻāĻŽāĻžāĻĻā§āĻ° nginx āĻāĻā§, āĻāĻāĻž āĻ¯ā§āĻā§āĻ¨ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
- āĻāĻžāĻāĻž āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤ āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°ā§āĨ¤
- āĻāĻāĻāĻŋ āĻāĻ¯āĻŧā§āĻŦ āĻ¸āĻā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ
Netty . - Java 8 āĻ āĻ˛ā§āĻāĻž āĻāĻžāĻāĻž āĻ
ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨, āĻŦāĻžāĻ¨ā§āĻĄāĻŋāĻ˛ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤
āĻāĻāĻ¸āĻāĻŋāĻāĻ . āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻžāĻāĻž 10 āĻ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻāĻŦāĻ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°āĻžāĨ¤
āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻ¸āĻŽā§āĻš
CB āĻāĻ° āĻŦāĻŋāĻāĻžāĻļ āĻāĻŦāĻ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻ°āĻž āĻ¯ā§ āĻĒāĻŖā§āĻ¯āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ āĻ¤āĻžāĻ° āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧā§āĻāĻŋāĨ¤
āĻ˛ā§āĻĄ āĻā§āĻ¸ā§āĻāĻŋāĻ āĻāĻŦāĻ āĻŽā§āĻŽāĻ°āĻŋ āĻ˛āĻŋāĻ
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸āĻŋāĻŦāĻŋ āĻ°āĻŋāĻ˛āĻŋāĻā§āĻ° āĻ°āĻŋāĻ˛āĻŋāĻ āĻāĻāĻāĻŋ āĻ˛ā§āĻĄ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĨ¤ āĻāĻāĻŋ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻ¯āĻāĻ¨:
- āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻāĻŋ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻ āĻĻāĻŋāĻ¨ āĻ§āĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻ° āĻā§āĻ¨āĻ āĻ āĻ¸ā§āĻŦā§āĻāĻžāĻ° āĻāĻŋāĻ˛ āĻ¨āĻž
- āĻŽā§āĻ˛ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻāĻ°āĻžāĻŽāĻĻāĻžāĻ¯āĻŧāĻ āĻĨā§āĻ°ā§āĻļāĻšā§āĻ˛ā§āĻĄ āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°ā§āĻ¨āĻŋ
- āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻšā§āĻ°āĻžāĻ¸ 10% āĻāĻ° āĻŦā§āĻļāĻŋ āĻ¨āĻ¯āĻŧ
āĻāĻŽāĻ°āĻž āĻĄā§āĻāĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻŋ - āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻĒā§āĻ°ā§āĻĄāĻžāĻāĻļāĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻĨā§āĻā§ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻā§āĻ°āĻžāĻšāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻ, āĻāĻ° āĻ¸āĻāĻā§āĻ¯āĻž 5 āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻŖ āĻāĻ°āĻŋ (āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻāĻ˛ā§āĻāĻ¨āĻž, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž) āĻāĻŦāĻ āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻŋāĨ¤
āĻāĻŽāĻ°āĻž āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻ ā§āĻ¯āĻžāĻāĻļāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ˛ā§āĻĄ āĻā§āĻ¸ā§āĻāĻŋāĻ āĻāĻ°āĻŋ:
- āĻĒā§āĻĄāĻŧāĻ¨ āĻĒāĻ°ā§āĻā§āĻˇāĻž
- āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻāĻ¯ā§āĻ
- āĻā§āĻ°āĻžāĻšāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°ā§āĻ¸ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻ°āĻž āĻāĻ¯āĻŧā§āĻāĻļ āĻĨā§āĻ°ā§āĻĄ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŋ, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻž āĻ¨āĻž āĻĨāĻžāĻŽāĻŋāĻ¯āĻŧā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ˛ā§āĻĄ āĻāĻ°ā§: āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛āĻŋāĻā§āĻ¨, āĻāĻ˛ā§āĻāĻ¨āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨, āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻŽāĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°āĻŋ (āĻāĻŽāĻžāĻ° āĻ āĻĒāĻ āĻŋāĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻžāĻ¨, āĻāĻžāĻāĻā§ āĻ˛āĻŋāĻā§āĻ¨) āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤āĻā§āĻ˛āĻŋ (āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻ āĻ¨ā§āĻ¯ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§āĻ¨, āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°ā§āĻ¨)āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¸ā§āĻā§āĻ°ā§āĻ¸ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻ āĻāĻļāĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻāĻāĻ°āĻāĻŽ:
- āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ˛āĻ āĻāĻ¨
- āĻāĻĒāĻ¨āĻžāĻ° āĻ āĻĒāĻ āĻŋāĻ¤ āĻĨā§āĻ°ā§āĻĄ āĻ āĻ¨ā§āĻ°ā§āĻ§
- āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻĄāĻŧāĻžāĻ° 50% āĻ¸ā§āĻ¯ā§āĻ
- āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛ā§āĻāĻžāĻ° 50% āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž
- āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§:
- āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĨā§āĻ°ā§āĻĄ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° 20% āĻ¸ā§āĻ¯ā§āĻ
- āĻāĻ˛ā§āĻŽā§āĻ˛ā§āĻāĻžāĻŦā§ āĻ¤āĻžāĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§
- āĻāĻŋāĻ¤āĻ°ā§ āĻāĻ¸ā§
- āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻŦāĻžāĻ°ā§āĻ¤āĻž, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻĒā§āĻ°ā§āĻĢāĻžāĻāĻ˛
- āĻāĻ āĻĨā§āĻ°ā§āĻĄ āĻĨā§āĻā§ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻĒāĻžāĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§
- āĻāĻ˛ā§āĻāĻ¨āĻžāĻ° āĻŦāĻžāĻāĻ°ā§
- 20 āĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ
- āĻ˛āĻ āĻāĻāĻ āĻāĻ°ā§, āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻ° āĻļā§āĻ°ā§āĻ¤ā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
- āĻāĻāĻāĻŋ āĻā§āĻ¯āĻžāĻāĻŦāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°ā§ (āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻŋāĻ¤ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ā§āĻ° āĻā§āĻĄ āĻĨā§āĻā§ āĻŽā§āĻ¸ā§āĻāĻŋāĻ āĻ
āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°ā§)
- āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĄā§āĻāĻž āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° 50% āĻ¸ā§āĻ¯ā§āĻ (āĻŦāĻŋāĻļā§āĻˇ āĻāĻ˛ā§āĻāĻ¨āĻž)
- āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ˛ā§āĻāĻžāĻ° 50% āĻ¸ā§āĻ¯ā§āĻ
"āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻāĻ¯ā§āĻ" āĻĻā§āĻļā§āĻ¯āĻāĻ˛ā§āĻĒ āĻāĻāĻāĻŋ āĻāĻžāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻ°āĻ¯āĻŧā§āĻā§: āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ°āĻž āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻā§āĻ¨, āĻ¤āĻŦā§ āĻāĻāĻ¨āĻ āĻāĻĄāĻŧāĻŋāĻ¤ āĻšāĻ¨āĻ¨āĻŋāĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¸āĻāĻžāĻ˛ā§ 09:00 āĻ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāĻ° āĻāĻžāĻ˛ā§ āĻāĻ°ā§, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¯ā§āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¨ā§āĻ°āĻŦ āĻĨāĻžāĻā§āĨ¤ āĻāĻ āĻā§āĻ˛ā§āĻ°āĻž āĻŦāĻŋāĻĒāĻā§āĻāĻ¨āĻ, āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ¨ā§āĻ āĻāĻā§ - āĻ¤āĻžāĻĻā§āĻ° āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° PING/PONG āĻāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ°āĻž āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻ°āĻžāĻā§ (āĻ¤āĻžāĻ°āĻž āĻ°āĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž - āĻāĻŦāĻ āĻšāĻ āĻžā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻžāĻ°ā§āĻ¤āĻž)āĨ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻāĻŋ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĒā§āĻ¨āĻ°ā§āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°ā§ āĻ¯āĻāĻ¨ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻŦāĻŋāĻĒā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻ§āĻž āĻāĻ¨ā§āĻāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ˛āĻ āĻāĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°ā§āĻ¸ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻŽāĻ¤ā§ āĻĻā§āĻāĻžāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋāĻ° āĻĢā§āĻāĻžāĻ¸ āĻāĻ āĻĒā§āĻ°āĻĨāĻŽ āĻāĻ¨āĻĒā§āĻā§āĻ° āĻāĻĒāĻ° āĻ āĻŦāĻŋāĻāĻ˛ - āĻ¯āĻžāĻ¤ā§ āĻā§āĻ¨āĻ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ¨āĻž āĻšāĻ¯āĻŧ (āĻāĻāĻāĻ¨ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻĒāĻĄāĻŧā§ āĻ¯āĻžāĻā§āĻā§ - āĻāĻ°āĻ āĻāĻžāĻ°āĻžāĻĒ āĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ¸āĻž āĻāĻ āĻŋāĻ¨)āĨ¤
āĻā§āĻ°āĻžāĻšāĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻĻā§āĻļā§āĻ¯āĻāĻ˛ā§āĻĒ āĻĒā§āĻ°āĻĨāĻŽ āĻ˛āĻā§āĻ āĻĨā§āĻā§ āĻāĻĻā§āĻā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°ā§āĻ¸ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻŋāĻ˛āĻžāĻŽ āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻāĻŋ āĻāĻŋāĻ āĻŋāĻĒāĻ¤ā§āĻ°ā§ āĻ§ā§āĻ° āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ°āĻž āĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛ā§āĻ¨ āĻāĻŦāĻ āĻāĻžāĻāĻŽāĻāĻāĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻā§āĨ¤ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§āĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ
āĻ˛ā§āĻĄ āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ° āĻšāĻŋāĻ¸ā§āĻŦā§ āĻāĻŽāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŋ
āĻ¸ā§āĻāĻžāĻ¨ā§āĻ āĻāĻŽāĻ°āĻž āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤
āĻā§āĻ°ā§āĻ¤āĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻļā§āĻ°ā§ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻĨā§āĻ, āĻāĻŽāĻ°āĻž āĻāĻŦāĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§āĻāĻŋ āĻ¯ā§ JMeter-āĻ āĻŽā§āĻŽāĻ°āĻŋ āĻ˛āĻŋāĻ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻĒā§āĻ˛āĻžāĻāĻāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻāĻ˛āĻžāĻĻāĻž āĻŦāĻĄāĻŧ āĻāĻ˛ā§āĻĒ, 176āĻāĻŋ āĻ¤āĻžāĻ°āĻž āĻ¸āĻš āĻāĻāĻŋāĻ° āĻāĻŋāĻĨā§āĻŦā§ 132āĻāĻŋ āĻāĻžāĻāĻāĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ˛ā§āĻāĻ āĻ¨āĻŋāĻā§ 2015 āĻ¸āĻžāĻ˛ āĻĨā§āĻā§ āĻāĻāĻŋāĻā§ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋāĻŦāĻĻā§āĻ§ āĻāĻ°ā§āĻ¨āĻ¨āĻŋ (āĻāĻŽāĻ°āĻž āĻāĻāĻŋ 2015 āĻ¸āĻžāĻ˛ā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛āĻžāĻŽ, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻāĻŋ āĻ¸āĻ¨ā§āĻĻā§āĻš āĻāĻžāĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ˛ā§āĻ¨āĻŋ), āĻŽā§āĻŽāĻ°āĻŋ āĻĢāĻžāĻāĻ¸ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻāĻŋāĻĨā§āĻŦ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž, 7āĻāĻŋ āĻ
āĻĒā§āĻ°āĻāĻžāĻļāĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻ
āĻ¨ā§āĻ°ā§āĻ§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ āĻĒā§āĻ˛āĻžāĻāĻāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻ
āĻ¨ā§āĻā§āĻ°āĻš āĻāĻ°ā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻ˛ā§āĻāĻ¨āĻžāĻā§āĻ˛āĻŋ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨:
- āĻāĻāĻāĻŋ āĻŽāĻžāĻ˛ā§āĻāĻŋ-āĻĨā§āĻ°ā§āĻĄā§āĻĄ āĻĒāĻ°āĻŋāĻŦā§āĻļā§, āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻ˛āĻŋāĻā§āĻāĻĄāĻ˛āĻŋāĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻ°āĻž āĻĒā§āĻ¯āĻŧā§āĻāĻŋ
āĻāĻ¨āĻĒāĻŋāĻ āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽā§ āĻāĻāĻŋ āĻšāĻ¯āĻŧ ConcurrentLinkedDeque āĻ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°ā§ āĻŦāĻž āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻāĻāĻĄ āĻŦā§āĻ˛āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĨāĻŽ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋhttps://github.com/maciejzaleski/JMeter-WebSocketSampler/issues/43 ). - āĻŽā§āĻŽāĻ°āĻŋ āĻ˛āĻŋāĻ, āĻ¸āĻāĻ¯ā§āĻ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻāĻ¯ā§āĻ āĻ¤āĻĨā§āĻ¯ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž (
https://github.com/maciejzaleski/JMeter-WebSocketSampler/issues/44 ). - āĻ¸ā§āĻā§āĻ°āĻŋāĻŽāĻŋāĻ āĻŽā§āĻĄā§ (āĻ¯āĻāĻ¨ āĻ¨āĻŽā§āĻ¨āĻžāĻ° āĻļā§āĻˇā§ āĻāĻ¯āĻŧā§āĻŦāĻ¸āĻā§āĻ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻŦā§ āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻžāĻ¯āĻŧ āĻāĻ°āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ), āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž (
https://github.com/maciejzaleski/JMeter-WebSocketSampler/issues/19 ).
āĻāĻāĻŋ āĻāĻŋāĻĨā§āĻŦā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋāĨ¤ āĻāĻŽāĻ°āĻž āĻ¯āĻž āĻāĻ°ā§āĻāĻŋ:
- āĻ¨āĻŋāĻ¯āĻŧā§āĻā§
āĻāĻ˛āĻŋāĻ°āĻžāĻ¨ āĻā§āĻāĻžāĻ¨ā§āĻ° āĻāĻžāĻāĻāĻž (@elyrank) - āĻāĻāĻŋ 1 āĻāĻŦāĻ 3 āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°ā§ - āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž 2
- 9.2.14 āĻĨā§āĻā§ 9.3.12 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻā§āĻāĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
- ThreadLocal āĻ āĻŽā§āĻĄāĻŧāĻžāĻ¨ā§ SimpleDateFormat; āĻ¸āĻŋāĻŽā§āĻĒāĻ˛āĻĄā§āĻāĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻĨā§āĻ°ā§āĻĄ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¨āĻ¯āĻŧ āĻ¯āĻž āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽā§ NPE āĻ¤ā§ āĻ¨ā§āĻ¤ā§āĻ¤ā§āĻŦ āĻĻā§āĻ¯āĻŧ
- āĻāĻ°ā§āĻāĻāĻŋ āĻŽā§āĻŽāĻ°āĻŋ āĻ˛āĻŋāĻ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ (āĻ¸āĻāĻ¯ā§āĻ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻšāĻ˛ā§ āĻā§āĻ˛āĻāĻžāĻŦā§ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻā§āĻā§)
āĻāĻŦāĻ āĻāĻāĻ¨āĻ āĻāĻāĻŋ āĻĒā§āĻ°āĻŦāĻžāĻšāĻŋāĻ¤!
āĻ¸ā§āĻŽā§āĻ¤āĻŋ āĻāĻ āĻĻāĻŋāĻ¨ā§ āĻ¨āĻ¯āĻŧ, āĻĻā§āĻ āĻĻāĻŋāĻ¨ā§ āĻļā§āĻˇ āĻšāĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻā§āĨ¤ āĻā§āĻ¨ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻ˛ āĻ¨āĻž, āĻāĻŽāĻ°āĻž āĻāĻŽ āĻĨā§āĻ°ā§āĻĄ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ, āĻ¤āĻŦā§ āĻāĻžāĻ°āĻāĻŋ āĻāĻā§āĻ¨ā§āĻā§āĻ° āĻāĻĒāĻ°āĨ¤ āĻāĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻ āĻ¸āĻĒā§āĻ¤āĻžāĻšā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻĨā§āĻˇā§āĻ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻāĻŋāĻ˛āĨ¤
āĻĻā§āĻ āĻĻāĻŋāĻ¨ āĻšāĻ¯āĻŧā§ āĻā§āĻ˛...
āĻāĻāĻ¨ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻ¸ā§āĻŽā§āĻ¤āĻŋ āĻĢā§āĻ°āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻā§āĻā§āĨ¤ āĻ˛āĻāĻā§āĻ˛āĻŋ āĻĻā§āĻāĻžāĻ¯āĻŧ āĻ¯ā§ āĻāĻ¯āĻŧā§āĻ āĻĻāĻŋāĻ¨ā§āĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĒāĻ°ā§, āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ āĻ¸ā§āĻŽā§āĻ¤āĻŋāĻļāĻā§āĻ¤āĻŋāĻ° āĻ āĻāĻžāĻŦ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ āĻāĻŋāĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻŋāĻā§āĻā§āĻˇāĻŖ āĻĒāĻ°ā§ āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻāĻŋ āĻāĻ˛āĻžāĻĻāĻž āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻ¨ā§āĻĄāĻā§āĻ˛āĻŋ āĻāĻā§ āĻāĻā§ āĻŽāĻžāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĨāĻžāĻā§āĨ¤ āĻāĻŽāĻ°āĻž āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ JVisualVM āĻā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ "āĻāĻ°ā§āĻ§ā§āĻŦāĻāĻžāĻŽā§ āĻāĻ°āĻžāĻ¤" āĻĻā§āĻā§āĻāĻŋ - āĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤āĻāĻžāĻŦā§ GC āĻ¨āĻžāĻŽā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻā§āĻ¨ā§āĻāĻžāĻŦā§āĻ āĻŽā§āĻŽāĻ°āĻŋāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĻ¨āĻŋāĨ¤
āĻĻā§āĻāĻž āĻā§āĻ˛ āĻ¯ā§ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ 3.4-āĻ, āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° / āĻŽāĻžāĻ˛ā§āĻāĻŋāĻŽā§āĻ¯āĻžāĻĒ (map.destroy()) āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻŽā§āĻŽāĻ°āĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻŽā§āĻā§āĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻž:
āĻŦāĻžāĻāĻāĻŋ āĻāĻāĻ¨ 3.5 āĻ āĻ āĻŋāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻāĻ¨ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻŋāĻ˛āĨ¤ āĻāĻŽāĻ°āĻž āĻāĻ¤āĻŋāĻļā§āĻ˛ āĻ¨āĻžāĻŽ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¨āĻ¤ā§āĻ¨ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻŽā§āĻ¯āĻžāĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛ā§āĻāĻŋāĨ¤ āĻā§āĻĄ āĻāĻ āĻŽāĻ¤ āĻāĻŋāĻā§ āĻĻā§āĻāĻžāĻ¯āĻŧ:
public void join(Authentication auth, String sub) {
MultiMap<UUID, Authentication> sessions = instance.getMultiMap(sub);
sessions.put(auth.getUserId(), auth);
}
public void leave(Authentication auth, String sub) {
MultiMap<UUID, Authentication> sessions = instance.getMultiMap(sub);
sessions.remove(auth.getUserId(), auth);
if (sessions.size() == 0) {
sessions.destroy();
}
}
āĻāĻ˛ āĻāĻ°ā§āĻ¨:
service.join(auth1, "ĐĐĐĐĢĐ_ĐĄĐĐĐĐŠĐĐĐĐ¯_Đ_ĐĐĐĄĐŖĐĐĐĐĐĐ_UUID1");
service.join(auth2, "ĐĐĐĐĢĐ_ĐĄĐĐĐĐŠĐĐĐĐ¯_Đ_ĐĐĐĄĐŖĐĐĐĐĐĐ_UUID1");
āĻŽāĻžāĻ˛ā§āĻāĻŋāĻŽā§āĻ¯āĻžāĻĒ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻĒāĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻ¯āĻāĻ¨ āĻāĻāĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŋāĻ˛ āĻ¨āĻž āĻ¤āĻāĻ¨ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻŽāĻ°āĻž āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ˛āĻžāĻŽ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° āĻļā§āĻ°ā§ āĻāĻ°āĻŦ , āĻā§ āĻšāĻŦā§ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻĒāĻļāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ, āĻāĻŦāĻ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻšāĻŦā§ āĻ¸ā§āĻļāĻ¨ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ (āĻ¯āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨)āĨ¤
public void join(Authentication auth, String sub) {
addValueToMap(sub, auth.getSessionId());
}
public void leave(Authentication auth, String sub) {
removeValueFromMap(sub, auth.getSessionId());
}
āĻāĻžāĻ°ā§āĻ āĻāĻ¨ā§āĻ¨āĻ¤ āĻšāĻ¯āĻŧā§āĻā§.
āĻ˛ā§āĻĄ āĻā§āĻ¸ā§āĻāĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŽāĻ°āĻž āĻāĻ° āĻāĻŋ āĻļāĻŋāĻā§āĻāĻŋ
- JSR223 āĻā§ āĻā§āĻ°ā§āĻāĻŋāĻ¤ā§ āĻ˛āĻŋāĻāĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻ¸āĻāĻāĻ˛āĻ¨ āĻā§āĻ¯āĻžāĻļā§ āĻ
āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ - āĻāĻāĻŋ āĻ
āĻ¨ā§āĻ āĻĻā§āĻ°ā§āĻ¤āĨ¤
āĻ˛āĻŋāĻāĻ . - āĻā§āĻŽāĻŋāĻāĻžāĻ°-āĻĒā§āĻ˛āĻžāĻāĻāĻ¨ āĻāĻžāĻ°ā§āĻāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖā§āĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻāĻž āĻ¸āĻšāĻāĨ¤
āĻ˛āĻŋāĻāĻ .
Hazelcast āĻ¸āĻā§āĻā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻ āĻāĻŋāĻā§āĻāĻ¤āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§
āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒāĻŖā§āĻ¯ āĻāĻŋāĻ˛, āĻāĻŽāĻ°āĻž āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 3.4.1 āĻĨā§āĻā§ āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻāĻŋ, āĻāĻāĻ¨ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 3.9.2 āĻ°āĻ¯āĻŧā§āĻā§ (āĻāĻ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 3.10)āĨ¤
āĻāĻāĻĄāĻŋ āĻĒā§āĻ°āĻāĻ¨ā§āĻŽ
āĻāĻŽāĻ°āĻž āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻāĻŋāĨ¤ āĻāĻ¸ā§āĻ¨ āĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻŋ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ¤ā§āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻ°ā§āĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻā§āĻ°āĻŽ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻ¨āĻ¯āĻŧ, āĻā§āĻŦāĻŋāĻ˛āĻā§āĻ˛āĻŋ āĻļāĻžāĻ°ā§āĻĄāĻŋāĻāĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻĄāĻŧāĻŋāĻ¤ - āĻĻā§āĻāĻž āĻ¯āĻžāĻā§āĻā§ āĻ¯ā§ DB1 āĻ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž ID=1 āĻāĻŦāĻ DB1 āĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž ID=2 āĻ°āĻ¯āĻŧā§āĻā§, āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻāĻāĻĄāĻŋāĻāĻŋ āĻāĻ˛āĻžāĻ¸ā§āĻāĻŋāĻāĻ¸āĻžāĻ°ā§āĻā§, āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ āĻ°āĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ°āĻžāĻĒ āĻŦāĻŋāĻˇāĻ¯āĻŧ āĻšāĻ˛ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĻā§āĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻĄā§āĻāĻž āĻāĻŽāĻžāĻ¤ā§ āĻāĻžāĻ¨ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻ¯ā§ āĻāĻ āĻā§āĻ°āĻžāĻšāĻāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¯āĻĨā§āĻˇā§āĻ)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻāĻŽāĻŋāĻ āĻ˛āĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻŋ āĻ°āĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻāĻāĻĄāĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻžāĻ°āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¸ āĻšāĻ˛ āĻāĻ¨āĻā§āĻ°āĻŋāĻŽā§āĻ¨ā§āĻāĻāĻ¨ā§āĻĄāĻā§āĻ āĻĒā§āĻ˛āĻžāĻ¸ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧāĨ¤ āĻ¤āĻŦā§ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻāĻ°āĻ āĻ āĻ¨ā§āĻā§āĻ˛ āĻāĻŋāĻā§ āĻ°āĻ¯āĻŧā§āĻā§ - āĻĢā§āĻ˛ā§āĻāĻāĻāĻĄāĻŋāĻā§āĻ¨āĻžāĻ°ā§āĻāĻ°āĨ¤ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§ āĻāĻāĻĄāĻŋāĻ° āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻ¸āĻ° āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĒā§āĻ°āĻĨāĻŽāĻāĻŋ - 1 āĻĨā§āĻā§ 10 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧāĻāĻŋ - 000 āĻĨā§āĻā§ 10 āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻŦāĻ āĻāĻ°āĻ āĻ āĻ¨ā§āĻ āĻāĻŋāĻā§āĨ¤ āĻāĻāĻ¨ āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¨āĻŋāĻā§āĻ°āĻžāĻ āĻ¨āĻ¤ā§āĻ¨ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻāĻ¸ā§āĻ¯ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻž āĻāĻāĻŋāĻā§ āĻāĻžāĻ°āĻŋ āĻāĻ°āĻž āĻĒāĻ°āĻŋāĻ¸ā§āĻŽāĻž āĻļā§āĻˇ āĻšāĻ¯āĻŧāĨ¤ āĻĻā§āĻ°ā§āĻ¤ āĻāĻžāĻ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ ā§āĻ¯āĻžāĻĒāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž (āĻāĻŦāĻ Hazelcast āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ) āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ°āĻŽ āĻļā§āĻ°ā§ āĻāĻ°ā§ - āĻ¤āĻžāĻ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ, āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĨ¤ āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻāĻāĻŋ āĻŦāĻŋāĻāĻžāĻļāĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻžāĻā§ āĻā§āĻŦ āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¨āĻ¯āĻŧ āĻā§āĻ¨ āĻāĻāĻĄāĻŋāĻā§āĻ˛āĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻ¤āĻŦā§ āĻ¤āĻžāĻ°āĻž āĻŽāĻ¤āĻā§āĻĻā§ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋ āĻ¯āĻžāĻ¯āĻŧā§ˇ āĻāĻŽāĻ°āĻž āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻāĻ¨ āĻāĻ°ā§āĻāĻŋ āĻāĻŦāĻ UUID-āĻ¤ā§ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°ā§āĻāĻŋāĨ¤
āĻ¯āĻžāĻāĻšā§āĻ, āĻ¯āĻžāĻ°āĻž āĻā§āĻāĻāĻžāĻ°ā§āĻ° āĻŽāĻ¤ā§ āĻšāĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸ā§āĻ¨ā§āĻāĻžāĻ¸ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ°āĻ¯āĻŧā§āĻā§ - āĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻāĻĒāĻ°ā§ āĻ¸ā§āĻ¨ā§āĻĢā§āĻ˛ā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻžāĻ¨ā§ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻ¨āĻ āĻāĻāĻŋāĻ° āĻāĻžāĻāĻžāĻāĻžāĻāĻŋ āĻĒāĻžāĻāĻ¨āĻŋāĨ¤
TransactionalMap.replace
āĻāĻ°ā§āĻāĻāĻŋ āĻŦāĻŋāĻ¸ā§āĻŽāĻ¯āĻŧ: TransactionalMap.replace āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž:
@Test
public void replaceInMap_putsAndGetsInsideTransaction() {
hazelcastInstance.executeTransaction(context -> {
HazelcastTransactionContextHolder.setContext(context);
try {
context.getMap("map").put("key", "oldValue");
context.getMap("map").replace("key", "oldValue", "newValue");
String value = (String) context.getMap("map").get("key");
assertEquals("newValue", value);
return null;
} finally {
HazelcastTransactionContextHolder.clearContext();
}
});
}
Expected : newValue
Actual : oldValue
āĻāĻŽāĻžāĻā§ getForUpdate āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻŋāĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ˛āĻŋāĻāĻ¤ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛:
protected <K,V> boolean replaceInMap(String mapName, K key, V oldValue, V newValue) {
TransactionalTaskContext context = HazelcastTransactionContextHolder.getContext();
if (context != null) {
log.trace("[CACHE] Replacing value in a transactional map");
TransactionalMap<K, V> map = context.getMap(mapName);
V value = map.getForUpdate(key);
if (oldValue.equals(value)) {
map.put(key, newValue);
return true;
}
return false;
}
log.trace("[CACHE] Replacing value in a not transactional map");
IMap<K, V> map = hazelcastInstance.getMap(mapName);
return map.replace(key, oldValue, newValue);
}
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĄā§āĻāĻž āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻžāĻ°āĻ āĻ¨āĻ¯āĻŧ, āĻ¤āĻžāĻĻā§āĻ° āĻ˛ā§āĻ¨āĻĻā§āĻ¨ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻāĻā§ āĻ¯ā§ IMap āĻāĻžāĻ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ TransactionalMap āĻāĻ° āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨ā§āĻāĨ¤
āĻĄāĻžāĻāĻ¨āĻāĻžāĻāĻŽ āĻāĻžāĻĄāĻŧāĻžāĻ āĻ¨āĻ¤ā§āĻ¨ JAR āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻĒā§āĻ°āĻĨāĻŽā§, āĻāĻŽāĻ°āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ āĻŦāĻā§āĻā§āĻāĻā§āĻ˛āĻŋ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻā§āĻ˛āĻžāĻ¸ āĻāĻā§, āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻĒāĻĄāĻŧāĻ¤ā§ āĻāĻžāĻāĨ¤ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ:
IMap<UUID, Application> map = hazelcastInstance.getMap("application");
map.set(id, application);
āĻāĻŽāĻ°āĻž āĻĒāĻĄāĻŧāĻŋ:
IMap<UUID, Application> map = hazelcastInstance.getMap("application");
return map.get(id);
āĻ¸āĻŦāĻāĻŋāĻā§ āĻāĻžāĻ āĻāĻ°āĻā§āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ:
map.addIndex("subscriberId", false);
āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻ¤ā§āĻ¤āĻž āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¤āĻžāĻ°āĻž āĻāĻāĻāĻŋ ClassNotFoundException āĻĒā§āĻ¤ā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĨ¤ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ āĻ¸ā§āĻāĻā§ āĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻāĻŋāĻ˛, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ˛āĻžāĻ¸ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŋāĻā§āĻ āĻāĻžāĻ¨āĻ¤ āĻ¨āĻž āĻāĻŦāĻ āĻāĻ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ JAR āĻ°āĻžāĻāĻ¤ā§ āĻā§āĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ āĻāĻŽāĻ°āĻž āĻ āĻŋāĻ āĻ¤āĻžāĻ āĻāĻ°ā§āĻāĻŋ, āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻāĻžāĻ āĻāĻ°ā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĻā§āĻāĻž āĻĻāĻŋāĻ¯āĻŧā§āĻā§: āĻā§āĻ˛āĻžāĻ¸ā§āĻāĻžāĻ°āĻā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻŦāĻ¨ā§āĻ§ āĻ¨āĻž āĻāĻ°ā§ āĻā§āĻāĻžāĻŦā§ JAR āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻŦā§āĻ¨? āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻ āĻĒā§āĻ°āĻ¤āĻŋ-āĻ¨ā§āĻĄ āĻāĻĒāĻĄā§āĻā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ JAR āĻŦāĻžāĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻ āĻŽā§āĻšā§āĻ°ā§āĻ¤ā§, āĻāĻŽāĻ°āĻž āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧā§āĻāĻŋ āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻāĻ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻžāĻĄāĻŧāĻžāĻ āĻŦāĻžāĻāĻāĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻ¸āĻ°ā§āĻŦā§āĻĒāĻ°āĻŋ, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻāĻā§ āĻā§-āĻŽā§āĻ˛ā§āĻ¯ā§āĻ° āĻĻā§āĻāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻāĻ˛āĻŦā§? āĻāĻ¸āĻ˛ā§ āĻ¤āĻž āĻ¨āĻž. āĻāĻāĻžāĻ¨ā§ āĻāĻŦāĻžāĻ° IMap āĻāĻŦāĻ TransactionalMap āĻāĻ° āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻāĻ°āĻŖāĨ¤ āĻ¯ā§āĻāĻžāĻ¨ā§ IMap āĻĒāĻžāĻ¤ā§āĻ¤āĻž āĻĻā§āĻ¯āĻŧ āĻ¨āĻž, TransactionalMap āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻŋāĻā§āĻˇā§āĻĒ āĻāĻ°ā§āĨ¤
IMap. āĻāĻŽāĻ°āĻž 5000āĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻ˛āĻŋāĻāĻŋ, āĻāĻŽāĻ°āĻž āĻĒāĻĄāĻŧāĻŋāĨ¤ āĻ¸āĻŦāĻāĻŋāĻā§āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤āĨ¤
@Test
void get5000() {
IMap<UUID, Application> map = hazelcastInstance.getMap("application");
UUID subscriberId = UUID.randomUUID();
for (int i = 0; i < 5000; i++) {
UUID id = UUID.randomUUID();
String title = RandomStringUtils.random(5);
Application application = new Application(id, title, subscriberId);
map.set(id, application);
Application retrieved = map.get(id);
assertEquals(id, retrieved.getId());
}
}
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ˛ā§āĻ¨āĻĻā§āĻ¨ā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ ClassNotFoundException āĻĒāĻžāĻ:
@Test
void get_transaction() {
IMap<UUID, Application> map = hazelcastInstance.getMap("application_t");
UUID subscriberId = UUID.randomUUID();
UUID id = UUID.randomUUID();
Application application = new Application(id, "qwer", subscriberId);
map.set(id, application);
Application retrievedOutside = map.get(id);
assertEquals(id, retrievedOutside.getId());
hazelcastInstance.executeTransaction(context -> {
HazelcastTransactionContextHolder.setContext(context);
try {
TransactionalMap<UUID, Application> transactionalMap = context.getMap("application_t");
Application retrievedInside = transactionalMap.get(id);
assertEquals(id, retrievedInside.getId());
return null;
} finally {
HazelcastTransactionContextHolder.clearContext();
}
});
}
3.8-āĻ, āĻāĻāĻāĻžāĻ° āĻā§āĻ˛āĻžāĻ¸ āĻĄāĻŋāĻĒā§āĻ˛āĻ¯āĻŧāĻŽā§āĻ¨ā§āĻ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ āĻāĻŦāĻŋāĻ°ā§āĻā§āĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻŽāĻžāĻ¸ā§āĻāĻžāĻ° āĻ¨ā§āĻĄ āĻŽāĻ¨ā§āĻ¨ā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻŋāĻ¤ā§ JAR āĻĢāĻžāĻāĻ˛ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻāĻāĻ¨ āĻāĻŽāĻ°āĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻāĻŋ: āĻāĻŽāĻ°āĻž āĻ¨āĻŋāĻā§āĻ°āĻžāĻ JSON-āĻ āĻ¸āĻŋāĻ°āĻŋāĻ¯āĻŧāĻžāĻ˛āĻžāĻāĻ āĻāĻ°āĻŋ āĻāĻŦāĻ Hazelcast-āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŋāĨ¤ āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§āĻ° āĻāĻŽāĻžāĻĻā§āĻ° āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻāĻ āĻ¨ āĻāĻžāĻ¨āĻžāĻ° āĻĻāĻ°āĻāĻžāĻ° āĻ¨ā§āĻ āĻāĻŦāĻ āĻāĻŽāĻ°āĻž āĻĄāĻžāĻāĻ¨āĻāĻžāĻāĻŽ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĨ¤ āĻĄā§āĻŽā§āĻāĻ¨ āĻ āĻŦāĻā§āĻā§āĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋāĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻŋ āĻ¸āĻŽā§āĻāĻŦ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ āĻŦāĻā§āĻā§āĻ āĻ˛ā§āĻā§, āĻ¯āĻāĻ¨ āĻĒā§āĻ°āĻžāĻ¨ā§āĻāĻŋ āĻāĻāĻ¨āĻ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻžāĻ¨ā§ āĻ¨āĻžāĨ¤ āĻāĻŦāĻ āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§, āĻ¨āĻ¤ā§āĻ¨ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛āĻŋāĻāĻŋāĻ¤ āĻŦāĻ¸ā§āĻ¤ā§āĻā§āĻ˛āĻŋ āĻĒāĻĄāĻŧā§ āĻ¯ā§āĻā§āĻ˛āĻŋāĻ° āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¨ā§āĻāĨ¤ āĻāĻŽāĻ°āĻž āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻŋ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ°āĻ˛āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻ°āĻž āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻŋ āĻ¨āĻž āĻŦāĻž āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĢā§āĻ˛āĻŋ āĻ¨āĻž, āĻāĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¯ā§āĻ āĻāĻ°ā§ āĻā§āĻ˛āĻžāĻ¸āĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻŋāĨ¤
āĻāĻŋāĻāĻžāĻŦā§ āĻāĻŽāĻ°āĻž āĻāĻā§āĻ āĻāĻ°ā§āĻŽāĻā§āĻˇāĻŽāĻ¤āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨
āĻšā§āĻ¯āĻžāĻā§āĻ˛āĻāĻžāĻ¸ā§āĻā§ āĻāĻžāĻ°āĻāĻŋ āĻā§āĻ°āĻŋāĻĒ āĻāĻžāĻ˛, āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§ āĻĻā§āĻāĻŋ āĻā§āĻ°āĻŋāĻĒ āĻāĻžāĻ°āĻžāĻĒ
āĻā§āĻ¯āĻžāĻļā§ āĻĄā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻžāĻ˛, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻĻāĻžāĻŦāĻŋ āĻ¨āĻž āĻāĻ°āĻž āĻ°ā§āĻāĻ°ā§āĻĄāĻā§āĻ˛āĻŋāĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¨āĻžāĨ¤ āĻāĻŋ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻž āĻ¸ā§āĻĨāĻŋāĻ° āĻāĻ°āĻž āĻāĻ¨ā§āĻ¨āĻ¯āĻŧāĻ¨ā§āĻ° āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻŦāĻžāĻāĻŋāĨ¤ āĻ¯āĻāĻ¨ āĻ¨āĻ¤ā§āĻ¨ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻāĻŽāĻ°āĻž PostgreSQL (log_min_duration_statement āĻĨā§āĻā§ 0) āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻļā§āĻ¨ā§āĻ° āĻ˛āĻāĻŋāĻ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻŋ āĻāĻŦāĻ 20 āĻŽāĻŋāĻ¨āĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ˛ā§āĻĄ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻžāĻ˛āĻžāĻā§ˇ pgFouine āĻāĻŦāĻ pgBadger āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋāĻ˛āĻŋāĻāĻŋāĻā§āĻ˛āĻŋ āĻ¸āĻāĻā§āĻšā§āĻ¤ āĻ˛āĻāĻā§āĻ˛āĻŋāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ā§ˇ āĻĒā§āĻ°āĻ¤āĻŋāĻŦā§āĻĻāĻ¨ā§, āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻ§ā§āĻ° āĻāĻŦāĻ āĻāĻ¨ āĻāĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ˛āĻŋ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻŋāĨ¤ āĻ§ā§āĻ°āĻāĻ¤āĻŋāĻ° āĻĒā§āĻ°āĻļā§āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻ¨ (āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž) āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŋ āĻāĻŦāĻ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻŋ āĻ¯ā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻļā§āĻ¨ āĻ¤ā§āĻŦāĻ°āĻžāĻ¨ā§āĻŦāĻŋāĻ¤ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻāĻŋāĻ¨āĻžāĨ¤ āĻāĻāĻ āĻāĻ¨āĻĒā§āĻ āĻāĻ¨ā§āĻ¯ āĻāĻ¨ āĻāĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻā§āĻ¯āĻžāĻļā§ āĻāĻžāĻ˛ āĻĢāĻŋāĻ. āĻāĻŽāĻ°āĻž āĻĒā§āĻ°āĻļā§āĻ¨ āĻ°āĻžāĻāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋ "āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ", āĻĒā§āĻ°āĻ¤āĻŋ āĻā§āĻ¯ā§āĻ¯āĻŧāĻžāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻā§āĻŦāĻŋāĻ˛āĨ¤
āĻļā§āĻˇāĻŖ
CB āĻāĻāĻāĻŋ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ 2017 āĻ¸āĻžāĻ˛ā§āĻ° āĻŦāĻ¸āĻ¨ā§āĻ¤ā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻĨāĻ CB āĻĒāĻŖā§āĻ¯ āĻ¨āĻā§āĻŽā§āĻŦāĻ° 2017 āĻ āĻĒā§āĻ°āĻāĻžāĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ (āĻ¸ā§āĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻŦāĻŋāĻāĻž āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻāĻŋāĻ˛)āĨ¤
āĻ
āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ āĻŦāĻāĻ°ā§āĻ°āĻ āĻŦā§āĻļāĻŋ āĻ¸āĻŽāĻ¯āĻŧ āĻ§āĻ°ā§, āĻ¸āĻŋāĻŦāĻŋ āĻ
āĻ¨āĻ˛āĻžāĻāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻā§āĻ¨āĻ āĻā§āĻ°ā§āĻ¤āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¨ā§āĻāĨ¤ āĻāĻŽāĻ°āĻž āĻ
āĻ¨āĻ˛āĻžāĻāĻ¨ āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĒāĻ°ā§āĻ¯āĻŦā§āĻā§āĻˇāĻŖ āĻāĻ°āĻŋ
CB āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻ¨ā§āĻāĻŋāĻ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻāĻžāĻ°ā§ āĻāĻ¸ā§: RPM, DEB, MSIāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻāĻ¨ā§āĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻāĻ EXE āĻāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻāĻāĻ āĻāĻ¨āĻ¸ā§āĻāĻ˛āĻžāĻ° āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻŋ āĻ¯āĻž āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°, Hazelcast āĻāĻŦāĻ Elasticsearch āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻŽāĻ°āĻž āĻāĻ¨āĻ¸ā§āĻāĻ˛ā§āĻļāĻ¨ā§āĻ° āĻāĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋāĻā§ "āĻĄā§āĻŽā§" āĻŦāĻ˛ā§āĻāĻŋāĻ˛āĻžāĻŽ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻ¨ āĻāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ āĻšāĻ¯āĻŧā§ āĻā§āĻā§ āĻ¯ā§ āĻāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ¨āĻĒā§āĻ°āĻŋāĻ¯āĻŧ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĨ¤
āĻāĻ¤ā§āĻ¸: www.habr.com