เด เดเตเดเต เดตเตผเดทเด เดฎเตเดฎเตเดชเต เดเดพเตป เดเดพเดฐเดจเตเดฑเตเดณเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเต, เดชเดเตเดทเต เด เดคเต เดเดจเดฟเดเตเดเต เดตเตเดฃเตเดเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ. เดเดจเตเดจเดพเตฝ เด เดเตเดคเตเดคเดฟเดเต เดเดพเตป เดเดฐเต เดตเตเดฌเดฟเดจเดพเตผ เดจเดเดคเตเดคเดฟ, เด เดตเดฟเดเต เดนเดกเตเดชเตเดชเดฟเดจเต เดเตเดฑเดฟเดเตเดเตเด MapReduce เดเดเตเดเดจเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต เดเดจเตเดจเดคเดฟเดจเต เดเตเดฑเดฟเดเตเดเตเด เดธเดเดธเดพเดฐเดฟเดเตเดเต. เด เดตเดฟเดเต เด เดตเตผ เดเดจเตเดจเตเดเต เดเดฐเต เดเตเดฆเตเดฏเด เดเตเดฆเดฟเดเตเดเต: "เดเดจเตเดคเตเดเตเดฃเตเดเดพเดฃเต เด เดเดพเดธเตเดเตเดเดฟเดจเดพเดฏเดฟ เดเดพเดฐเดจเตเดฑเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเดฐเตเดคเต?"
เดเดฟเดเตเดเดพเดธ เดเดพเดฐเดฃเด, เด เดคเดฟเดฒเตเดเตเดเต เดฎเดเดเตเดเดพเดจเตเด เดเดฑเตเดฑเดตเตเด เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเต เดชเดฐเตเดเตเดทเดฟเดเตเดเดพเดจเตเด เดเดพเตป เดคเตเดฐเตเดฎเดพเดจเดฟเดเตเดเต - เดเดคเตเดคเดตเดฃ เดเดจเดฟเดเตเดเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เดถเดฐเดฟเดเตเดเตเด เดเดทเตเดเดชเตเดชเตเดเตเดเต. เดเดพเดฐเดจเตเดฑเตเดณเดฟเตฝ เดเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฏ เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดเตเดเดจเต เดเดดเตเดคเดพเดฎเตเดจเตเดจเต เดเดชเตเดชเตเตพ เดเดพเตป เดเดพเดฃเดฟเดเตเดเตเดคเดฐเดพเด, เด เดคเต เดฒเตเดกเต เดเตเดฏเตเดคเต เด เดคเดฟเดจเตเดฑเต เดชเตเดฐเดเดเดจเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเด, เดเดฒเตเดฒเดพเด เดเดคเตเดฐ เดเดณเตเดชเตเดชเดตเตเด เดฐเดธเดเดฐเดตเตเดฎเดพเดฃเตเดจเตเดจเต เดจเดฟเดเตเดเตพ เดเดพเดฃเตเด.
เดเดจเตเดคเดพเดฃเต เดเดพเดฐเดจเตเดคเตเตพ
เดเดพเดฐเดจเตเดฑเตเตพ เดธเตเดตเดฏเด เดเดฐเต เด เตพเดเตเดฐเดพ เดซเดพเดธเตเดฑเตเดฑเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดเดฏเดฟ เดจเดฟเดฒเดเตเดณเตเดณเตเดจเตเดจเต. เดจเดฟเดเตเดเตพเดเตเดเต เดเดตเดถเตเดฏเดฎเตเดณเตเดณ เดเดคเต เดกเดพเดฑเตเดฑเดฏเตเด เด เดตเดฟเดเต เดจเตฝเดเดพเด. เดเตเดเดพเดคเต, เด เดต เดเดตเตผเดคเตเดคเดฟเดเตเดเตเด, เดทเดพเตผเดกเต - เด เดคเดพเดฏเดคเต, เดจเดฟเดฐเดตเดงเดฟ เดธเตเตผเดตเดฑเตเดเดณเดฟเดฒเตเดเดจเตเดณเด เดตเดฒเดฟเดฏ เด เดณเดตเดฟเดฒเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดตเดฟเดญเดเดฟเดเตเดเตเดเดฏเตเด เด เดตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดซเดฒเดเตเดเตพ เดธเดเดฏเตเดเดฟเดชเตเดชเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด - เดคเตเดฑเตเดฑเต-เดธเดนเดฟเดทเตเดฃเตเดคเดฏเตเดณเตเดณ เดฎเดพเดธเตเดฑเตเดฑเตผ-เดฎเดพเดธเตเดฑเตเดฑเตผ เดเดฃเดเตเดทเดจเตเดเตพ เดเดฃเตเดเดพเดเตเดเตเด.
เดฐเดฃเตเดเดพเดฎเดคเดพเดฏเดฟ, เดเดคเตเดฐเต เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดธเตเตผเดตเดฑเดพเดฃเต. เดจเดฟเดเตเดเตพเดเตเดเต เด เดคเดฟเตฝ เดจเดฟเดเตเดเดณเตเดเต เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดเตพ เดเดดเตเดคเดพเดจเตเด เดกเดพเดฑเตเดฑ เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเดจเตเด เดเดดเดฟเดฏเตเด, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดฟเดฒ เดจเดฟเดฏเดฎเดเตเดเตพ เด เดจเตเดธเดฐเดฟเดเตเดเต เดชเดถเตเดเดพเดคเตเดคเดฒเดคเตเดคเดฟเตฝ เดชเดดเดฏ เดฑเตเดเตเดเตเตผเดกเตเดเตพ เดเดฒเตเดฒเดพเดคเดพเดเตเดเตเด. เดจเดฟเดเตเดเตพเดเตเดเต เดเดพเดฐเดพเดจเตเดฑเตเดฒเดฏเดฟเตฝ เดจเตเดฐเดฟเดเตเดเต เดเดฐเต Http เดธเตเตผเดตเตผ เดเดดเตเดคเดพเด, เด เดคเต เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด: เด เดตเดฏเตเดเต เด เดณเดตเต เดจเตฝเดเตเด, เด เดตเดฟเดเต เดชเตเดคเดฟเดฏ เดกเดพเดฑเตเดฑ เดเดดเตเดคเตเด, เดเดฒเตเดฒเดพเด เดฎเดพเดธเตเดฑเตเดฑเดฑเดฟเดจเต เดเตเดฑเดฏเตเดเตเดเตเด.
เดเตบเดเตเดเตเดเดฟเดเตพ 300 เดตเดฐเดฟเดเดณเตเดเต เดเดฐเต เดธเดจเตเดฆเตเดถ เดเตเดฏเต เดเดฃเตเดเดพเดเตเดเดฟเดฏเดคเตเดเตเดเดจเต เดเดจเตเดจเดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดเดฐเต เดฒเตเดเดจเด เดเดพเตป เดตเดพเดฏเดฟเดเตเดเต, เด เดคเต เดชเตเดเตเดเดฟเดคเตเดคเตเดฑเดฟเดเตเดเตเดเดฏเตเด เดเตเดคเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต - เด เดตเตผเดเตเดเต เดธเตเดเตเดเตปเดกเดฟเตฝ 20 เดธเดจเตเดฆเตเดถเดเตเดเดณเตเดเต เดชเตเดฐเดเดเดจเดฎเตเดฃเตเดเต. เดเดตเดฟเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดถเดฐเดฟเดเตเดเตเด เดคเดฟเดฐเดฟเดฏเดพเดจเตเด เดตเดณเดฐเต เดตเดฒเดฟเดฏ เดเดฐเต เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดดเตเดคเดพเดจเตเด เดเดดเดฟเดฏเตเด, เด เดคเต PostgreS เดฒเต เดชเตเดฒเต เดธเตเดฑเตเดฑเตเดฑเตเดเต เดเดฏเดฟเดฐเดฟเดเตเดเดฟเดฒเตเดฒ.
เด เดฒเตเดเดจเดคเตเดคเดฟเตฝ เด เดธเตเตผเดตเตผ เดชเตเดฒเตเดฏเตเดณเตเดณ เดเดจเตเดจเต เดตเดฟเดตเดฐเดฟเดเตเดเดพเตป เดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเตเด, เดฒเดณเดฟเดคเดฎเดพเดฏเดฟ เดฎเดพเดคเตเดฐเด.
เดเตปเดธเตเดฑเตเดฑเดฒเตเดทเตป
เดเตเดธเตเดฑเตเดฑเดฟเดจเดพเดฏเดฟ, เดเดพเตป เดฎเตเดจเตเดจเต เดธเตเดฑเตเดฑเดพเตปเดกเตเตผเดกเต เดตเตเตผเดเตเดตเตฝ เดฎเตเดทเตเดจเตเดเตพ เดเดฐเดเดญเดฟเดเตเดเต - เดเดฐเต 20 GB เดนเดพเตผเดกเต เดกเตเดฐเตเดตเต, เดเดฌเตเดฃเตเดเต 18.04. 2 เดตเตเตผเดเตเดตเตฝ เดธเดฟเดชเดฟเดฏเตเดเดณเตเด 4 เดเดฟเดเต เดฎเตเดฎเตเดฎเดฑเดฟเดฏเตเด.
เดเดเตเดเตพ Tarantool เดเตปเดธเตโเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต - เดฌเดพเดทเต เดธเตโเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเด เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดฐเต เดถเตเดเดฐเด เดเตเตผเดเตเดเตเด, เดคเตเดเตผเดจเตเดจเต Tarantool เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเด. เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดฒเตเดเตเดเตเดณเตเดณ เดฒเดฟเดเตเดเต - (เดเตเดฐเตเตพ -L
tarantoolctl - เดเดฐเดพเดจเตเดฑเตเดฒ เดธเดเดญเดตเดเตเดเตพ เดเตเดเดพเดฐเตเดฏเด เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดชเตเดฐเดงเดพเดจ เดเดฎเดพเตปเดกเต.
/etc/tarantool - เดฎเตเดดเตเดตเตป เดเตเตบเดซเดฟเดเดฑเตเดทเดจเตเด เดเดคเดพ.
var/log/tarantool - เดฐเตเดเดเตพ เดเดคเดพ.
var/lib/tarantool โ เดกเดพเดฑเตเดฑ เดเดตเดฟเดเตเดฏเตเดฃเตเดเต, เดคเตเดเตผเดจเตเดจเต เด
เดคเต เดเดฆเดพเดนเดฐเดฃเดเตเดเดณเดพเดฏเดฟ เดคเดฟเดฐเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต.
เดซเตเตพเดกเดฑเตเดเตพ เดเตปเดธเตโเดฑเตเดฑเตปเดธเต-เดฒเดญเตเดฏเดตเตเด เดเตปเดธเตโเดฑเตเดฑเตปเดธเต-เดชเตเดฐเดพเดชเตโเดคเดฎเดพเดเตเดเดฒเตเด เดเดฃเตเดเต - เด เดคเดฟเตฝ เดฒเตเดเตเดเต เดเตเดฏเตเดฏเตเดจเตเดจเดต เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต - เดฒเตเดตเดพ เดเตเดกเตเดณเตเดณ เดเดฐเต เดเตปเดธเตเดฑเตเดฑเตปเดธเต เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดซเดฏเตฝ, เด เดคเต เดเดคเต เดชเตเตผเดเตเดเตเดเดณเดพเดฃเต เดเตเตพเดเตเดเตเดจเตเดจเดคเต, เดเดคเต เดฎเตเดฎเตเดฎเดฑเดฟ เดเดคเดฟเดจเต เดฒเดญเตเดฏเดฎเดพเดฃเต, เดตเดฟเดจเตเตฝ เดเดเตเดเดฟเตป เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ, เดธเตเดฑเตเดฑเดพเตผเดเตเดเดชเตเดชเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจ เดเตเดกเต เดเดจเตเดจเดฟเดต เดตเดฟเดตเดฐเดฟเดเตเดเตเดจเตเดจเต. เดธเตเตผเดตเดฑเตเดเตพ, เดทเดพเตผเดกเดฟเดเดเต, เดเตเดฏเตเดเตพ, เดเดพเดฒเดนเดฐเดฃเดชเตเดชเตเดเตเด เดกเดพเดฑเตเดฑ เดเดฒเตเดฒเดพเดคเดพเดเตเดเตฝ เดคเตเดเดเตเดเดฟเดฏเดต.
เดธเดเดญเดตเดเตเดเตพ PostgreS-เดฒเต เดชเตเดฒเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเตเตผเดเตเดเตเดเดณเดฟเตฝ เดคเตเดเตเดเดฟเดเตเดเดฟเดเดเตเดเตเดจเตเดจ เดเดฐเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดจเตเดฑเต เดจเดฟเดฐเดตเดงเดฟ เดชเดเตผเดชเตเดชเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดจเดฟเดเตเดเตพ เดเดเตเดฐเดนเดฟเดเตเดเตเดจเตเดจเต. เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเตเตผเดเตเดเตเดเดณเดฟเตฝ เดคเตเดเตเดเดฟเดเตเดเดฟเดเดเตเดเตเดจเตเดจ เดเดฐเต เดธเตเตผเดตเดฑเดฟเตฝ เดจเดฟเดฐเดตเดงเดฟ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดธเดเดญเดตเดเตเดเตพ เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเดคเดพเดฏเดฟ เดเดคเต เดฎเดพเดฑเตเดจเตเดจเต. เด เดตเตผเดเตเดเต เดคเดฟเดเดเตเดเตเด เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเตพ เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด - เดเดฐเต เดเดฆเดพเดนเดฐเดฃเด เดเดฐเต เดฏเตเดเตเดคเดฟ เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเดจเตเดจเต, เดฐเดฃเตเดเดพเดฎเดคเตเดคเตเดคเต - เดฎเดฑเตเดฑเตเดจเตเดจเต.
เดเตปเดธเตเดฑเตเดฑเตปเดธเต เดฎเดพเดจเตเดเตเดฎเตเดจเตเดฑเต
เดเดเตเดเตพเดเตเดเต tarantoolctl เดเดฎเดพเตปเดกเต เดเดฃเตเดเต, เดเดคเต Tarantula เดธเดเดญเดตเดเตเดเตพ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดเตเดเดพเตป เดจเดฟเดเตเดเดณเต เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, tarantoolctl เดเตเดเตเดเต เดเดฆเดพเดนเดฐเดฃเด เดเตเตบเดซเดฟเดเดฑเตเดทเตป เดซเดฏเตฝ เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเต เดชเดฑเดฏเตเด - เด เดตเดฟเดเต เดตเดพเดเตเดฏเดเดเดจ เดชเดฟเดถเดเตเดเตพ เดเดฒเตเดฒเตเดเตเดเดฟเตฝ เดซเดฏเตฝ เดถเดฐเดฟเดฏเดพเดฃเต.
เดจเดฟเดเตเดเตพเดเตเดเต เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต เดจเดฟเดฒ เดเดพเดฃเดพเตป เดเดดเดฟเดฏเตเด - tarantoolctl เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดธเต เดเดฆเดพเดนเดฐเดฃเด. เด เดคเตเดชเตเดฒเต, เดจเดฟเดเตเดเตพเดเตเดเต เดเดฐเดเดญเดฟเดเตเดเตเด, เดจเดฟเตผเดคเตเดคเตเด, เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเตเด.
เดเดฆเดพเดนเดฐเดฃเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเตเดเดดเดฟเดเตเดเดพเตฝ, เดจเดฟเดเตเดเตพเดเตเดเต เดฐเดฃเตเดเต เดคเดฐเดคเตเดคเดฟเตฝ เดเดคเดฟเดฒเตเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตเดฏเดพเดจเดพเดเตเด.
1. เด เดกเตเดฎเดฟเดจเดฟเดธเตเดเตเดฐเตเดฑเตเดฑเตเดตเต เดเตบเดธเตเตพ
เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ, Tarantool เดเดฐเต เดธเตเดเตเดเดฑเตเดฑเต เดคเตเดฑเดเตเดเตเดจเตเดจเต, Tarantool เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดเตเดเดพเตป เดธเดพเดงเดพเดฐเดฃ ASCII เดเตเดเตโเดธเตโเดฑเตเดฑเต เด เดฏเดฏเตโเดเตเดเตเดจเตเดจเต. เดเตบเดธเตเดณเดฟเดฒเตเดเตเดเตเดณเตเดณ เดเดฃเดเตเดทเตป เดเดฒเตเดฒเดพเดฏเตโเดชเตเดชเตเดดเตเด เด เดกเตโเดฎเดฟเตป เดเดชเดฏเตเดเตเดคเดพเดตเดฟเดจเต เดเตเดดเดฟเดฒเดพเดฃเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเดคเต, เดเดงเดฟเดเดพเดฐเดฟเดเดคเดฏเดฟเดฒเตเดฒ, เด เดคเดฟเดจเดพเตฝ เดเดฐเดพเดจเตเดฑเตเดฒ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดเตบเดธเตเตพ เดชเตเตผเดเตเดเต เดฌเดพเดนเตเดฏเดฎเดพเดเตเดเตเดฃเตเด เดเดตเดถเตเดฏเดฎเดฟเดฒเตเดฒ.
เด เดฐเตเดคเดฟ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเดเตเดเตพ Tarantoolctl เดเดจเตเดฑเตผ เดเตปเดธเตเดฑเตเดฑเตปเดธเต เดจเดพเดฎเด เดจเตฝเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดฎเดพเตปเดกเต เดเตบเดธเตเตพ เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเตเดเดฏเตเด เด เดกเตเดฎเดฟเตป เดเดชเดฏเตเดเตเดคเดพเดตเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเด. เดเตบเดธเตเตพ เดชเตเตผเดเตเดเต เดเดฐเดฟเดเตเดเดฒเตเด เดชเตเดฑเดคเตเดคเต เดเดพเดฃเดฟเดเตเดเดฐเตเดคเต - เดเดคเต เดเดฐเต เดฏเตเดฃเดฟเดฑเตเดฑเต เดธเตเดเตเดเดฑเตเดฑเดพเดฏเดฟ เดตเดฟเดเตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต. เด เดชเตเดชเตเตพ เดธเตเดเตเดเดฑเตเดฑเดฟเดฒเตเดเตเดเต เดเดดเตเดคเดพเตป เดเดเตเดธเดธเต เดเดณเตเดณเดตเตผเดเตเดเต เดฎเดพเดคเตเดฐเดฎเต เดเดฐเดพเดจเตเดฑเตเดฒเดฏเตเดฎเดพเดฏเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเต.
เดญเดฐเดฃเดชเดฐเดฎเดพเดฏ เดเดพเดฐเตเดฏเดเตเดเตพเดเตเดเต เด เดฐเตเดคเดฟ เดเดตเดถเตเดฏเดฎเดพเดฃเต. เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดพเตป, เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดฐเตเดคเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเด - เดฌเตเดจเดฑเดฟ เดชเตเดฐเตเดเตเดเตเดเตเดเตเตพ.
2. เดฌเตเดจเดฑเดฟ เดชเตเดฐเตเดเตเดเตเดเตเดเตเตพ เดเดชเดฏเตเดเดฟเดเตเดเต เดเดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเด เดชเตเตผเดเตเดเดฟเดฒเตเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตเดฏเตเดจเตเดจเต
เดเตเตบเดซเดฟเดเดฑเตเดทเดจเดฟเตฝ เดเตเตพเดเตเดเดพเดจเตเดณเตเดณ เดจเดฟเตผเดฆเตเดฆเตเดถเด เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต, เด เดคเต เดฌเดพเดนเตเดฏ เดเดถเดฏเดตเดฟเดจเดฟเดฎเดฏเดเตเดเตพเดเตเดเดพเดฏเดฟ เดเดฐเต เดชเตเตผเดเตเดเต เดคเตเดฑเดเตเดเตเดจเตเดจเต. เด เดชเตเตผเดเตเดเต เดฌเตเดจเดฑเดฟ เดชเตเดฐเตเดเตเดเตเดเตเดเตเดณเดฟเดจเตเดชเตเดชเด เดเดชเดฏเตเดเดฟเดเตเดเตเดเดฏเตเด เดชเตเดฐเดพเดฎเดพเดฃเตเดเดฐเดฃเด เด เดตเดฟเดเต เดชเตเดฐเดพเดชเตเดคเดฎเดพเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เด เดเดฃเดเตเดทเดจเดพเดฏเดฟ, tarantoolctl เดเดฃเดเตเดเต เดเต เดชเตเตผเดเตเดเต เดจเดฎเตเดชเดฑเดพเดฃเต เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเดคเต. เดเดคเต เดเดชเดฏเตเดเดฟเดเตเดเต, เดจเดฟเดเตเดเตพเดเตเดเต เดตเดฟเดฆเตเดฐ เดธเตเตผเดตเดฑเตเดเดณเดฟเดฒเตเดเตเดเต เดเดฃเดเตเดฑเตเดฑเตเดเตเดฏเตเดฏเดพเดจเตเด เดชเตเดฐเดพเดฎเดพเดฃเตเดเดฐเดฃเด เดเดชเดฏเตเดเดฟเดเตเดเดพเดจเตเด เดตเดฟเดตเดฟเดง เดเดเตเดธเดธเต เด เดตเดเดพเดถเดเตเดเตพ เดจเตฝเดเดพเดจเตเด เดเดดเดฟเดฏเตเด.
เดกเดพเดฑเตเดฑ เดฑเตเดเตเดเตเตผเดกเดฟเดเดเตเด เดฌเตเดเตเดธเต เดฎเตเดกเตเดฏเตเดณเตเด
เดเดพเดฐเดจเตเดฑเตเตพ เดเดฐเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเตเด เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดธเตเตผเดตเดฑเตเด เดเดฏเดคเดฟเดจเดพเตฝ, เดเดคเดฟเดจเต เดตเดฟเดตเดฟเดง เดฎเตเดกเตเดฏเตเดณเตเดเตพ เดเดฃเตเดเต. เดฌเตเดเตเดธเต เดฎเตเดกเตเดฏเตเดณเดฟเตฝ เดเดเตเดเตพเดเตเดเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดฃเตเดเต - เดเดคเต เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต. เดจเดฟเดเตเดเตพ เดฌเตเดเตเดธเดฟเดฒเตเดเตเดเต เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดเดดเตเดคเตเดฎเตเดชเตเตพ, เดเดพเดฐเดจเตเดฑเตเตพ เดกเดพเดฑเตเดฑ เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดเดดเตเดคเตเดจเตเดจเต, เดฎเตเดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดธเตเดเตเดทเดฟเดเตเดเตเดจเตเดจเต, เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดฎเดฑเตเดฑเตเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เดฑเตเดเตเดเตเตผเดกเดฟเดเดเต
เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดเตเดเตพ เดฌเตเดเตเดธเต เดฎเตเดกเตเดฏเตเดณเดฟเดฒเตเดเตเดเต เดชเตเดฏเดฟ box.once เดซเดเดเตเดทเตป เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต. เดธเตเตผเดตเตผ เดเดฐเดเดญเดฟเดเตเดเตเดฎเตเดชเตเตพ เดเดเตเดเดณเตเดเต เดเตเดกเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเตป เดเดคเต Tarantool-เดจเต เดจเดฟเตผเดฌเดจเตเดงเดฟเดเตเดเตเด. เดเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจ เดเดฐเต เดเดเด เดเดเตเดเตพ เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต.
local function bootstrap()
local space = box.schema.create_space('example')
space:create_index('primary')
box.schema.user.grant('guest', 'read,write,execute', 'universe')
-- Keep things safe by default
-- box.schema.user.create('example', { password = 'secret' })
-- box.schema.user.grant('example', 'replication')
-- box.schema.user.grant('example', 'read,write,execute', 'space', 'example')
end
เดเดคเดฟเดจเตเดถเตเดทเด, เดเดเตเดเตพ เดเดฐเต เดชเตเดฐเดพเดฅเดฎเดฟเด เดธเตเดเดฟเด เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต - เดชเตเดฐเตเดฎเดฑเดฟ - เด เดคเดฟเดฒเตเดเต เดจเดฎเตเดเตเดเต เดกเดพเดฑเตเดฑ เดคเดฟเดฐเดฏเดพเตป เดเดดเดฟเดฏเตเด. เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟเดฏเดพเดฏเดฟ, เดจเดฟเดเตเดเตพ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเดณเตเดจเตเดจเตเด เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเดฟเดฏเดฟเดเตเดเดฟเดฒเตเดฒเตเดเตเดเดฟเตฝ, เดเดฐเต เดฑเตเดเตเดเตเตผเดกเดฟเดฒเตเดฏเตเด เดเดฆเตเดฏ เดซเตเตฝเดกเต เดชเตเดฐเดพเดฅเดฎเดฟเด เดธเตเดเดฟเดเดฏเตเดเตเดเดพเดฏเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเด.
เดคเตเดเตผเดจเตเดจเต เดเดเตเดเตพ เด เดคเดฟเดฅเดฟ เดเดชเดฏเตเดเตเดคเดพเดตเดฟเดจเต เดเดฐเต เดเตเดฐเดพเดจเตเดฑเต เดจเตฝเดเตเดจเตเดจเต, เด เดคเดฟเดจเต เดเตเดดเดฟเตฝ เดเดเตเดเตพ เดฌเตเดจเดฑเดฟ เดชเตเดฐเตเดเตเดเตเดเตเดเตเตพ เดตเดดเดฟ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต. เดฎเตเดดเตเดตเตป เดธเดจเตเดฆเตผเดญเดคเตเดคเดฟเดฒเตเด เดตเดพเดฏเดฟเดเตเดเดพเดจเตเด เดเดดเตเดคเดพเดจเตเด เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเดพเดจเตเด เดเดเตเดเตพ เด เดจเตเดตเดฆเดฟเดเตเดเตเดจเตเดจเต.
เดชเดฐเดฎเตเดชเดฐเดพเดเดค เดกเดพเดฑเตเดฑเดพเดฌเตเดธเตเดเดณเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเดชเตเดชเตเดเตเดคเตเดคเตเดฎเตเดชเตเตพ, เดเดตเดฟเดเต เดเดฒเตเดฒเดพเด เดตเดณเดฐเต เดฒเดณเดฟเดคเดฎเดพเดฃเต. เดเดเตเดเตพเดเตเดเต เดธเตเดฅเดฒเดฎเตเดฃเตเดเต - เดเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑ เดฒเดณเดฟเดคเดฎเดพเดฏเดฟ เดธเดเดญเดฐเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจ เดเดฐเต เดฎเตเดเดฒ. เดเดฐเต เดฑเตเดเตเดเตเตผเดกเดฟเดจเตเดฏเตเด เดเดฐเต เดเตเดฏเตเดชเตเดชเดฟเตพ เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต. เดเดคเต เดฎเตเดธเตเดเตเดชเดพเดเตเดเดฟเดฒเดพเดฃเต เดชเดพเดเตเดเตเดเต เดเตเดฏเตเดคเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเต. เดเดคเต เดตเดณเดฐเต เดฐเดธเดเดฐเดฎเดพเดฏ เดเดฐเต เดซเตเตผเดฎเดพเดฑเตเดฑเดพเดฃเต - เดเดคเต เดฌเตเดจเดฑเดฟ เดเดฃเต, เดเตเดเดพเดคเต เดเตเดฑเดเตเดเต เดธเตเดฅเดฒเด เดเดเตเดเตเดเตเดจเตเดจเต - 18 เดฌเตเดฑเตเดฑเตเดเดณเตเด 27 เดเด.
เด
เดตเดจเตเดเตเดชเตเดชเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเต เดคเดฟเดเดเตเดเตเด เดธเตเดเดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต. เดฎเดฟเดเตเดเดตเดพเดฑเตเด เดเดฒเตเดฒเดพ เดตเดฐเดฟเดเตพเดเตเดเตเด, เดเดฒเตเดฒเดพ เดกเดพเดฑเตเดฑ เดฑเตเดเตเดเตเตผเดกเดฟเดจเตเด เดคเดฟเดเดเตเดเตเด เดตเตเดฏเดคเตเดฏเดธเตเดคเดฎเดพเดฏ เดจเดฟเดฐเดเตพ เดเดฃเตเดเดพเดเดพเด.
Box.space เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฎเตเดเตเดเต เดเดฒเตเดฒเดพ เดธเตเดชเตเดฏเตเดธเตเดเดณเตเด เดเดพเดฃเดพเตป เดเดดเดฟเดฏเตเด. เดเดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเด เดเดฆเดพเดนเดฐเดฃเด เดคเดฟเดฐเดเตเดเตเดเตเดเตเดเตเดจเตเดจเดคเดฟเดจเต, box.space เดเดฆเดพเดนเดฐเดฃเด เดเดดเตเดคเตเด, เด เดคเดฟเดจเตเดเตเดเตเดฑเดฟเดเตเดเตเดณเตเดณ เดชเตเตผเดฃเตเดฃเดฎเดพเดฏ เดตเดฟเดตเดฐเดเตเดเตพ เดจเตเดเตเด.
เดเดพเดฐเดจเตเดฑเตเดณเดฟเดจเต เดฐเดฃเตเดเต เดฌเดฟเตฝเดฑเตเดฑเต-เดเตป เดเดเตเดเดฟเดจเตเดเตพ เดเดฃเตเดเต: เดฎเตเดฎเตเดฎเดฑเดฟเดฏเตเด เดตเดฟเดจเตเดฒเตเด. เดฎเตเดฎเตเดฎเดฑเดฟ เดเดฒเตเดฒเดพ เดกเดพเดฑเตเดฑเดฏเตเด เดฎเตเดฎเตเดฎเดฑเดฟเดฏเดฟเตฝ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเต. เด เดคเดฟเดจเดพเตฝ, เดเดฒเตเดฒเดพเด เดฒเดณเดฟเดคเดตเตเด เดตเตเดเดคเตเดคเดฟเดฒเตเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเต. เดกเดพเดฑเตเดฑ เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดตเดฒเดฟเดเตเดเตเดฑเดฟเดฏเดชเตเดชเตเดเตเดจเตเดจเต, เดเตเดเดพเดคเต เดเดฐเต เดฑเตเดฑเตเดฑเต เดเดนเดกเต เดฒเตเดเต เดฎเตเดเตเดเดพเดจเดฟเดธเดตเตเด เดเดฃเตเดเต, เด เดคเดฟเดจเดพเตฝ เดธเตเตผเดตเตผ เดคเดเดฐเดพเดฑเดฟเดฒเดพเดฏเดพเตฝ เดเดเตเดเตพเดเตเดเต เดเดจเตเดจเตเด เดจเดทเตโเดเดฎเดพเดเดฟเดฒเตเดฒ.
เดตเดฟเดจเตเตฝ เดเดเตเดเตพเดเตเดเต เดเตเดเตเดคเตฝ เดชเดฐเดฟเดเดฟเดคเดฎเดพเดฏ เดเดฐเต เดฐเตเดชเดคเตเดคเดฟเตฝ เดกเดฟเดธเตเดเดฟเตฝ เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเต - เด เดคเดพเดฏเดคเต, เดเดเตเดเตพเดเตเดเต เดฎเตเดฎเตเดฎเดฑเดฟ เดเดณเตเดณเดคเดฟเดจเตเดเตเดเดพเตพ เดเตเดเตเดคเตฝ เดกเดพเดฑเตเดฑ เดจเดฟเดเตเดเตพเดเตเดเต เดธเดเดญเดฐเดฟเดเตเดเดพเตป เดเดดเดฟเดฏเตเด, เดเตเดเดพเดคเต เดเดฐเดพเดจเตเดฑเตเดฒ เด เดคเต เดกเดฟเดธเตเดเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเดพเดฏเดฟเดเตเดเตเด.
เดเดชเตเดชเตเตพ เดจเดฎเตเดฎเตพ เดฎเตเดฎเตเดฎเดฑเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเด.
unix/:/var/run/tarantool/example.control> box.space.example
---
- engine: memtx
before_replace: 'function: 0x41eb02c8'
on_replace: 'function: 0x41eb0568'
ck_constraint: []
field_count: 0
temporary: false
index:
0: &0
unique: true
parts:
- type: unsigned
is_nullable: false
fieldno: 1
id: 0
space_id: 512
type: TREE
name: primary
primary: *0
is_local: false
enabled: true
name: example
id: 512
...
unix/:/var/run/tarantool/example.control>
เดธเตเดเดฟเด:
เดเดคเต เดธเตเดฅเดฒเดคเตเดคเดฟเดจเตเด เดเดฐเต เดชเตเดฐเดพเดฅเดฎเดฟเด เดธเตเดเดฟเด เดธเตเดทเตเดเดฟเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต, เดเดพเดฐเดฃเด เด เดคเดฟเดฒเตเดฒเดพเดคเต เดเดจเตเดจเตเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ. เดเดคเตเดฐเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดฒเตเดฏเตเด เดชเตเดฒเต, เดเดเตเดเตพ เดเดฆเตเดฏ เดซเตเตฝเดกเต เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต - เดฑเตเดเตเดเตเตผเดกเต เดเดกเดฟ.
เดญเดพเดเดเตเดเตพ:
เดจเดฎเตเดฎเตเดเต เดธเตเดเดฟเดเดฏเดฟเตฝ เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเตเดจเตเดคเดพเดฃเตเดจเตเดจเต เดเดตเดฟเดเต เดธเตเดเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต. เดเดคเดฟเตฝ เดเดฐเต เดญเดพเดเด เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต - เดเดเตเดเตพ เดเดฆเตเดฏเด เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจ เดซเตเตฝเดกเต เดธเตเตป เดเตเดฏเตเดฏเดพเดคเตเดค เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณเดคเดพเดฃเต - เดเดฐเต เดชเตเดธเดฟเดฑเตเดฑเตเดตเต เดชเตเตผเดฃเตเดฃเดธเดเดเตเดฏ. เดกเตเดเตเดฏเตเดฎเตเดจเตเดฑเตเดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเต เดเดพเตป เดเตผเดเตเดเตเดจเตเดจเดฟเดเดคเตเดคเตเดณเด, เดชเดฐเดฎเดพเดตเดงเดฟ 18 เดเตเดตเดฟเดจเตเดฑเดฟเดฒเตเดฏเตบ เดเดฃเต. เด เดคเต เดงเดพเดฐเดพเดณเด.
เด เดชเตเดชเตเตพ เดจเดฎเตเดเตเดเต เดเตปเดธเตเตผเดเตเดเต เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดกเดพเดฑเตเดฑ เดเตเตผเดเตเดเดพเด.
unix/:/var/run/tarantool/example.control> box.space.example:insert{1, 'test1', 'test2'}
---
- [1, 'test1', 'test2']
...
unix/:/var/run/tarantool/example.control> box.space.example:insert{2, 'test2', 'test3', 'test4'}
---
- [2, 'test2', 'test3', 'test4']
...
unix/:/var/run/tarantool/example.control> box.space.example:insert{3, 'test3'}
---
- [3, 'test3']
...
unix/:/var/run/tarantool/example.control> box.space.example:insert{4, 'test4'}
---
- [4, 'test4']
...
unix/:/var/run/tarantool/example.control>
เดเดฆเตเดฏ เดซเตเตฝเดกเต เดชเตเดฐเดพเดฅเดฎเดฟเด เดเต เดเดฏเดฟ เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต, เด เดคเดฟเดจเดพเตฝ เด เดคเต เด เดฆเตเดตเดฟเดคเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเดฃเด. เดจเดฟเดฐเดเดณเตเดเต เดเดฃเตเดฃเดคเตเดคเดฟเตฝ เดเดเตเดเตพ เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเตเดเตเดคเตเดคเดฟเดฏเดฟเดเตเดเดฟเดฒเตเดฒ, เด เดคเดฟเดจเดพเตฝ เดเดเตเดเตพเดเตเดเต เดเดตเดถเตเดฏเดฎเตเดณเตเดณเดคเตเดฐ เดกเดพเดฑเตเดฑ เด เดตเดฟเดเต เดเตเตผเดเตเดเดพเด. เดเดพเตป เดฎเตเดเดณเดฟเตฝ เดตเดฟเดตเดฐเดฟเดเตเด เดฎเตเดธเตเดเตเดชเดพเดเตเดเต เดซเตเตผเดฎเดพเดฑเตเดฑเดฟเดฒเดพเดฃเต เด เดต เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจเดคเต.
เดกเดพเดฑเตเดฑ เดเดเตเดเตเดชเตเดเตเดเต
เด เดชเตเดชเตเตพ เดจเดฎเตเดเตเดเต เดธเตเดฒเดเตเดเต เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดกเดพเดฑเตเดฑ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเดพเด.
{1} เดเต เดเดชเดฏเตเดเดฟเดเตเดเต Box.example.select เดเดตเดถเตเดฏเดฎเตเดณเตเดณ เดเตปเดเตเดฐเดฟ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเดเตเดเตเด. เดคเดพเดเตเดเตเตฝ เดคเดพเดดเตเดคเตเดคเดฟเดฏเดพเตฝ, เดจเดฎเตเดฎเตเดเต เดเตเดตเดถเดฎเตเดณเตเดณ เดเดฒเตเดฒเดพ เดฐเตเดเดเดณเตเด เดเดพเดฃเดพเด. เด เดตเดฏเตเดฒเตเดฒเดพเด เดจเดฟเดฐเดเดณเตเดเต เดเดฃเตเดฃเดคเตเดคเดฟเตฝ เดตเตเดฏเดคเตเดฏเดพเดธเดชเตเดชเตเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต, เดเดจเตเดจเดพเตฝ เดเดตเดฟเดเต, เดคเดคเตเดคเตเดตเดคเตเดคเดฟเตฝ, เดจเดฟเดฐเดเดณเตเดเต เดเดถเดฏเด เดเดฒเตเดฒ - เดซเตเตฝเดกเต เดจเดฎเตเดชเดฑเตเดเตพ เดเดฃเตเดเต.
เดคเดฟเดเดเตเดเตเด เดเดคเต เด เดณเดตเดฟเดฒเตเด เดกเดพเดฑเตเดฑ เดเดฃเตเดเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดซเตเตฝเดกเต เดเดชเดฏเตเดเดฟเดเตเดเต เดจเดฎเตเดฎเตพ เด เดตเดฐเต เดคเดฟเดฐเดฏเตเดฃเตเดเดคเตเดฃเตเดเต. เดเดคเต เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต, เดเดเตเดเตพ เดเดฐเต เดชเตเดคเดฟเดฏ เดฆเตเดตเดฟเดคเตเดฏ เดธเตเดเดฟเด เดธเตเดทเตเดเดฟเดเตเดเตเดจเตเดจเต.
box.space.example:create_index( โsecondaryโ, { type = โTREEโ, unique = false, parts = {{field = 2, type =โstringโ} }})
เดเดเตเดเตพ Create_index เดเดฎเดพเตปเดกเต เดเดชเดฏเตเดเดฟเดเตเดเตเดจเตเดจเต.
เดจเดฎเตเดเตเดเต เด
เดคเดฟเดจเต เดธเตเดเตเดเตปเดกเดฑเดฟ เดเดจเตเดจเต เดตเดฟเดณเดฟเดเตเดเดพเด.
เดเดคเดฟเดจเตเดถเตเดทเด เดจเดฟเดเตเดเตพ เดชเดพเดฐเดพเดฎเตเดฑเตเดฑเดฑเตเดเตพ เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต. เดธเตเดเดฟเด เดคเดฐเด TREE เดเดฃเต. เดเดคเต เด เดฆเตเดตเดฟเดคเตเดฏเดฎเดพเดฏเดฟเดฐเดฟเดเตเดเดฟเดฒเตเดฒ, เด เดคเดฟเดจเดพเตฝ Unique = false เดเดจเตเดจเต เดจเตฝเดเตเด.
เด เดชเตเดชเตเตพ เดจเดฎเตเดฎเตเดเต เดธเตเดเดฟเดเดฏเดฟเตฝ เด เดเดเตเดเดฟเดฏเดฟเดฐเดฟเดเตเดเตเดจเตเดจ เดญเดพเดเดเตเดเตพ เดเดเตเดเตพ เดธเตเดเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต. เดซเตเตฝเดกเต เดเดจเตเดจเดคเต เดจเดฎเตเดฎเตพ เดธเตเดเดฟเด เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจ เดซเตเตฝเดกเดฟเดจเตเดฑเต เดธเดเดเตเดฏเดฏเดพเดฃเต, เดเตเดเดพเดคเต เดธเตเดเตเดฐเดฟเดเดเต เดคเดฐเด เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเด. เด เดเตเดเดจเต เด เดคเต เดธเตเดทเตเดเดฟเดเตเดเดชเตเดชเตเดเตเดเต.
unix/:/var/run/tarantool/example.control> box.space.example:create_index('secondary', { type = 'TREE', unique = false, parts = {{field = 2, type = 'string'}}})
---
- unique: false
parts:
- type: string
is_nullable: false
fieldno: 2
id: 1
space_id: 512
type: TREE
name: secondary
...
unix/:/var/run/tarantool/example.control>
เดเดชเตเดชเตเตพ เดจเดฎเตเดเตเดเต เดเดคเดฟเดจเต เดเดเตเดเดจเต เดตเดฟเดณเดฟเดเตเดเดพเด:
unix/:/var/run/tarantool/example.control> box.space.example.index.secondary:select('test1')
---
- - [1, 'test1', 'test2']
...
เดธเดเดฐเดเตเดทเดฃเด
เดเดเตเดเตพ เดเดฆเดพเดนเดฐเดฃเด เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเต เดกเดพเดฑเตเดฑ เดตเตเดฃเตเดเตเด เดตเดฟเดณเดฟเดเตเดเดพเตป เดถเตเดฐเดฎเดฟเดเตเดเตเดเดฏเดพเดฃเตเดเตเดเดฟเตฝ, เด เดคเต เด เดตเดฟเดเต เดเดฒเตเดฒเตเดจเตเดจเต เดเดเตเดเตพ เดเดพเดฃเตเด - เดเดฒเตเดฒเดพเด เดถเตเดจเตเดฏเดฎเดพเดฃเต. เดเดพเดฐเดจเตเดฑเตเตพ เดเตเดเตเดเตโเดชเตเดธเตเดฑเตเดฑเตเดเตพ เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดเดฏเตเด เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดกเดพเดฑเตเดฑ เดธเดเดฐเดเตเดทเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเดพเดฒเดพเดฃเต เดเดคเต เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเดคเต, เดเดจเตเดจเดพเตฝ เด เดเตเดคเตเดค เดธเตเดตเต เดตเดฐเต เดเดเตเดเตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดจเตเดจเดคเต เดจเดฟเตผเดคเตเดคเดฟเดฏเดพเตฝ, เดเดฒเตเดฒเดพ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเตเด เดจเดทเตโเดเดชเตเดชเตเดเตเด - เดเดพเดฐเดฃเด เดเดเตเดเตพ เด เดตเดธเดพเดจ เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดตเตเดฃเตเดเตเดเตเดเตเดเตเด, เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดฐเดฃเตเดเต เดฎเดฃเดฟเดเตเดเตเตผ เดฎเตเดฎเตเดชเต.
เดเดฐเต เดธเตเดเตเดเตปเดกเตเด เดธเดเดฐเดเตเดทเดฟเดเตเดเดพเตป เดเดคเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเดฟเดฒเตเดฒ, เดเดพเดฐเดฃเด เดกเดฟเดธเตเดเดฟเดฒเตเดเตเดเต เดจเดฟเดฐเดจเตเดคเดฐเด 20 GB เดเดเตเดจเตเดจเดคเต เดจเดฒเตเดฒ เดเดถเดฏเดฎเดฒเตเดฒ.
เด เดเดตเดถเตเดฏเดคเตเดคเดฟเดจเดพเดฏเดฟ, เดฑเตเดฑเตเดฑเต-เดเดนเตเดกเต เดฒเตเดเต เดเดจเตเดจ เดเดถเดฏเด เดเดฃเตเดเตเดชเดฟเดเดฟเดเตเดเตเดเดฏเตเด เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดคเต. เด เดคเดฟเดจเตเดฑเต เดธเดนเดพเดฏเดคเตเดคเตเดเต, เดกเดพเดฑเตเดฑเดฏเดฟเดฒเต เดเดฐเต เดฎเดพเดฑเตเดฑเดคเตเดคเดฟเดจเตเด, เดเดฐเต เดเตเดฑเดฟเดฏ เดฑเตเดฑเตเดฑเต-เดเดนเตเดกเต เดฒเตเดเต เดซเดฏเดฒเดฟเตฝ เดเดฐเต เดเตปเดเตเดฐเดฟ เดธเตเดทเตเดเดฟเดเตเดเดชเตเดชเตเดเตเดจเตเดจเต.
เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเต เดตเดฐเตเดฏเตเดณเตเดณ เดเดฐเต เดเตปเดเตเดฐเดฟเดฏเตเด เด เดตเดฏเดฟเตฝ เดธเตเดเตเดทเดฟเดเตเดเดฟเดฐเดฟเดเตเดเตเดจเตเดจเต. เด เดซเดฏเดฒเตเดเตพเดเตเดเดพเดฏเดฟ เดเดเตเดเตพ เดตเดฒเตเดชเตเดชเด เดธเดเตเดเดฎเดพเดเตเดเดฟ - เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, 64 MB. เด เดคเต เดจเดฟเดฑเดฏเตเดฎเตเดชเตเตพ, เดฑเตเดเตเดเตเตผเดกเดฟเดเดเต เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดซเดฏเดฒเดฟเดฒเตเดเตเดเต เดชเตเดเดพเตป เดคเตเดเดเตเดเตเดจเตเดจเต. เดชเตเดจเดฐเดพเดฐเดเดญเดฟเดเตเดเดคเดฟเดจเต เดถเตเดทเด, เด เดตเดธเดพเดจ เดเตเดเตเดเต เดชเตเดฏเดฟเดจเตเดฑเดฟเตฝ เดจเดฟเดจเตเดจเต Tarantool เดชเตเดจเดเดธเตเดฅเดพเดชเดฟเดเตเดเตเดเดฏเตเด เด เดคเต เดจเดฟเตผเดคเตเดคเตเดจเตเดจเดคเต เดตเดฐเต เดชเดฟเดจเตเดจเตเดเตเดณเตเดณ เดเดฒเตเดฒเดพ เดเดเดชเดพเดเตเดเดณเตเด เดฑเตเตพ เดเตเดฏเตเดฏเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เด
เดคเตเดคเดฐเด เดฑเตเดเตเดเตเตผเดกเดฟเดเดเต เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเดพเตป, เดจเดฟเดเตเดเตพ box.cfg เดเตเดฐเดฎเตเดเดฐเดฃเดเตเดเดณเดฟเตฝ (example.lua เดซเดฏเดฒเดฟเตฝ) เดเดชเตเดทเตป เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเดฃเตเดเดคเตเดฃเตเดเต:
wal_mode = โwriteโ;
เดกเดพเดฑเตเดฑ เดเดชเดฏเตเดพเดเด
เดเดเตเดเตพ เดเดชเตเดชเตเตพ เดเดดเตเดคเดฟเดฏเดคเต เดเดชเดฏเตเดเดฟเดเตเดเต, เดกเดพเดฑเตเดฑ เดธเดเดญเดฐเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต เดจเดฟเดเตเดเตพเดเตเดเต เดเดฐเดพเดจเตเดฑเตเดฒ เดเดชเดฏเตเดเดฟเดเตเดเดพเด, เด เดคเต เดเดฐเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดพเดฏเดฟ เดตเดณเดฐเต เดตเตเดเดคเตเดคเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเด. เดเดชเตเดชเตเตพ เดเดฒเตเดฒเดพเด เดเตเดฃเตเดเต เดจเดฟเดเตเดเตพเดเตเดเต เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเดจเตเดจ เดเดธเดฟเดเดเต เดเดฃเต.
เดเดฐเต เด เดชเตเดเตเดท เดเดดเตเดคเตเดจเตเดจเต
เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดเดฐเดพเดจเตเดฑเตเดฒเดฏเตเดเตเดเดพเดฏเดฟ เดเดจเดฟเดชเตเดชเดฑเดฏเตเดจเตเดจ เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดดเตเดคเดพเด
เดธเตโเดชเตเดฏเดฟเดฒเดฑเดฟเดจเต เดเตเดดเดฟเดฒเตเดณเตเดณ เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดพเดฃเตเด
box.cfg {
listen = '0.0.0.0:3301';
io_collect_interval = nil;
readahead = 16320;
memtx_memory = 128 * 1024 * 1024; -- 128Mb
memtx_min_tuple_size = 16;
memtx_max_tuple_size = 128 * 1024 * 1024; -- 128Mb
vinyl_memory = 128 * 1024 * 1024; -- 128Mb
vinyl_cache = 128 * 1024 * 1024; -- 128Mb
vinyl_max_tuple_size = 128 * 1024 * 1024; -- 128Mb
vinyl_write_threads = 2;
wal_mode = "write";
wal_max_size = 256 * 1024 * 1024;
checkpoint_interval = 60 * 60; -- one hour
checkpoint_count = 6;
force_recovery = true;
log_level = 5;
log_nonblock = false;
too_long_threshold = 0.5;
read_only = false
}
local function bootstrap()
local space = box.schema.create_space('example')
space:create_index('primary')
box.schema.user.create('example', { password = 'secret' })
box.schema.user.grant('example', 'read,write,execute', 'space', 'example')
box.schema.user.create('repl', { password = 'replication' })
box.schema.user.grant('repl', 'replication')
end
-- for first run create a space and add set up grants
box.once('replica', bootstrap)
-- enabling console access
console = require('console')
console.listen('127.0.0.1:3302')
-- http config
local charset = {} do -- [0-9a-zA-Z]
for c = 48, 57 do table.insert(charset, string.char(c)) end
for c = 65, 90 do table.insert(charset, string.char(c)) end
for c = 97, 122 do table.insert(charset, string.char(c)) end
end
local function randomString(length)
if not length or length <= 0 then return '' end
math.randomseed(os.clock()^5)
return randomString(length - 1) .. charset[math.random(1, #charset)]
end
local http_router = require('http.router')
local http_server = require('http.server')
local json = require('json')
local httpd = http_server.new('0.0.0.0', 8080, {
log_requests = true,
log_errors = true
})
local router = http_router.new()
local function get_count()
local cnt = box.space.example:len()
return cnt
end
router:route({method = 'GET', path = '/count'}, function()
return {status = 200, body = json.encode({count = get_count()})}
end)
router:route({method = 'GET', path = '/token'}, function()
local token = randomString(32)
local last = box.space.example:len()
box.space.example:insert{ last + 1, token }
return {status = 200, body = json.encode({token = token})}
end)
prometheus = require('prometheus')
fiber = require('fiber')
tokens_count = prometheus.gauge("tarantool_tokens_count",
"API Tokens Count")
function monitor_tokens_count()
while true do
tokens_count:set(get_count())
fiber.sleep(5)
end
end
fiber.create(monitor_tokens_count)
router:route( { method = 'GET', path = '/metrics' }, prometheus.collect_http)
httpd:set_router(router)
httpd:start()
เดชเตเดฐเดคเตเดเดเตเดเดณเต เดจเดฟเตผเดตเดเดฟเดเตเดเตเดจเตเดจ เดเดฟเดฒ เดชเดเตเดเดฟเด เดเดเตเดเตพ เดฒเตเดตเดฏเดฟเตฝ เดชเตเดฐเดเตเดฏเดพเดชเดฟเดเตเดเตเดจเตเดจเต. เดเตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏ เดเดฐเต เดธเตเดเตเดฐเดฟเดเดเต เดธเตเดทเตเดเดฟเดเตเดเดพเตป เด เดชเตเดฒเตเดฑเตเดฑเต เดเดตเดถเตเดฏเดฎเดพเดฃเต.
local charset = {} do -- [0-9a-zA-Z]
for c = 48, 57 do table.insert(charset, string.char(c)) end
for c = 65, 90 do table.insert(charset, string.char(c)) end
for c = 97, 122 do table.insert(charset, string.char(c)) end
end
เด เดคเดฟเดจเตเดถเตเดทเด, เดเดเตเดเตพ เดซเดเดเตเดทเตป - randomString เดชเตเดฐเดเตเดฏเดพเดชเดฟเดเตเดเตเดเดฏเตเด เดชเดฐเดพเตปเดคเตเดธเดฟเดธเดฟเตฝ เดฆเตเตผเดเตเดฏ เดฎเตเดฒเตเดฏเด เดจเตฝเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
local function randomString(length)
if not length or length <= 0 then return '' end
math.randomseed(os.clock()^5)
return randomString(length - 1) .. charset[math.random(1, #charset)]
end
เดคเตเดเตผเดจเตเดจเต เดเดเตเดเตพ http เดฑเตเดเตเดเดฑเตเด http เดธเตเตผเดตเดฑเตเด เดเดเตเดเดณเตเดเต Tarantula เดธเตเตผเดตเดฑเดพเดฏ JSON-เดฒเตเดเตเดเต เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต, เด เดคเต เดเดเตเดเตพ เดเตเดฒเดฏเดจเตเดฑเดฟเดฒเตเดเตเดเต เด เดฏเดฏเตเดเตเดเตเด.
local http_router = require('http.router')
local http_server = require('http.server')
local json = require('json')
เดเดคเดฟเดจเตเดถเตเดทเด, เดเดฒเตเดฒเดพ http เดธเตเตผเดตเตผ เดเดจเตเดฑเตผเดซเตเดธเตเดเดณเดฟเดฒเตเด เดเดเตเดเตพ เดชเตเตผเดเตเดเต 8080-เตฝ เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเต, เด เดคเต เดเดฒเตเดฒเดพ เด เดญเตเดฏเตผเดคเตเดฅเดจเดเดณเตเด เดชเดฟเดถเดเตเดเดณเตเด เดฒเตเดเต เดเตเดฏเตเดฏเตเด.
local httpd = http_server.new('0.0.0.0', 8080, {
log_requests = true,
log_errors = true
})
เด เดเตเดคเตเดคเดคเดพเดฏเดฟ, เดเดเตเดเตพ เดฑเตเดเตเดเต เดชเตเดฐเดเตเดฏเดพเดชเดฟเดเตเดเตเดจเตเดจเต, เด เดเตเดเดจเต GET เดฐเตเดคเดฟเดฏเดฟเดฒเตเดณเตเดณ เดเดฐเต เด เดญเตเดฏเตผเดคเตเดฅเดจ เดชเตเตผเดเตเดเต 8080 /count-เตฝ เดเดคเตเดคเดฟเดฏเดพเตฝ, เดเดเตเดเตพ เดเดฐเต เดตเดฐเดฟเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดซเดเดเตเดทเดจเต เดตเดฟเดณเดฟเดเตเดเตเดจเตเดจเต. เดเดคเต เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดธเต เดจเตฝเดเตเดจเตเดจเต - 200, 404, 403 เด เดฒเตเดฒเตเดเตเดเดฟเตฝ เดเดเตเดเตพ เดตเตเดฏเดเตเดคเดฎเดพเดเตเดเตเดจเตเดจ เดฎเดฑเตเดฑเตเดคเตเดเตเดเดฟเดฒเตเด.
router:route({method = 'GET', path = '/count'}, function()
return {status = 200, body = json.encode({count = get_count()})}
end)
เดฌเตเดกเดฟเดฏเดฟเตฝ เดจเดฎเตเดฎเตพ json.encode เดจเตฝเดเตเดจเตเดจเต, เด เดคเดฟเตฝ เดเดเตเดเตพ เดเตเดฃเตเดเต, เดเตเดฑเตเดฑเตเดเตเดฃเตเดเต เดเดจเตเดจเดฟเดต เดธเตเดเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต, เด เดคเดฟเดจเต เดตเดฟเดณเดฟเดเตเดเตเดเดฏเตเด เดเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดฒเต เดฑเตเดเตเดเตเตผเดกเตเดเดณเตเดเต เดเดฃเตเดฃเด เดเดพเดฃเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เดฐเดฃเตเดเดพเดฎเดคเตเดคเต เดฐเตเดคเดฟ
router:route({method = 'GET', path = '/token'}, function()
local token = randomString(32)
local last = box.space.example:len()
box.space.example:insert{ last + 1, token }
return {status = 200, body = json.encode({token = token})}
end)
เดตเดฐเดฟเดฏเดฟเตฝ เดเดตเดฟเดเต เดฑเตเดเตเดเตผ: เดฑเตเดเตเดเต({เดฐเตเดคเดฟ = 'GET', เดชเดพเดคเตเดคเต = '/เดเตเดเตเดเตบ'}, เดซเดเดเตโเดทเตป() เดเดเตเดเตพ เดซเดเดเตโเดทเดจเต เดตเดฟเดณเดฟเดเตเดเตเดเดฏเตเด เดเดฐเต เดเตเดเตเดเตบ เดธเตเดทเตเดเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เดธเตเดเตเดฐเดฟเดเดเต เดชเตเดฐเดพเดฆเตเดถเดฟเด เดเตเดเตเดเตบ = เดฑเดพเตปเดกเดเดธเตเดเตเดฐเดฟเดเดเต(32) 32 เดชเตเดฐเดคเตเดเดเตเดเดณเตเดเต เดเตเดฐเดฎเดฐเดนเดฟเดคเดฎเดพเดฏ เดธเตเดเตเดฐเดฟเดเดเต เดเดฃเต.
เดเตป เดฒเตเตป เดฒเตเดเตเดเตฝ เดฒเดพเดธเตเดฑเตเดฑเต = box.space.example:len() เดเดเตเดเตพ เด
เดตเดธเดพเดจ เดเดเดเด เดชเตเดฑเดคเตเดคเตเดเตเดเตเดเตเดจเตเดจเต.
เดเดชเตเดชเด เดตเดฐเดฟเดฏเดฟเดฒเตเด box.space.example:insert{ last + 1, token } เดเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดฒเตเดเตเดเต เดเดเตเดเตพ เดกเดพเดฑเตเดฑ เดเดดเตเดคเตเดจเตเดจเต, เด
เดคเดพเดฏเดคเต, เดเดเตเดเตพ เดเดกเดฟ 1 เดเตเดฃเตเดเต เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเดเตเดเตเดจเตเดจเต. เดเดคเต เด เดตเดฟเดเดฟเดคเตเดฐเดฎเดพเดฏ เดฐเตเดคเดฟเดฏเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดตเดดเดฟเดฏเดฟเตฝ เดเตเดฏเตเดฏเดพเด. เดเดฐเดพเดจเตเดฑเตเดฒเดฏเดฟเตฝ เดเดคเดฟเดจเตเดณเตเดณ เดธเตเดเตเดตเตปเดธเตเดเตพ เดเดฃเตเดเต.
เดเดเตเดเตพ เด เดตเดฟเดเต เดเตเดเตเดเตบ เดเดดเตเดคเตเดจเตเดจเต.
เด เดเตเดเดจเต, เดเดเตเดเตพ เดเดฐเต เดซเดฏเดฒเดฟเตฝ เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดดเตเดคเดฟ. เดจเดฟเดเตเดเตพเดเตเดเต เด เดตเดฟเดเต เดกเดพเดฑเตเดฑ เดจเตเดฐเดฟเดเตเดเต เดเตเดเดพเดฐเตเดฏเด เดเตเดฏเตเดฏเดพเตป เดเดดเดฟเดฏเตเด, เดเตเดเดพเดคเต เดฌเตเดเตเดธเต เดฎเตเดกเตเดฏเตเตพ เดจเดฟเดเตเดเตพเดเตเดเดพเดฏเดฟ เดเดฒเตเดฒเดพ เดตเตเดคเตเดคเดฟเดเตเดเตเด เดเตเดฒเดฟเดเดณเตเด เดเตเดฏเตเดฏเตเด.
เดเดคเต http เดเตเตพเดเตเดเตเดเดฏเตเด เดกเดพเดฑเตเดฑ เดเดชเดฏเตเดเดฟเดเตเดเต เดชเตเดฐเดตเตผเดคเตเดคเดฟเดเตเดเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต, เดเดฒเตเดฒเดพเด เดเดฐเตเดฑเตเดฑ เดธเดจเตเดฆเตผเดญเดคเตเดคเดฟเดฒเดพเดฃเต - เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเด เดกเดพเดฑเตเดฑเดฏเตเด. เด เดคเดฟเดจเดพเตฝ, เดเดฒเตเดฒเดพเด เดตเดณเดฐเต เดตเตเดเดคเตเดคเดฟเตฝ เดธเดเดญเดตเดฟเดเตเดเตเดจเตเดจเต.
เดเดฐเดเดญเดฟเดเตเดเตเดจเตเดจเดคเดฟเดจเต, เดเดเตเดเตพ http เดฎเตเดกเตเดฏเตเตพ เดเตปเดธเตเดฑเตเดฑเดพเตพ เดเตเดฏเตเดฏเตเดจเตเดจเต:
เดเดเตเดเตพ เดเดคเต เดเดเตเดเดจเต เดเตเดฏเตเดฏเตเดจเตเดจเต, เดธเตโเดชเตเดฏเดฟเดฒเดฑเดฟเดจเต เดเตเดดเดฟเตฝ เดจเตเดเตเดเตเด
root@test2:/# tarantoolctl rocks install http
Installing http://rocks.tarantool.org/http-scm-1.src.rock
Missing dependencies for http scm-1:
checks >= 3.0.1 (not installed)
http scm-1 depends on checks >= 3.0.1 (not installed)
Installing http://rocks.tarantool.org/checks-3.0.1-1.rockspec
Cloning into 'checks'...
remote: Enumerating objects: 28, done.
remote: Counting objects: 100% (28/28), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 28 (delta 1), reused 16 (delta 1), pack-reused 0
Receiving objects: 100% (28/28), 12.69 KiB | 12.69 MiB/s, done.
Resolving deltas: 100% (1/1), done.
Note: checking out '580388773ef11085015b5a06fe52d61acf16b201'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.
If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:
git checkout -b <new-branch-name>
No existing manifest. Attempting to rebuild...
checks 3.0.1-1 is now installed in /.rocks (license: BSD)
-- The C compiler identification is GNU 7.5.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Found TARANTOOL: /usr/include (found version "2.4.2-80-g18f2bc82d")
-- Tarantool LUADIR is /.rocks/share/tarantool/rocks/http/scm-1/lua
-- Tarantool LIBDIR is /.rocks/share/tarantool/rocks/http/scm-1/lib
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
version
-- Build files have been written to: /tmp/luarocks_http-scm-1-V4P9SM/http/build.luarocks
Scanning dependencies of target httpd
[ 50%] Building C object http/CMakeFiles/httpd.dir/lib.c.o
In file included from /tmp/luarocks_http-scm-1-V4P9SM/http/http/lib.c:32:0:
/tmp/luarocks_http-scm-1-V4P9SM/http/http/lib.c: In function โtpl_termโ:
/usr/include/tarantool/lauxlib.h:144:15: warning: this statement may fall through [-Wimplicit-fallthrough=]
(*(B)->p++ = (char)(c)))
~~~~~~~~~~~^~~~~~~~~~~~
/tmp/luarocks_http-scm-1-V4P9SM/http/http/lib.c:62:7: note: in expansion of macro โluaL_addcharโ
luaL_addchar(b, '\');
^~~~~~~~~~~~
/tmp/luarocks_http-scm-1-V4P9SM/http/http/lib.c:63:6: note: here
default:
^~~~~~~
In file included from /tmp/luarocks_http-scm-1-V4P9SM/http/http/lib.c:39:0:
/tmp/luarocks_http-scm-1-V4P9SM/http/http/tpleval.h: In function โtpe_parseโ:
/tmp/luarocks_http-scm-1-V4P9SM/http/http/tpleval.h:147:9: warning: this statement may fall through [-Wimplicit-fallthrough=]
type = TPE_TEXT;
~~~~~^~~~~~~~~~
/tmp/luarocks_http-scm-1-V4P9SM/http/http/tpleval.h:149:3: note: here
case TPE_LINECODE:
^~~~
In file included from /tmp/luarocks_http-scm-1-V4P9SM/http/http/lib.c:40:0:
/tmp/luarocks_http-scm-1-V4P9SM/http/http/httpfast.h: In function โhttpfast_parseโ:
/tmp/luarocks_http-scm-1-V4P9SM/http/http/httpfast.h:372:22: warning: this statement may fall through [-Wimplicit-fallthrough=]
code = 0;
~~~~~^~~
/tmp/luarocks_http-scm-1-V4P9SM/http/http/httpfast.h:374:13: note: here
case status:
^~~~
/tmp/luarocks_http-scm-1-V4P9SM/http/http/httpfast.h:393:23: warning: this statement may fall through [-Wimplicit-fallthrough=]
state = message;
~~~~~~^~~~~~~~~
/tmp/luarocks_http-scm-1-V4P9SM/http/http/httpfast.h:395:13: note: here
case message:
^~~~
[100%] Linking C shared library lib.so
[100%] Built target httpd
[100%] Built target httpd
Install the project...
-- Install configuration: "Debug"
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/VERSION.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lib/http/lib.so
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/server/init.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/server/tsgi_adapter.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/nginx_server/init.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/router/init.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/router/fs.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/router/matching.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/router/middleware.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/router/request.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/router/response.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/tsgi.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/utils.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/mime_types.lua
-- Installing: /.rocks/share/tarantool/rocks/http/scm-1/lua/http/codes.lua
http scm-1 is now installed in /.rocks (license: BSD)
root@test2:/#
เดเดเดพเตป เดเดเตเดเตพเดเตเดเต เดชเตเดฐเตเดฎเดฟเดคเตเดฏเตเดธเตเด เดเดตเดถเตเดฏเดฎเดพเดฃเต:
root@test2:/# tarantoolctl rocks install prometheus
Installing http://rocks.tarantool.org/prometheus-scm-1.rockspec
Cloning into 'prometheus'...
remote: Enumerating objects: 19, done.
remote: Counting objects: 100% (19/19), done.
remote: Compressing objects: 100% (19/19), done.
remote: Total 19 (delta 2), reused 5 (delta 0), pack-reused 0
Receiving objects: 100% (19/19), 10.73 KiB | 10.73 MiB/s, done.
Resolving deltas: 100% (2/2), done.
prometheus scm-1 is now installed in /.rocks (license: BSD)
root@test2:/#
เดเดเตเดเตพ เดธเดฎเดพเดฐเดเดญเดฟเดเตเดเตเดเดฏเตเด เดฎเตเดกเตเดฏเตเดณเตเดเตพ เดเดเตเดธเดธเต เดเตเดฏเตเดฏเตเดเดฏเตเด เดเตเดฏเตเดฏเดพเด
root@test2:/# curl -D - -s http://127.0.0.1:8080/token
HTTP/1.1 200 Ok
Content-length: 44
Server: Tarantool http (tarantool v2.4.2-80-g18f2bc82d)
Connection: keep-alive
{"token":"e2tPq9l5Z3QZrewRf6uuoJUl3lJgSLOI"}
root@test2:/# curl -D - -s http://127.0.0.1:8080/token
HTTP/1.1 200 Ok
Content-length: 44
Server: Tarantool http (tarantool v2.4.2-80-g18f2bc82d)
Connection: keep-alive
{"token":"fR5aCA84gj9eZI3gJcV0LEDl9XZAG2Iu"}
root@test2:/# curl -D - -s http://127.0.0.1:8080/count
HTTP/1.1 200 Ok
Content-length: 11
Server: Tarantool http (tarantool v2.4.2-80-g18f2bc82d)
Connection: keep-alive
{"count":2}root@test2:/#
/เดเดฃเตเดฃเด เดเดเตเดเตพเดเตเดเต เดธเตเดฑเตเดฑเดพเดฑเตเดฑเดธเต 200 เดจเตฝเดเตเดจเตเดจเต.
/เดเตเดเตเดเตบ เดเดฐเต เดเตเดเตเดเตบ เดจเตฝเดเตเดเดฏเตเด เด เดเตเดเตเดเตบ เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดฒเตเดเตเดเต เดเดดเตเดคเตเดเดฏเตเด เดเตเดฏเตเดฏเตเดจเตเดจเต.
เดตเตเดเดค เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเดจเตเดจเต
50 เด เดญเตเดฏเตผเดคเตเดฅเดจเดเตพเดเตเดเดพเดฏเดฟ เดจเดฎเตเดเตเดเต เดเดฐเต เดฎเดพเดจเดฆเดฃเตเดกเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเด. 000 เดฎเดคเตเดธเดฐ เด เดญเตเดฏเตผเดคเตเดฅเดจเดเตพ เดเดฃเตเดเดพเดเตเด.
root@test2:/# ab -c 500 -n 50000 http://127.0.0.1:8080/token
This is ApacheBench, Version 2.3 <$Revision: 1807734 $>
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Licensed to The Apache Software Foundation, http://www.apache.org/
Benchmarking 127.0.0.1 (be patient)
Completed 5000 requests
Completed 10000 requests
Completed 15000 requests
Completed 20000 requests
Completed 25000 requests
Completed 30000 requests
Completed 35000 requests
Completed 40000 requests
Completed 45000 requests
Completed 50000 requests
Finished 50000 requests
Server Software: Tarantool
Server Hostname: 127.0.0.1
Server Port: 8080
Document Path: /token
Document Length: 44 bytes
Concurrency Level: 500
Time taken for tests: 14.578 seconds
Complete requests: 50000
Failed requests: 0
Total transferred: 7950000 bytes
HTML transferred: 2200000 bytes
Requests per second: 3429.87 [#/sec] (mean)
Time per request: 145.778 [ms] (mean)
Time per request: 0.292 [ms] (mean, across all concurrent requests)
Transfer rate: 532.57 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 10 103.2 0 3048
Processing: 12 69 685.1 15 13538
Waiting: 12 69 685.1 15 13538
Total: 12 78 768.2 15 14573
Percentage of the requests served within a certain time (ms)
50% 15
66% 15
75% 16
80% 16
90% 16
95% 16
98% 21
99% 42
100% 14573 (longest request)
root@test2:/#
เดเตเดเตเดเดฃเตเดเตพ เดตเดฟเดคเดฐเดฃเด เดเตเดฏเตเดฏเตเดจเตเดจเต. เดเดเตเดเตพ เดจเดฟเดฐเดจเตเดคเดฐเด เดกเดพเดฑเตเดฑ เดฑเตเดเตเดเตเตผเดกเตเดเตเดฏเตเดฏเตเดจเตเดจเต. 99% เด เดญเตเดฏเตผเดคเตเดฅเดจเดเดณเตเด 42 เดฎเดฟเดฒเตเดฒเดฟเดธเตเดเตเดเตปเดกเดฟเตฝ เดชเตเดฐเตเดธเดธเตเดธเต เดเตเดฏเตเดคเต. เด เดคเดจเตเดธเดฐเดฟเดเตเดเต, 3500 เดเตเดฑเตเดเดณเตเด 2 เดเดฟเดเดพเดฌเตเดฑเตเดฑเต เดฎเตเดฎเตเดฎเดฑเดฟเดฏเตเดฎเตเดณเตเดณ เดเดฐเต เดเตเดฑเดฟเดฏ เดฎเตเดทเตเดจเดฟเตฝ เดเดเตเดเตพเดเตเดเต เดธเตเดเตเดเตปเดกเดฟเตฝ เดเดเดฆเตเดถเด 4 เด เดญเตเดฏเตผเดคเตเดฅเดจเดเดณเตเดฃเตเดเต.
เดจเดฟเดเตเดเตพเดเตเดเต เดเดเดฆเตเดถเด 50000 เดเตเดเตเดเตบ เดคเดฟเดฐเดเตเดเตเดเตเดคเตเดคเต เด เดคเดฟเดจเตเดฑเต เดฎเตเดฒเตเดฏเด เดเดพเดฃเดพเดจเตเด เดเดดเดฟเดฏเตเด.
เดจเดฟเดเตเดเตพเดเตเดเต http เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เดจเดฟเดเตเดเดณเตเดเต เดกเดพเดฑเตเดฑ เดชเตเดฐเตเดธเดธเตเดธเต เดเตเดฏเตเดฏเตเดจเตเดจ เดชเดถเตเดเดพเดคเตเดคเดฒ เดชเตเดฐเดตเตผเดคเตเดคเดจเดเตเดเดณเตเด เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเดเตเดเดพเด. เดเตเดเดพเดคเต, เดตเดฟเดตเดฟเดง เดเตเดฐเดฟเดเดฑเตเดเตพ เดเดฃเตเดเต. เดเดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดจเดฟเดเตเดเตพเดเตเดเต เด เดชเตเดกเตเดฑเตเดฑเตเดเดณเดฟเตฝ เดซเดเดเตเดทเดจเตเดเตพ เดตเดฟเดณเดฟเดเตเดเดพเด, เดเดจเตเดคเตเดเตเดเดฟเดฒเตเด เดชเดฐเดฟเดถเตเดงเดฟเดเตเดเตเด - เดถเดฐเดฟเดฏเดพเดฏ เดตเตเดฐเตเดฆเตเดงเตเดฏเดเตเดเตพ.
เดจเดฟเดเตเดเตพเดเตเดเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเต เดธเตเตผเดตเดฑเดฟเตฝ เดคเดจเตเดจเต เดจเตเดฐเดฟเดเตเดเต เดธเตเดเตเดฐเดฟเดชเตเดฑเตเดฑเต เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดเตพ เดเดดเตเดคเดพเด, เดเตเดเดพเดคเต เดเดจเตเดจเดฟเดฒเตเด เดชเดฐเดฟเดฎเดฟเดคเดชเตเดชเตเดเตเดคเตเดคเดฐเตเดคเต, เดเดคเตเดเตเดเดฟเดฒเตเด เดฎเตเดกเตเดฏเตเดณเตเดเตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเดเตเดเต เดเดคเตเดเตเดเดฟเดฒเตเด เดฒเตเดเดฟเดเต เดจเดเดชเตเดชเดฟเดฒเดพเดเตเดเตเด.
เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดธเตเตผเดตเดฑเดฟเดจเต เดฌเดพเดนเตเดฏ เดธเตเตผเดตเดฑเตเดเตพ เดเดเตเดธเดธเต เดเตเดฏเตเดฏเดพเดจเตเด เดกเดพเดฑเตเดฑ เดตเตเดฃเตเดเตเดเตเดเตเดเดพเดจเตเด เด เดคเดฟเดจเตเดฑเต เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเดฒเตเดเตเดเต เดเตเตผเดเตเดเดพเดจเตเด เดเดดเดฟเดฏเตเด. เด เดกเดพเดฑเตเดฑเดพเดฌเตเดธเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดฎเดฑเตเดฑเต เดเดชเตเดฒเดฟเดเตเดเตเดทเดจเตเดเตพ เดเดชเดฏเตเดเดฟเดเตเดเตเด.
เดเดฐเดพเดจเตเดฑเตเดฒ เดเดคเต เดธเตเดตเดฏเด เดเตเดฏเตเดฏเตเด, เดจเดฟเดเตเดเตพ เดเดฐเต เดชเตเดฐเดคเตเดฏเตเด เดเดชเตเดฒเดฟเดเตเดเตเดทเตป เดเดดเตเดคเตเดฃเตเดเดคเดฟเดฒเตเดฒ.
เดเดชเดธเดเดนเดพเดฐเดฎเดพเดฏเดฟ
เดเดคเตเดฐเต เดตเดฒเดฟเดฏ เดธเตเดทเตเดเดฟเดฏเตเดเต เดเดฆเตเดฏเดญเดพเดเด เดฎเดพเดคเตเดฐเดฎเดพเดฃเต. Mail.ru เดเตเดฐเตเดชเตเดชเต เดฌเตเดฒเตเดเดฟเตฝ เดฐเดฃเตเดเดพเดฎเดคเตเดคเตเดคเต เดเดเตป เดชเตเดฐเดธเดฟเดฆเตเดงเตเดเดฐเดฟเดเตเดเตเด, เด เดฎเตเดฑเตเดฑเตเดฐเดฟเดฏเดฒเดฟเตฝ เดเดเตเดเตพ เดคเตเตผเดเตเดเดฏเดพเดฏเตเด เด เดคเดฟเดฒเตเดเตเดเต เดเดฐเต เดฒเดฟเดเตเดเต เดเตเตผเดเตเดเตเด.
เดเดเตเดเตพ เดเตบเดฒเตเดจเดฟเตฝ เดเดต เดจเดฟเตผเดฎเตเดฎเดฟเดเตเดเตเดจเตเดจ เดเดตเดจเตเดฑเตเดเดณเดฟเตฝ เดชเดเตเดเตเดเตเดเตเดเดพเดจเตเด เดคเดคเตเดธเดฎเดฏเด เดเตเดฆเตเดฏเดเตเดเตพ เดเตเดฆเดฟเดเตเดเดพเดจเตเด เดจเดฟเดเตเดเตพเดเตเดเต เดคเดพเตฝเดชเตเดชเดฐเตเดฏเดฎเตเดฃเตเดเตเดเตเดเดฟเตฝ, เดเตเดฏเตเตบ เดเตเดฏเตเดฏเตเด
เดจเดฟเดเตเดเตพเดเตเดเต เดเตเดฒเตเดกเดฟเดฒเตเดเตเดเต เดจเตเดเตเดเดฃเดฎเตเดเตเดเดฟเตฝ เด
เดฒเตเดฒเตเดเตเดเดฟเตฝ เดจเดฟเดเตเดเดณเตเดเต เดเตปเดซเตเดฐเดพเดธเตเดเตเดฐเดเตเดเดฑเดฟเดจเต เดเตเดฑเดฟเดเตเดเต เดเตเดฆเตเดฏเดเตเดเดณเตเดฃเตเดเตเดเตเดเดฟเตฝ,
PS เดเดเตเดเตพเดเตเดเต เดชเตเดฐเดคเดฟเดฎเดพเดธเด 2 เดธเตเดเดจเตเดฏ เดเดกเดฟเดฑเตเดฑเตเดเตพ เดเดฃเตเดเต, เดเดฐเตเดชเดเตเดทเต เดจเดฟเดเตเดเดณเตเดเต เดชเตเดฐเตเดเดเตเดฑเตเดฑเต เด
เดตเดฏเดฟเดฒเตเดจเตเดจเดพเดฏเดฟเดฐเดฟเดเตเดเดพเด.
เด
เดตเดฒเดเดฌเด: www.habr.com