เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

Mail.ru เจธเจฎเฉ‚เจน เจตเจฟเฉฑเจš เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ Tarantool เจนเฉˆ - เจ‡เจน Lua เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจฐเจตเจฐ เจนเฉˆ, เจœเฉ‹ เจ•เจฟ เจ‡เฉฑเจ• เจกเฉ‡เจŸเจพเจฌเฉ‡เจธ (เจœเจพเจ‚ เจ‡เจธเจฆเฉ‡ เจ‰เจฒเจŸ?) เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจตเฉ€ เจฆเฉเฉฑเจ—เจฃเจพ เจนเฉˆเฅค เจ‡เจน เจคเฉ‡เจœเจผ เจ…เจคเฉ‡ เจ เฉฐเจกเจพ เจนเฉˆ, เจชเจฐ เจ‡เฉฑเจ• เจธเจฐเจตเจฐ เจฆเฉ€เจ†เจ‚ เจธเจฎเจฐเฉฑเจฅเจพเจตเจพเจ‚ เจ…เจœเฉ‡ เจตเฉ€ เจ…เจธเฉ€เจฎเจค เจจเจนเฉ€เจ‚ เจนเจจเฅค เจตเจฐเจŸเฉ€เจ•เจฒ เจธเจ•เฉ‡เจฒเจฟเฉฐเจ— เจตเฉ€ เจ•เฉ‹เจˆ เจ‰เจชเจพเจ… เจจเจนเฉ€เจ‚ เจนเฉˆ, เจ‡เจธเจฒเจˆ เจคเจฐเจจเจŸเฉ‚เจฒ เจ•เฉ‹เจฒ เจนเจฐเฉ€เจœเฉฑเจŸเจฒ เจธเจ•เฉ‡เจฒเจฟเฉฐเจ— เจฒเจˆ เจŸเฉ‚เจฒ เจนเจจ - vshard เจฎเฉ‹เจกเฉ€เจŠเจฒ [1]. เจ‡เจน เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เจˆ เจธเจฐเจตเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจกเฉ‡เจŸเจพ เจจเฉ‚เฉฐ เจธเจผเจพเจฐเจก เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจชเจฐ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจธเจจเฉ‚เฉฐ เจธเฉˆเจŸ เจ…เจช เจ•เจฐเจจ เจ…เจคเฉ‡ เจตเจชเจพเจฐเจ• เจคเจฐเจ• เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจจ เจฒเจˆ เจ‡เจธ เจจเจพเจฒ เจŸเจฟเฉฐเจ•เจฐ เจ•เจฐเจจเจพ เจชเฉˆเจ‚เจฆเจพ เจนเฉˆเฅค

เจšเฉฐเจ—เฉ€ เจ–เจผเจฌเจฐ: เจ…เจธเฉ€เจ‚ เจ•เฉเจ เจตเฉฑเจกเฉ‡ เจธเจผเจพเจŸ เจ‡เจ•เฉฑเจ เฉ‡ เจ•เฉ€เจคเฉ‡ เจนเจจ (เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ [2], [3]) เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจฌเจฃเจพเจ‡เจ† เจนเฉˆ เจœเฉ‹ เจ‡เจธ เจธเจฎเฉฑเจธเจฟเจ† เจฆเฉ‡ เจนเฉฑเจฒ เจจเฉ‚เฉฐ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจฐเจฒ เจ•เจฐเฉ‡เจ—เจพเฅค

Tarantool เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจ—เฉเฉฐเจเจฒเจฆเจพเจฐ เจตเจฟเจคเจฐเจฟเจค เจชเฉเจฐเจฃเจพเจฒเฉ€เจ†เจ‚ เจฆเฉ‡ เจตเจฟเจ•เจพเจธ เจฒเจˆ เจ‡เฉฑเจ• เจจเจตเจพเจ‚ เจขเจพเจ‚เจšเจพ เจนเฉˆเฅค เจ‡เจน เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจฆเฉ€เจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจนเฉฑเจฒ เจ•เจฐเจจ เจฆเฉ€ เจฌเจœเจพเจ เจตเจชเจพเจฐเจ• เจคเจฐเจ• เจฒเจฟเจ–เจฃ 'เจคเฉ‡ เจงเจฟเจ†เจจ เจฆเฉ‡เจฃ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค เจ•เฉฑเจŸ เจฆเฉ‡ เจนเฉ‡เจ เจพเจ‚ เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจพเจ‚เจ—เจพ เจ•เจฟ เจ‡เจน เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจ•เจฟเจตเฉ‡เจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจตเฉฐเจกเฉ€เจ†เจ‚ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจฒเจฟเจ–เจฃเจพ เจนเฉˆ.

เจ…เจธเจฒ เจตเจฟเฉฑเจš เจธเจฎเฉฑเจธเจฟเจ† เจ•เฉ€ เจนเฉˆ?

เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจŸเจพเจฐเฉˆเจ‚เจŸเฉเจฒเจพ เจนเฉˆ, เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจตเฉ€เจธเจผเจพเจฐเจก เจนเฉˆ - เจคเฉเจธเฉ€เจ‚ เจนเฉ‹เจฐ เจ•เฉ€ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเฉ‹?

เจธเจญ เจคเฉ‹เจ‚ เจชเจนเจฟเจฒเจพเจ‚, เจ‡เจน เจธเจนเฉ‚เจฒเจค เจฆเฉ€ เจ—เฉฑเจฒ เจนเฉˆ. 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-router เจ…เจคเฉ‡ vshard-storage เจธเจผเจพเจฎเจฒ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค เจจเจพ เจคเจพเจ‚ เจ—เฉ‡เจŸเจตเฉ‡ เจ…เจคเฉ‡ เจจเจพ เจนเฉ€ เจธเจผเจกเจฟเจŠเจฒเจฐ เจธเจŸเฉ‹เจฐเฉ‡เจœ เจจเฉ‚เฉฐ เจธเจฟเฉฑเจงเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจเจ•เจธเฉˆเจธ เจ•เจฐเฉ‡เจ—เจพ; เจฐเจพเจŠเจŸเจฐ เจ‰เจธเฉ‡ เจฒเจˆ เจนเฉˆ, เจœเจฟเจธ เจฒเจˆ เจ‡เจน เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจธเฉ€เฅค

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจ‡เจน เจšเจฟเฉฑเจคเจฐ เจ…เจœเฉ‡ เจตเฉ€ เจฌเจฟเจฒเจ•เฉเจฒ เจจเจนเฉ€เจ‚ เจฆเจฐเจธเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ…เจธเฉ€เจ‚ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจตเจฟเฉฑเจš เจ•เฉ€ เจฌเจฃเจพเจตเจพเจ‚เจ—เฉ‡ เจ•เจฟเจ‰เจ‚เจ•เจฟ เจญเจพเจ— เจธเฉฐเจ–เฉ‡เจช เจฆเจฟเจ–เจพเจˆ เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจเฅค เจธเจพเจจเฉ‚เฉฐ เจ…เจœเฉ‡ เจตเฉ€ เจ‡เจน เจฆเฉ‡เจ–เจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ เจ•เจฟ เจ‡เจน เจ…เจธเจฒ เจคเจฐเจจเจŸเฉ‚เจฒ 'เจคเฉ‡ เจ•เจฟเจตเฉ‡เจ‚ เจชเฉ‡เจธเจผ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ - เจ†เจ“ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฆเฉเจ†เจฐเจพ เจธเจพเจกเฉ‡ เจญเจพเจ—เจพเจ‚ เจจเฉ‚เฉฐ เจธเจฎเฉ‚เจน เจ•เจฐเฉ€เจเฅค

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจตเฉฑเจ–-เจตเฉฑเจ– เจฎเฉŒเจ•เจฟเจ†เจ‚ 'เจคเฉ‡ vshard-เจฐเจพเจŠเจŸเจฐ เจ…เจคเฉ‡ เจ—เฉ‡เจŸเจตเฉ‡ เจจเฉ‚เฉฐ เจฐเฉฑเจ–เจฃ เจฆเจพ เจ•เฉ‹เจˆ เจฎเจคเจฒเจฌ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจœเฉ‡เจ•เจฐ เจ‡เจน เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจฐเจพเจŠเจŸเจฐ เจฆเฉ€ เจœเจผเจฟเฉฐเจฎเฉ‡เจตเจพเจฐเฉ€ เจนเฉˆ เจคเจพเจ‚ เจธเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจตเจพเจฐ เจซเจฟเจฐ เจจเฉˆเฉฑเจŸเจตเจฐเจ• เจธเจฐเจซ เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจ•เจฟเจ‰เจ‚ เจนเฉˆ? เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ‰เจธเฉ‡ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจšเจฒเจพเจ‡เจ† เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ. เจญเจพเจต, เจ—เฉ‡เจŸเจตเฉ‡ เจ…เจคเฉ‡ vshard.router.cfg เจฆเฉ‹เจตเฉ‡เจ‚ เจ‡เฉฑเจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจตเจฟเฉฑเจš เจธเจผเฉเจฐเฉ‚ เจ•เฉ€เจคเฉ‡ เจ—เจ เจนเจจ, เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฅเจพเจจเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เฉฐเจŸเจฐเฉˆเจ•เจŸ เจ•เจฐเจจ เจฆเจฟเจ“เฅค

เจกเจฟเจœเจผเจพเจ‡เจจ เจชเฉœเจพเจ… 'เจคเฉ‡, เจคเจฟเฉฐเจจ เจญเจพเจ—เจพเจ‚ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจธเฉ€, เจชเจฐ เจฎเฉˆเจ‚, เจ‡เฉฑเจ• เจกเจฟเจตเฉˆเจฒเจชเจฐ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš, เจ•เฉ‹เจก เจฒเจฟเจ–เจฆเฉ‡ เจธเจฎเฉ‡เจ‚, เจคเจฐเจจเจพเจŸเฉ‚เจฒ เจฆเฉ‡ เจคเจฟเฉฐเจจ เจ‰เจฆเจพเจนเจฐเจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฌเจพเจฐเฉ‡ เจจเจนเฉ€เจ‚ เจธเฉ‹เจšเจฃเจพ เจšเจพเจนเฉเฉฐเจฆเจพ. เจฎเฉˆเจจเฉ‚เฉฐ เจŸเฉˆเจธเจŸ เจšเจฒเจพเจ‰เจฃ เจ…เจคเฉ‡ เจœเจพเจ‚เจš เจ•เจฐเจจ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ เจ•เจฟ เจฎเฉˆเจ‚ เจ—เฉ‡เจŸเจตเฉ‡ เจจเฉ‚เฉฐ เจธเจนเฉ€ เจขเฉฐเจ— เจจเจพเจฒ เจฒเจฟเจ–เจฟเจ† เจนเฉˆเฅค เจœเจพเจ‚ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจฎเฉˆเจ‚ เจ†เจชเจฃเฉ‡ เจธเจพเจฅเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพ เจฆเจพ เจชเฉเจฐเจฆเจฐเจธเจผเจจ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเจพเจ‚เฅค เจฎเฉˆเจจเฉ‚เฉฐ เจคเจฟเฉฐเจจ เจ•เจพเจชเฉ€เจ†เจ‚ เจคเฉˆเจจเจพเจค เจ•เจฐเจจ เจฆเฉ€ เจชเจฐเฉ‡เจธเจผเจพเจจเฉ€ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจ•เจฟเจ‰เจ‚ เจฒเฉฐเจ˜เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ? เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจฆเจพ เจธเฉฐเจ•เจฒเจช เจชเฉˆเจฆเจพ เจนเฉ‹เจ‡เจ† เจธเฉ€เฅค เจ‡เฉฑเจ• เจฐเฉ‹เจฒ เจ‡เฉฑเจ• เจจเจฟเจฏเจฎเจค เจฒเฉ‚เจธเจผ เจฎเฉ‹เจกเฉ€เจŠเจฒ เจนเฉˆ เจœเจฟเจธเจฆเจพ เจœเฉ€เจตเจจ เจšเฉฑเจ•เจฐ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจฆเฉเจ†เจฐเจพ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ‡เจธ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš เจ‰เจนเจจเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจšเจพเจฐ เจนเจจ - เจ—เฉ‡เจŸเจตเฉ‡, เจฐเจพเจŠเจŸเจฐ, เจธเจŸเฉ‹เจฐเฉ‡เจœ, เจธเจผเจกเจฟเจŠเจฒเจฐเฅค เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจตเจฟเฉฑเจš เจนเฉ‹เจฐ เจตเฉ€ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจธเจพเจฐเฉ€เจ†เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจตเจฟเฉฑเจš เจšเจฒเจพเจ‡เจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เจน เจ•เจพเจซเจผเฉ€ เจนเฉ‹เจตเฉ‡เจ—เจพ.

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจ…เจคเฉ‡ เจœเจฆเฉ‹เจ‚ เจธเจŸเฉ‡เจœเจฟเฉฐเจ— เจœเจพเจ‚ เจ‰เจคเจชเจพเจฆเจจ เจฒเจˆ เจคเฉˆเจจเจพเจค เจ•เจฐเจจ เจฆเฉ€ เจ—เฉฑเจฒ เจ†เจ‰เจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจ…เจธเฉ€เจ‚ เจนเจพเจฐเจกเจตเฉ‡เจ…เจฐ เจธเจฎเจฐเฉฑเจฅเจพเจตเจพเจ‚ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจนเจฐเฉ‡เจ• เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจจเฉ‚เฉฐ เจ†เจชเจฃเฉ€เจ†เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจฆเจพ เจธเฉˆเฉฑเจŸ เจธเฉŒเจ‚เจชเจพเจ‚เจ—เฉ‡:

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจŸเฉŒเจชเฉ‹เจฒเฉ‹เจœเฉ€ เจชเฉเจฐเจฌเฉฐเจงเจจ

เจ•เจฟเจนเฉœเฉ€เจ†เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจšเฉฑเจฒ เจฐเจนเฉ€เจ†เจ‚ เจนเจจ เจ‡เจธ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจ•เจฟเจคเฉ‡ เจจเจพ เจ•เจฟเจคเฉ‡ เจธเจŸเฉ‹เจฐ เจ•เฉ€เจคเฉ€ เจœเจพเจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€ เจนเฉˆเฅค เจ…เจคเฉ‡ เจ‡เจน "เจ•เจฟเจคเฉ‡" เจตเฉฐเจกเฉ€ เจ—เจˆ เจธเฉฐเจฐเจšเจจเจพ เจนเฉˆ, เจœเจฟเจธเจฆเจพ เจฎเฉˆเจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจœเจผเจฟเจ•เจฐ เจ•เฉ€เจคเจพ เจนเฉˆ. เจ‡เจธ เจฌเจพเจฐเฉ‡ เจธเจญ เจคเฉ‹เจ‚ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจšเฉ€เจœเจผ เจ•เจฒเฉฑเจธเจŸเจฐ เจŸเฉ‹เจชเฉ‹เจฒเฉ‹เจœเฉ€ เจนเฉˆเฅค เจ‡เฉฑเจฅเฉ‡ 3 เจคเจฐเจจเจŸเฉ‚เจฒ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจฆเฉ‡ 5 เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจธเจฎเฉ‚เจน เจนเจจ:

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจ…เจธเฉ€เจ‚ เจกเจพเจŸเจพ เจ—เฉเจ†เจ‰เจฃเจพ เจจเจนเฉ€เจ‚ เจšเจพเจนเฉเฉฐเจฆเฉ‡, เจ‡เจธเจฒเจˆ เจ…เจธเฉ€เจ‚ เจšเฉฑเจฒ เจฐเจนเฉ€เจ†เจ‚ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจฌเจพเจฐเฉ‡ เจœเจพเจฃเจ•เจพเจฐเฉ€ เจจเฉ‚เฉฐ เจธเจพเจตเจงเจพเจจเฉ€ เจจเจพเจฒ เจตเจฐเจคเจฆเฉ‡ เจนเจพเจ‚เฅค เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจฆเฉ‹-เจชเฉœเจพเจ… เจฆเฉ€ เจชเฉเจฐเจคเฉ€เจฌเฉฑเจงเจคเจพ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจ•เฉ‡ เจธเฉฐเจฐเจšเจจเจพ เจฆเจพ เจงเจฟเจ†เจจ เจฐเฉฑเจ–เจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• เจตเจพเจฐ เจœเจฆเฉ‹เจ‚ เจ…เจธเฉ€เจ‚ เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจ…เฉฑเจชเจกเฉ‡เจŸ เจ•เจฐเจจเจพ เจšเจพเจนเฉเฉฐเจฆเฉ‡ เจนเจพเจ‚, เจ‡เจน เจชเจนเจฟเจฒเจพเจ‚ เจœเจพเจ‚เจš เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจธเจพเจฐเฉ€เจ†เจ‚ เจ‰เจฆเจพเจนเจฐเจฃเจพเจ‚ เจ‰เจชเจฒเจฌเจง เจนเจจ เจ…เจคเฉ‡ เจจเจตเฉ€เจ‚ เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจฒเจˆ เจคเจฟเจ†เจฐ เจนเจจเฅค เจ‡เจธ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจฆเฉ‚เจœเจพ เจชเฉœเจพเจ… เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจฆเจพ เจนเฉˆ. เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚, เจญเจพเจตเฉ‡เจ‚ เจ‡เฉฑเจ• เจ•เจพเจชเฉ€ เจ…เจธเจฅเจพเจˆ เจคเฉŒเจฐ 'เจคเฉ‡ เจ…เจฃเจ‰เจชเจฒเจฌเจง เจนเฉ‹เจฃ เจฆเฉ‡ เจฌเจพเจตเจœเฉ‚เจฆ, เจ•เฉเจ เจตเฉ€ เจฌเฉเจฐเจพ เจจเจนเฉ€เจ‚ เจนเฉ‹เจตเฉ‡เจ—เจพ. เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจธเจฟเจฐเจซเจผ เจฒเจพเจ—เฉ‚ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ เจœเจพเจตเฉ‡เจ—เจพ เจ…เจคเฉ‡ เจคเฉเจธเฉ€เจ‚ เจชเจนเจฟเจฒเจพเจ‚ เจนเฉ€ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจตเฉ‡เจ–เฉ‹เจ—เฉ‡เฅค

เจŸเฉŒเจชเฉ‹เจฒเฉ‹เจœเฉ€ เจญเจพเจ— เจตเจฟเฉฑเจš เจตเฉ€, เจนเจฐเฉ‡เจ• เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจธเจฎเฉ‚เจน เจฆเฉ‡ เจจเฉ‡เจคเจพ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจฎเจพเจชเจฆเฉฐเจก เจฆเจฐเจธเจพเจ เจ—เจ เจนเจจเฅค เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจ‡เจน เจ‰เจน เจ•เจพเจชเฉ€ เจนเฉˆ เจœเฉ‹ เจฐเจฟเจ•เจพเจฐเจก เจ•เฉ€เจคเฉ€ เจœเจพ เจฐเจนเฉ€ เจนเฉˆเฅค เจฌเจพเจ•เฉ€ เจ…เจ•เจธเจฐ เจธเจฟเจฐเจซเจผ เจชเฉœเฉเจนเจจ เจฒเจˆ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ, เจนเจพเจฒเจพเจ‚เจ•เจฟ เจ•เฉเจ เจ…เจชเจตเจพเจฆ เจนเฉ‹ เจธเจ•เจฆเฉ‡ เจนเจจเฅค เจ•เจฆเฉ‡-เจ•เจฆเฉ‡ เจฌเจนเจพเจฆเจฐ เจกเจฟเจตเฉˆเจฒเจชเจฐ เจŸเจ•เจฐเจพเจ… เจคเฉ‹เจ‚ เจจเจนเฉ€เจ‚ เจกเจฐเจฆเฉ‡ เจ…เจคเฉ‡ เจธเจฎเจพเจจเจพเจ‚เจคเจฐ เจตเจฟเฉฑเจš เจ•เจˆ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจกเฉ‡เจŸเจพ เจฒเจฟเจ– เจธเจ•เจฆเฉ‡ เจนเจจ, เจชเจฐ เจ•เฉเจ เจ“เจชเจฐเฉ‡เจธเจผเจจ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ เจœเฉ‹ เจญเจพเจตเฉ‡เจ‚ เจœเฉ‹ เจฎเจฐเจœเจผเฉ€ เจนเฉ‹เจฃ, เจฆเฉ‹ เจตเจพเจฐ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเฉ‡ เจœเจพเจฃเฉ‡ เจšเจพเจนเฉ€เจฆเฉ‡เฅค เจ‡เจธเจฆเฉ‡ เจฒเจˆ เจ‡เฉฑเจ• เจจเฉ‡เจคเจพ เจฆเฉ€ เจจเจฟเจธเจผเจพเจจเฉ€ เจนเฉˆเฅค

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจฐเฉ‹เจฒ เจฆเฉ€ เจœเจผเจฟเฉฐเจฆเจ—เฉ€

เจ…เจœเจฟเจนเฉ‡ เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจ…เจฎเฉ‚เจฐเจค เจญเฉ‚เจฎเจฟเจ•เจพ เจฆเฉ€ เจฎเฉŒเจœเฉ‚เจฆเจ—เฉ€ เจฒเจˆ, เจซเจฐเฉ‡เจฎเจตเจฐเจ• เจจเฉ‚เฉฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจคเจฐเฉเจนเจพเจ‚ เจชเฉเจฐเจฌเฉฐเจงเจฟเจค เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆเฅค เจ•เฉเจฆเจฐเจคเฉ€ เจคเฉŒเจฐ 'เจคเฉ‡, เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจจเฉ‚เฉฐ เจฎเฉเฉœ เจšเจพเจฒเฉ‚ เจ•เฉ€เจคเฉ‡ เจฌเจฟเจจเจพเจ‚ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจ•เจฐเจจ เจฒเจˆ 4 เจ•เจพเจฒเจฌเฉˆเจ• เจนเจจเฅค เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจ–เฉเจฆ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ€ เจตเจฟเจคเจฐเจฟเจค เจธเฉฐเจฐเจšเจจเจพ เจตเจฟเฉฑเจš เจ•เฉ€ เจฒเจฟเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ เจฆเฉ‡ เจ…เจงเจพเจฐ เจคเฉ‡ เจ•เจพเจฒ เจ•เจฐเฉ‡เจ—เจพ, เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ–เจพเจธ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจฒเจˆ เจ•เฉŒเจ‚เจซเจฟเจ—เจฐเฉ‡เจธเจผเจจ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเฉ‡เจ—เจพเฅค

function init()
function validate_config()
function apply_config()
function stop()

เจนเจฐ เจฐเฉ‹เจฒ เจฆเจพ เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจนเฉเฉฐเจฆเจพ เจนเฉˆ init. เจ‡เจธเจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจตเจพเจฐ เจ•เจฟเจนเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเจพเจ‚ เจคเจพเจ‚ เจœเจฆเฉ‹เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจ‡เจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆ เจœเจพเจ‚ เจœเจฆเฉ‹เจ‚ Tarantool เจจเฉ‚เฉฐ เจฎเฉเฉœ เจšเจพเจฒเฉ‚ เจ•เฉ€เจคเจพ เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค เจ‰เฉฑเจฅเฉ‡ เจ‡เจน เจธเฉเจตเจฟเจงเจพเจœเจจเจ• เจนเฉˆ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, box.space.create เจจเฉ‚เฉฐ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจเจพ, เจœเจพเจ‚ เจธเจผเจกเจฟเจŠเจฒเจฐ เจ•เฉเจ เจฌเฉˆเจ•เจ—เฉเจฐเจพเจ‰เจ‚เจก เจซเจพเจˆเจฌเจฐ เจฒเจพเจ‚เจš เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ เจœเฉ‹ เจ•เฉเจ เจธเจฎเฉ‡เจ‚ เจฆเฉ‡ เจ…เฉฐเจคเจฐเจพเจฒเจพเจ‚ 'เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเฉ‡เจ—เจพเฅค

เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ init เจ•เจพเจซเจผเฉ€ เจจเจพ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ. เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจฐเฉ‹เจฒ เจจเฉ‚เฉฐ เจตเจฟเจคเจฐเจฟเจค เจธเฉฐเจฐเจšเจจเจพ เจฆเจพ เจฒเจพเจญ เจฒเฉˆเจฃ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ เจœเฉ‹ เจ‡เจน เจŸเฉŒเจชเฉŒเจฒเฉ‹เจœเฉ€ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐเจจ เจฒเจˆ เจตเจฐเจคเจฆเจพ เจนเฉˆเฅค เจ…เจธเฉ€เจ‚ เจ‰เจธเฉ‡ เจธเฉฐเจฐเจšเจจเจพ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจจเจตเจพเจ‚ เจญเจพเจ— เจ˜เฉ‹เจธเจผเจฟเจค เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจ‡เจธ เจตเจฟเฉฑเจš เจตเจชเจพเจฐเจ• เจธเฉฐเจฐเจšเจจเจพ เจฆเฉ‡ เจ‡เฉฑเจ• เจŸเฉเจ•เฉœเฉ‡ เจจเฉ‚เฉฐ เจธเจŸเฉ‹เจฐ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค เจฎเฉ‡เจฐเฉ€ เจ‰เจฆเจพเจนเจฐเจจ เจตเจฟเฉฑเจš, เจ‡เจน เจธเจผเจกเจฟเจŠเจฒเจฐ เจฐเฉ‹เจฒ เจฒเจˆ เจ‡เฉฑเจ• เจกเจพเจŸเจพ เจธเจ•เฉ€เจฎเจพ เจœเจพเจ‚ เจธเจฎเจพเจ‚-เจธเจพเจฐเจฃเฉ€ เจธเฉˆเจŸเจฟเฉฐเจ— เจนเฉ‹ เจธเจ•เจฆเฉ€ เจนเฉˆเฅค

เจ•เจฒเฉฑเจธเจŸเจฐ เจ•เจพเจฒเจพเจ‚ validate_config ะธ apply_config เจนเจฐ เจตเจพเจฐ เจตเจฟเจคเจฐเจฟเจค เจธเฉฐเจฐเจšเจจเจพ เจฌเจฆเจฒเจฆเฉ€ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจ‡เฉฑเจ• เจธเฉฐเจฐเจšเจจเจพ เจ‡เฉฑเจ• เจฆเฉ‹-เจชเฉœเจพเจ… เจฆเฉ€ เจชเฉเจฐเจคเฉ€เจฌเฉฑเจงเจคเจพ เจฆเฉเจ†เจฐเจพ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเฉ€ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจคเจพเจ‚ เจ•เจฒเฉฑเจธเจŸเจฐ เจœเจพเจ‚เจš เจ•เจฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจนเจฐเฉ‡เจ• เจฐเฉ‹เจฒ เจ‡เจธ เจจเจตเฉ€เจ‚ เจธเฉฐเจฐเจšเจจเจพ เจจเฉ‚เฉฐ เจธเจตเฉ€เจ•เจพเจฐ เจ•เจฐเจจ เจฒเจˆ เจคเจฟเจ†เจฐ เจนเฉˆ เจ…เจคเฉ‡, เจœเฉ‡เจ•เจฐ เจฒเฉ‹เฉœ เจนเฉ‹เจตเฉ‡, เจ‰เจชเจญเฉ‹เจ—เจคเจพ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจ—เจฒเจคเฉ€ เจฆเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจœเจฆเฉ‹เจ‚ เจนเจฐ เจ•เฉ‹เจˆ เจธเจนเจฟเจฎเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆ เจ•เจฟ เจธเฉฐเจฐเจšเจจเจพ เจ†เจฎ เจนเฉˆ, เจคเจพเจ‚ apply_config.

เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจฆเจพ เจตเฉ€ เจ‡เฉฑเจ• เจขเฉฐเจ— เจนเฉเฉฐเจฆเจพ เจนเฉˆ stop, เจœเฉ‹ เจฐเฉ‹เจฒ เจฆเฉ‡ เจ†เจ‰เจŸเจชเฉเฉฑเจŸ เจจเฉ‚เฉฐ เจธเจพเจซเจผ เจ•เจฐเจจ เจฒเจˆ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเจพ เจนเฉˆเฅค เจœเฉ‡ เจ…เจธเฉ€เจ‚ เจ•เจนเจฟเฉฐเจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจ‡เจธ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจธเจผเจกเจฟเจŠเจฒเจฐ เจฆเฉ€ เจนเฉเจฃ เจฒเฉ‹เฉœ เจจเจนเฉ€เจ‚ เจนเฉˆ, เจคเจพเจ‚ เจ‡เจน เจ‰เจนเจจเจพเจ‚ เจซเจพเจˆเจฌเจฐเจพเจ‚ เจจเฉ‚เฉฐ เจฐเฉ‹เจ• เจธเจ•เจฆเจพ เจนเฉˆ เจœเจฟเจจเฉเจนเจพเจ‚ เจจเจพเจฒ เจ‡เจน เจธเจผเฉเจฐเฉ‚ เจนเฉ‹เจ‡เจ† เจธเฉ€ init.

เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจจเจพเจฒ เจ—เฉฑเจฒเจฌเจพเจค เจ•เจฐ เจธเจ•เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจ…เจธเฉ€เจ‚ เจฒเฉ‚เจ† เจตเจฟเฉฑเจš เจซเฉฐเจ•เจธเจผเจจ เจ•เจพเจฒเจพเจ‚ เจฒเจฟเจ–เจฃ เจฆเฉ‡ เจ†เจฆเฉ€ เจนเจพเจ‚, เจชเจฐ เจ‡เจน เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจ‡เฉฑเจ• เจฆเจฟเฉฑเจคเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจตเจฟเฉฑเจš เจ‰เจน เจญเฉ‚เจฎเจฟเจ•เจพ เจจเจพ เจนเฉ‹เจตเฉ‡ เจœเจฟเจธเจฆเฉ€ เจธเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœ เจนเฉˆเฅค เจจเฉˆเฉฑเจŸเจตเจฐเจ• 'เจคเฉ‡ เจ•เจพเจฒเจพเจ‚ เจฆเฉ€ เจธเจนเฉ‚เจฒเจค เจฒเจˆ, เจ…เจธเฉ€เจ‚ rpc (เจฐเจฟเจฎเฉ‹เจŸ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจพเจฒ) เจธเจนเจพเจ‡เจ• เจฎเฉ‹เจกเฉ€เจŠเจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚, เจœเฉ‹ เจ•เจฟ เจŸเจฐเจพเจ‚เจŸเฉ‚เจฒ เจตเจฟเฉฑเจš เจฌเจฃเฉ‡ เจธเจŸเฉˆเจ‚เจกเจฐเจก เจจเฉˆเฉฑเจŸเจฌเจพเจ•เจธ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡ เจฌเจฃเจพเจ‡เจ† เจ—เจฟเจ† เจนเฉˆเฅค เจ‡เจน เจ‰เจชเจฏเฉ‹เจ—เฉ€ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจœเฉ‡เจ•เจฐ, เจ‰เจฆเจพเจนเจฐเจจ เจฒเจˆ, เจคเฉเจนเจพเจกเจพ เจ—เฉ‡เจŸเจตเฉ‡ เจ‡เฉฑเจ• เจฆเจฟเจจ เจ‰เจกเฉ€เจ• เจ•เจฐเจจ เจฆเฉ€ เจฌเจœเจพเจ, เจธเจผเจกเจฟเจŠเจฒเจฐ เจจเฉ‚เฉฐ เจธเจฟเฉฑเจงเฉ‡ เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจ•เจนเจฟเจฃเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค

เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจจเฉเจ•เจคเจพ เจจเฉเจ•เจธ เจธเจนเจฟเจฃเจธเจผเฉ€เจฒเจคเจพ เจจเฉ‚เฉฐ เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃเจพ เจนเฉˆเฅค เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจธเจฟเจนเจค เจฆเฉ€ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ•เจฐเจจ เจฒเจˆ SWIM เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆ [4]. เจธเฉฐเจ–เฉ‡เจช เจตเจฟเฉฑเจš, เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจจเจพเจฒ UDP เจ‰เฉฑเจคเฉ‡ "เจ…เจซเจตเจพเจนเจพเจ‚" เจฆเจพ เจ†เจฆเจพเจจ-เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ - เจนเจฐ เจ‡เฉฑเจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ†เจชเจฃเฉ‡ เจ—เฉเจ†เจ‚เจขเฉ€เจ†เจ‚ เจจเฉ‚เฉฐ เจคเจพเจœเจผเจพ เจ–เจฌเจฐเจพเจ‚ เจฆเฉฑเจธเจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ‰เจน เจœเจตเจพเจฌ เจฆเจฟเฉฐเจฆเฉ‡ เจนเจจเฅค เจ…เจšเจพเจจเจ• เจœเจตเจพเจฌ เจจเจพ เจฎเจฟเจฒเจฃ 'เจคเฉ‡ เจคเจฐเฉฐเจคเฉ‚เจฒ เจจเฉ‚เฉฐ เจธเจผเฉฑเจ• เจนเฉ‹เจฃ เจฒเฉฑเจ— เจชเฉˆเจ‚เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉเจ เจ—เจฒเจค เจนเฉˆ, เจ…เจคเฉ‡ เจ•เฉเจ เจฆเฉ‡เจฐ เจฌเจพเจ…เจฆ เจ‡เจน เจฎเฉŒเจค เจฆเจพ เจชเจพเจ  เจธเฉเจฃเจพเจ‰เจ‚เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ†เจฒเฉ‡-เจฆเฉเจ†เจฒเฉ‡ เจฆเฉ‡ เจธเจพเจฐเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจ‡เจน เจ–เจฌเจฐ เจฆเฉฑเจธเจฃเจพ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจ‡เจธ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจฆเฉ‡ เจ†เจงเจพเจฐ 'เจคเฉ‡, เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ• เจซเฉ‡เจฒ เจชเฉเจฐเฉ‹เจธเฉˆเจธเจฟเฉฐเจ— เจฆเจพ เจ†เจฏเฉ‹เจœเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจนเจฐเฉ‡เจ• เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ‡เจธเจฆเฉ‡ เจตเจพเจคเจพเจตเจฐเจฃ เจฆเฉ€ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ•เจฐเจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจœเฉ‡เจ•เจฐ เจฒเฉ€เจกเจฐ เจ…เจšเจพเจจเจ• เจœเจตเจพเจฌ เจฆเฉ‡เจฃเจพ เจฌเฉฐเจฆ เจ•เจฐ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจ†เจชเจฃเฉ€ เจญเฉ‚เจฎเจฟเจ•เจพ เจจเฉ‚เฉฐ เจธเฉฐเจญเจพเจฒ เจธเจ•เจฆเฉ€ เจนเฉˆ, เจ…เจคเฉ‡ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจ‰เจธ เจ…เจจเฉเจธเจพเจฐ เจšเฉฑเจฒ เจฐเจนเฉ€เจ†เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจจเฉ‚เฉฐ เจธเฉฐเจฐเจšเจฟเจค เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เฉฑเจฅเฉ‡ เจธเจพเจตเจงเจพเจจ เจฐเจนเจฟเจฃ เจฆเฉ€ เจฒเฉ‹เฉœ เจนเฉˆ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจตเจพเจฐ-เจตเจพเจฐ เจ…เฉฑเจ—เฉ‡ เจ…เจคเฉ‡ เจชเจฟเฉฑเจ›เฉ‡ เจธเจตเจฟเจš เจ•เจฐเจจ เจจเจพเจฒ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจฆเฉ‡ เจฆเฉŒเจฐเจพเจจ เจกเฉ‡เจŸเจพ เจตเจฟเจตเจพเจฆ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆเฅค เจฌเฉ‡เจธเจผเฉฑเจ•, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฌเฉ‡เจคเจฐเจคเฉ€เจฌเฉ‡ 'เจคเฉ‡ เจ†เจŸเฉ‹เจฎเฉˆเจŸเจฟเจ• เจซเฉ‡เจฒเจ“เจตเจฐ เจจเฉ‚เฉฐ เจธเจฎเจฐเฉฑเจฅ เจจเจนเฉ€เจ‚ เจ•เจฐเจจเจพ เจšเจพเจนเฉ€เจฆเจพเฅค เจธเจพเจจเฉ‚เฉฐ เจธเจชเฉฑเจธเจผเจŸ เจคเฉŒเจฐ 'เจคเฉ‡ เจธเจฎเจเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เฉ€ เจนเฉ‹ เจฐเจฟเจนเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‡เจน เจฏเจ•เฉ€เจจเฉ€ เจฌเจฃเจพเจ‰เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ•เจฟ เจจเฉ‡เจคเจพ เจฆเฉ‡ เจฌเจนเจพเจฒ เจนเฉ‹เจฃ เจ…เจคเฉ‡ เจคเจพเจœ เจ‰เจธ เจจเฉ‚เฉฐ เจตเจพเจชเจธ เจ•เจฐเจจ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจจเจนเฉ€เจ‚ เจŸเฉเฉฑเจŸเฉ‡เจ—เฉ€เฅค

เจ‡เจธ เจธเจญ เจคเฉ‹เจ‚, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‡เจน เจ…เจนเจฟเจธเจพเจธ เจนเฉ‹ เจธเจ•เจฆเจพ เจนเฉˆ เจ•เจฟ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธเจœเจผ เจตเจฐเจ—เฉ€เจ†เจ‚ เจนเจจเฅค เจ‡เฉฑเจ• เจ…เจฐเจฅ เจตเจฟเฉฑเจš, เจ‰เจน เจธเจฟเจฐเจซ เจ‰เจนเฉ€ เจนเจจ, เจธเจฟเจฐเจซ เจคเจฐเจจเจŸเฉ‚เจฒ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจฆเฉ‡ เจ…เฉฐเจฆเจฐเจฒเฉ‡ เจฎเจพเจกเจฟเจŠเจฒเจพเจ‚ เจฆเฉ‡ เจฐเฉ‚เจช เจตเจฟเฉฑเจšเฅค เจชเจฐ เจ‡เฉฑเจฅเฉ‡ เจ•เจˆ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจ…เฉฐเจคเจฐ เจตเฉ€ เจนเจจเฅค เจชเจนเจฟเจฒเจพเจ‚, เจธเจพเจฐเฉ‡ เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ เจฐเฉ‹เจฒ เจ‡เฉฑเจ•เฉ‹ เจ•เฉ‹เจก เจฌเฉ‡เจธ เจตเจฟเฉฑเจš เจฐเจนเจฟเจฃเฉ‡ เจšเจพเจนเฉ€เจฆเฉ‡ เจนเจจเฅค เจ…เจคเฉ‡ เจธเจพเจฐเฉ€เจ†เจ‚ เจคเจฐเจจเจŸเฉ‚เจฒ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจจเฉ‚เฉฐ เจ‰เจธเฉ‡ เจ•เฉ‹เจก เจฌเฉ‡เจธ เจคเฉ‹เจ‚ เจฒเจพเจ‚เจš เจ•เฉ€เจคเจพ เจœเจพเจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจคเจพเจ‚ เจ•เจฟ เจœเจฆเฉ‹เจ‚ เจ…เจธเฉ€เจ‚ เจธเจผเจกเจฟเจŠเจฒเจฐ เจจเฉ‚เฉฐ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจ•เฉ‹เจธเจผเจฟเจธเจผ เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚ เจคเจพเจ‚ เจ•เฉ‹เจˆ เจนเฉˆเจฐเจพเจจเฉ€ เจจเจนเฉ€เจ‚ เจนเฉเฉฐเจฆเฉ€, เจชเจฐ เจ‡เจน เจฎเฉŒเจœเฉ‚เจฆ เจจเจนเฉ€เจ‚ เจนเฉˆเฅค เจจเจพเจฒ เจนเฉ€, เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เฉ‹เจก เจธเฉฐเจธเจ•เจฐเจฃเจพเจ‚ เจตเจฟเฉฑเจš เจ…เฉฐเจคเจฐ เจฆเฉ€ เจ†เจ—เจฟเจ† เจจเจนเฉ€เจ‚ เจฆเฉ‡เจฃเฉ€ เจšเจพเจนเฉ€เจฆเฉ€, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ…เจœเจฟเจนเฉ€ เจธเจฅเจฟเจคเฉ€ เจตเจฟเฉฑเจš เจธเจฟเจธเจŸเจฎ เจฆเฉ‡ เจตเจฟเจตเจนเจพเจฐ เจฆเจพ เจ…เจจเฉเจฎเจพเจจ เจฒเจ—เจพเจ‰เจฃเจพ เจ…เจคเฉ‡ เจกเฉ€เจฌเฉฑเจ— เจ•เจฐเจจเจพ เจฌเจนเฉเจค เจฎเฉเจธเจผเจ•เจฒ เจนเฉˆเฅค

เจกเฉŒเจ•เจฐ เจฆเฉ‡ เจ‰เจฒเจŸ, เจ…เจธเฉ€เจ‚ เจธเจฟเจฐเจซ เจ‡เฉฑเจ• เจฐเฉ‹เจฒ "เจšเจฟเฉฑเจคเจฐ" เจจเจนเฉ€เจ‚ เจฒเฉˆ เจธเจ•เจฆเฉ‡, เจ‡เจธเจจเฉ‚เฉฐ เจ•เจฟเจธเฉ‡ เจนเฉ‹เจฐ เจฎเจธเจผเฉ€เจจ เจตเจฟเฉฑเจš เจฒเฉˆ เจœเจพ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚ เจ…เจคเฉ‡ เจ‡เจธเจจเฉ‚เฉฐ เจ‰เฉฑเจฅเฉ‡ เจšเจฒเจพ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค เจธเจพเจกเฉ€เจ†เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจกเฉŒเจ•เจฐ เจ•เฉฐเจŸเฉ‡เจจเจฐเจพเจ‚ เจตเจพเจ‚เจ— เจ…เจฒเฉฑเจ— เจจเจนเฉ€เจ‚ เจนเจจ. เจจเจพเจฒ เจนเฉ€, เจ…เจธเฉ€เจ‚ เจ‡เฉฑเจ• เจฎเฉŒเจ•เฉ‡ 'เจคเฉ‡ เจฆเฉ‹ เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเฉ€เจ†เจ‚ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจจเจนเฉ€เจ‚ เจšเจฒเจพ เจธเจ•เจฆเฉ‡ เจนเจพเจ‚เฅค เจ‡เฉฑเจ• เจญเฉ‚เจฎเจฟเจ•เจพ เจœเจพเจ‚ เจคเจพเจ‚ เจฎเฉŒเจœเฉ‚เจฆ เจนเฉˆ เจœเจพเจ‚ เจ‡เจน เจจเจนเฉ€เจ‚ เจนเฉˆ; เจ‡เฉฑเจ• เจ…เจฐเจฅ เจตเจฟเฉฑเจš, เจ‡เจน เจ‡เฉฑเจ• เจธเจฟเฉฐเจ—เจฒเจŸเจจ เจนเฉˆเฅค เจ…เจคเฉ‡ เจคเฉ€เจธเจฐเจพ, เจฐเฉ‹เจฒ เจชเฉ‚เจฐเฉ‡ เจชเฉเจฐเจคเฉ€เจ•เฉเจฐเจฟเจคเฉ€ เจธเจฎเฉ‚เจน เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเฉ‡ เจนเฉ‹เจฃเฉ‡ เจšเจพเจนเฉ€เจฆเฉ‡ เจนเจจ, เจ•เจฟเจ‰เจ‚เจ•เจฟ เจจเจนเฉ€เจ‚ เจคเจพเจ‚ เจ‡เจน เจฌเฉ‡เจคเฉเจ•เจพ เจนเฉ‹เจตเฉ‡เจ—เจพ - เจกเฉ‡เจŸเจพ เจ‡เฉฑเจ•เฉ‹ เจœเจฟเจนเจพ เจนเฉˆ, เจชเจฐ เจธเฉฐเจฐเจšเจจเจพ เจตเฉฑเจ–เจฐเฉ€ เจนเฉˆเฅค

เจคเฉˆเจจเจพเจคเฉ€ เจธเจพเจงเจจ

เจฎเฉˆเจ‚ เจ‡เจน เจฆเจฟเจ–เจพเจ‰เจฃ เจฆเจพ เจตเจพเจ…เจฆเจพ เจ•เฉ€เจคเจพ เจ•เจฟ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฒเจพเจ—เฉ‚ เจ•เจฐเจจ เจตเจฟเฉฑเจš เจ•เจฟเจตเฉ‡เจ‚ เจฎเจฆเจฆ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจฆเฉ‚เจœเจฟเจ†เจ‚ เจฒเจˆ เจœเฉ€เจตเจจ เจจเฉ‚เฉฐ เจ†เจธเจพเจจ เจฌเจฃเจพเจ‰เจฃ เจฒเจˆ, เจซเจฐเฉ‡เจฎเจตเจฐเจ• RPM เจชเฉˆเจ•เฉ‡เจœเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉˆเจ•เฉ‡เจœ เจ•เจฐเจฆเจพ เจนเฉˆ:

$ cartridge pack rpm myapp -- ัƒะฟะฐะบัƒะตั‚ ะดะปั ะฝะฐั ./myapp-0.1.0-1.rpm
$ sudo yum install ./myapp-0.1.0-1.rpm

เจ‡เฉฐเจธเจŸเจพเจฒ เจ•เฉ€เจคเฉ‡ เจชเฉˆเจ•เฉ‡เจœ เจตเจฟเฉฑเจš เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจฒเจ—เจญเจ— เจนเจฐ เจšเฉ€เจœเจผ เจธเจผเจพเจฎเจฒ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆ: เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจ…เจคเฉ‡ เจธเจฅเจพเจชเจฟเจค เจจเจฟเจฐเจญเจฐเจคเจพเจตเจพเจ‚เฅค Tarantool RPM เจชเฉˆเจ•เฉ‡เจœ เจฆเฉ€ เจจเจฟเจฐเจญเจฐเจคเจพ เจตเจœเฉ‹เจ‚ เจธเจฐเจตเจฐ 'เจคเฉ‡ เจตเฉ€ เจ†เจตเฉ‡เจ—เจพ, เจ…เจคเฉ‡ เจธเจพเจกเฉ€ เจธเฉ‡เจตเจพ เจฒเจพเจ‚เจš เจ•เจฐเจจ เจฒเจˆ เจคเจฟเจ†เจฐ เจนเฉˆเฅค เจ‡เจน 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

เจ‡เฉฑเจฅเฉ‡ เจ‡เฉฑเจ• เจฆเจฟเจฒเจšเจธเจช เจธเฉ‚เจ–เจฎเจคเจพ เจนเฉˆ. เจธเจฟเจฐเจซเจผ เจฌเจพเจˆเจจเจฐเฉ€ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ เจชเฉ‹เจฐเจŸ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจ•เจฐเจจ เจฆเฉ€ เจฌเจœเจพเจ, เจ…เจธเฉ€เจ‚ เจนเฉ‹เจธเจŸเจจเจพเจฎ เจธเจฎเฉ‡เจค เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจฆเจพ เจชเฉ‚เจฐเจพ เจœเจจเจคเจ• เจชเจคเจพ เจจเจฟเจธเจผเจšเจฟเจค เจ•เจฐเจฆเฉ‡ เจนเจพเจ‚เฅค เจ‡เจน เจœเจผเจฐเฉ‚เจฐเฉ€ เจนเฉˆ เจคเจพเจ‚ เจ•เจฟ เจ•เจฒเฉฑเจธเจŸเจฐ เจจเฉ‹เจกเจพเจ‚ เจจเฉ‚เฉฐ เจชเจคเจพ เจนเฉ‹เจตเฉ‡ เจ•เจฟ เจ‡เฉฑเจ• เจฆเฉ‚เจœเฉ‡ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจœเฉเฉœเจจเจพ เจนเฉˆเฅค advertise_uri เจเจกเจฐเฉˆเฉฑเจธ เจตเจœเฉ‹เจ‚ 0.0.0.0 เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจจเจพ เจ‡เฉฑเจ• เจฎเจพเฉœเจพ เจตเจฟเจšเจพเจฐ เจนเฉˆ; เจ‡เจน เจ‡เฉฑเจ• เจฌเจพเจนเจฐเฉ€ IP เจชเจคเจพ เจนเฉ‹เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ, เจจเจพ เจ•เจฟ เจธเจพเจ•เจŸ เจฌเจพเจˆเจ‚เจกเฅค เจ‡เจธเจฆเฉ‡ เจฌเจฟเจจเจพเจ‚, เจ•เฉเจ เจตเฉ€ เจ•เฉฐเจฎ เจจเจนเฉ€เจ‚ เจ•เจฐเฉ‡เจ—เจพ, เจ‡เจธเจฒเจˆ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ—เจฒเจค advertise_uri เจจเจพเจฒ เจ‡เฉฑเจ• เจจเฉ‹เจก เจฒเจพเจ‚เจš เจจเจนเฉ€เจ‚ เจ•เจฐเจจ เจฆเฉ‡เจตเฉ‡เจ—เจพ.

เจนเฉเจฃ เจœเจฆเฉ‹เจ‚ เจ•เจฟ เจธเฉฐเจฐเจšเจจเจพ เจคเจฟเจ†เจฐ เจนเฉˆ, เจคเฉเจธเฉ€เจ‚ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจธเจผเฉเจฐเฉ‚ เจ•เจฐ เจธเจ•เจฆเฉ‡ เจนเฉ‹เฅค เจ•เจฟเจ‰เจ‚เจ•เจฟ เจ‡เฉฑเจ• เจจเจฟเจฏเจฎเจค เจธเจฟเจธเจŸเจฎเจก เจฏเฉ‚เจจเจฟเจŸ เจ‡เฉฑเจ• เจคเฉ‹เจ‚ เจตเฉฑเจง เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจจเฉ‚เฉฐ เจธเจผเฉเจฐเฉ‚ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจจเจนเฉ€เจ‚ เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ 'เจคเฉ‡ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจ…เจ–เฉŒเจคเฉ€ เจฆเฉเจ†เจฐเจพ เจธเจฅเจพเจชเจฟเจค เจ•เฉ€เจคเฉ€เจ†เจ‚ เจœเจพเจ‚เจฆเฉ€เจ†เจ‚ เจนเจจเฅค เจคเจคเจ•เจพเจฒ เจฏเฉ‚เจจเจฟเจŸเจพเจ‚ เจœเฉ‹ เจ‡เจธ เจคเจฐเฉเจนเจพเจ‚ เจ•เฉฐเจฎ เจ•เจฐเจฆเฉ€เจ†เจ‚ เจนเจจ:

$ sudo systemctl start myapp@router
$ sudo systemctl start myapp@storage_A
$ sudo systemctl start myapp@storage_B

เจธเฉฐเจฐเจšเจจเจพ เจตเจฟเฉฑเจš, เจ…เจธเฉ€เจ‚ HTTP เจชเฉ‹เจฐเจŸ เจจเฉ‚เฉฐ เจจเจฟเจฐเจงเจพเจฐเจฟเจค เจ•เฉ€เจคเจพ เจนเฉˆ เจœเจฟเจธ 'เจคเฉ‡ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจตเฉˆเฉฑเจฌ เจ‡เฉฐเจŸเจฐเจซเฉ‡เจธ - 8080 เจฆเฉ€ เจธเฉ‡เจตเจพ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ†เจ“ เจ‡เจธ 'เจคเฉ‡ เจšเฉฑเจฒเฉ€เจ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจจเจœเจผเจฐ เจฎเจพเจฐเฉ€เจ:

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจ…เจธเฉ€เจ‚ เจฆเฉ‡เจ–เจฆเฉ‡ เจนเจพเจ‚ เจ•เจฟ เจนเจพเจฒเจพเจ‚เจ•เจฟ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ†เจตเจพเจ‚ เจšเฉฑเจฒ เจฐเจนเฉ€เจ†เจ‚ เจนเจจ, เจ‰เจน เจ…เจœเฉ‡ เจธเฉฐเจฐเจšเจฟเจค เจจเจนเฉ€เจ‚ เจนเจจเฅค เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ เจ…เจœเฉ‡ เจคเฉฑเจ• เจจเจนเฉ€เจ‚ เจœเจพเจฃเจฆเจพ เจนเฉˆ เจ•เจฟ เจ•เจฟเจธ เจจเฉ‚เฉฐ เจ•เจฟเจธ เจจเจพเจฒ เจฆเฉเจนเจฐเจพเจ‰เจฃเจพ เจšเจพเจนเฉ€เจฆเจพ เจนเฉˆ เจ…เจคเฉ‡ เจ‰เจน เจ†เจชเจฃเฉ‡ เจ†เจช เจ•เฉ‹เจˆ เจซเฉˆเจธเจฒเจพ เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเจพ, เจ‡เจธ เจฒเจˆ เจ‡เจน เจธเจพเจกเฉ‡ เจ•เฉฐเจฎเจพเจ‚ เจฆเฉ€ เจ‰เจกเฉ€เจ• เจ•เจฐ เจฐเจฟเจนเจพ เจนเฉˆ. เจชเจฐ เจธเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจœเจผเจฟเจ†เจฆเจพ เจตเจฟเจ•เจฒเจช เจจเจนเฉ€เจ‚ เจนเฉˆ: เจ‡เฉฑเจ• เจจเจตเฉ‡เจ‚ เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเฉ€ เจœเจผเจฟเฉฐเจฆเจ—เฉ€ เจชเจนเจฟเจฒเฉ‡ เจจเฉ‹เจก เจฆเฉ€ เจธเฉฐเจฐเจšเจจเจพ เจจเจพเจฒ เจธเจผเฉเจฐเฉ‚ เจนเฉเฉฐเจฆเฉ€ เจนเฉˆเฅค เจซเจฟเจฐ เจ…เจธเฉ€เจ‚ เจนเฉ‹เจฐเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฒเฉฑเจธเจŸเจฐ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจ•เจฐเจพเจ‚เจ—เฉ‡, เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจญเฉ‚เจฎเจฟเจ•เจพเจตเจพเจ‚ เจธเฉŒเจ‚เจชเจพเจ‚เจ—เฉ‡, เจ…เจคเฉ‡ เจ‡เจธ เจธเจฎเฉ‡เจ‚ เจคเฉˆเจจเจพเจคเฉ€ เจจเฉ‚เฉฐ เจธเจซเจฒเจคเจพเจชเฉ‚เจฐเจตเจ• เจชเฉ‚เจฐเจพ เจฎเฉฐเจจเจฟเจ† เจœเจพ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจšเจฒเฉ‹ เจคเฉเจนเจพเจกเฉ‡ เจฎเจจเจชเจธเฉฐเจฆ เจกเจฐเจฟเฉฐเจ• เจฆเจพ เจ‡เฉฑเจ• เจ—เจฒเจพเจธ เจกเฉ‹เจฒเฉเจนเฉ€เจ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจฒเฉฐเจฌเฉ‡ เจ•เฉฐเจฎ เจฆเฉ‡ เจนเจซเจผเจคเฉ‡ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจ†เจฐเจพเจฎ เจ•เจฐเฉ€เจเฅค เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ€ เจœเจพ เจธเจ•เจฆเฉ€ เจนเฉˆ.

เจŸเจพเจฐเจจเจŸเฉ‚เจฒ เจ•เจพเจฐเจŸเฉเจฐเฉ€เจœ: เจคเจฟเฉฐเจจ เจฒเจพเจˆเจจเจพเจ‚ เจตเจฟเฉฑเจš เจฒเฉ‚เจ† เจฌเฉˆเจ•เจเจ‚เจก เจธเจผเจพเจฐเจกเจฟเฉฐเจ—

เจจเจคเฉ€เจœเฉ‡

เจจเจคเฉ€เจœเฉ‡ เจ•เฉ€ เจนเจจ? เจ‡เจธเจจเฉ‚เฉฐ เจ…เจœเจผเจฎเจพเจ“, เจ‡เจธเจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเฉ‹, เจซเฉ€เจกเจฌเฉˆเจ• เจ›เฉฑเจกเฉ‹, เจ—เจฟเจฅเจฌ 'เจคเฉ‡ เจŸเจฟเจ•เจŸเจพเจ‚ เจฌเจฃเจพเจ“เฅค

เจนเจตเจพเจฒเฉ‡

[1] Tarantool ยป 2.2 ยป เจนเจตเจพเจฒเจพ ยป เจฐเจพเจ•เจธ เจนเจตเจพเจฒเจพ ยป เจฎเฉ‹เจกเฉ€เจŠเจฒ vshard

[2] เจ…เจธเฉ€เจ‚ Tarantool 'เจคเฉ‡ เจ†เจงเจพเจฐเจฟเจค Alfa-Bank เจฆเฉ‡ เจจเจฟเจตเฉ‡เจธเจผ เจ•เจพเจฐเฉ‹เจฌเจพเจฐ เจฆเฉ‡ เจฎเฉ‚เจฒ เจจเฉ‚เฉฐ เจ•เจฟเจตเฉ‡เจ‚ เจฒเจพเจ—เฉ‚ เจ•เฉ€เจคเจพ

[3] เจจเจตเฉ€เจ‚ เจชเฉ€เฉœเฉเจนเฉ€ เจฆเจพ เจฌเจฟเจฒเจฟเฉฐเจ— เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐ: เจŸเจฐเจพเจ‚เจŸเฉ‚เจฒ เจตเจฟเฉฑเจš เจคเจฌเจฆเฉ€เจฒเฉ€ เจฆเฉ‡ เจจเจพเจฒ เจคเจฌเจฆเฉ€เจฒเฉ€

[4] SWIM - เจ•เจฒเฉฑเจธเจŸเจฐ เจจเจฟเจฐเจฎเจพเจฃ เจชเฉเจฐเฉ‹เจŸเฉ‹เจ•เฉ‹เจฒ

[5] GitHub - tarantool/cartridge-cli

[6] GitHub - tarantool/cartridge

เจธเจฐเฉ‹เจค: www.habr.com

เจ‡เฉฑเจ• เจŸเจฟเฉฑเจชเจฃเฉ€ เจœเฉ‹เฉœเฉ‹