เจกเฉฐเจช เจ•เจพเจจเจซเจฐเฉฐเจธ | grep 'เจฌเฉˆเจ•เจเจ‚เจก|devops'

เจชเจฟเจ›เจฒเฉ‡ เจนเจซเจผเจคเฉ‡ เจฎเฉˆเจ‚ เจฏเฉ‡เจ•เจพเจŸเฉ‡เจฐเจฟเจจเจฌเจฐเจ— เจตเจฟเฉฑเจš DUMP IT เจ•เจพเจจเจซเจฐเฉฐเจธ (https://dump-ekb.ru/) เจตเจฟเฉฑเจš เจ—เจฟเจ† เจธเฉ€ เจ…เจคเฉ‡ เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจฆเฉฑเจธเจฃเจพ เจšเจพเจนเฉเฉฐเจฆเจพ เจนเจพเจ‚ เจ•เจฟ เจฌเฉˆเจ•เจเจ‚เจก เจ…เจคเฉ‡ เจกเฉ‡เจตเฉ‹เจชเจธ เจธเฉˆเจ•เจธเจผเจจเจพเจ‚ เจตเจฟเฉฑเจš เจ•เฉ€ เจšเจฐเจšเจพ เจ•เฉ€เจคเฉ€ เจ—เจˆ เจธเฉ€, เจ…เจคเฉ‡ เจ•เฉ€ เจ–เฉ‡เจคเจฐเฉ€ เจ†เจˆเจŸเฉ€ เจ•เจพเจจเจซเจฐเฉฐเจธเจพเจ‚ เจงเจฟเจ†เจจ เจฆเฉ‡เจฃ เจฏเฉ‹เจ— เจนเจจเฅค

เจกเฉฐเจช เจ•เจพเจจเจซเจฐเฉฐเจธ | grep 'เจฌเฉˆเจ•เจเจ‚เจก|devops'
เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจฌเจพเจฐเฉ‡ Evil Martians เจคเฉ‹เจ‚ เจจเจฟเจ•เฉ‹เจฒเฉ‡ เจธเจตเฉ‡เจฐเจšเจ•เฉ‹เจต

เจซเจฟเจฐ เจตเฉ€ เจ•เฉ€ เจธเฉ€?

เจ•เฉเฉฑเจฒ เจฎเจฟเจฒเจพ เจ•เฉ‡, เจ•เจพเจจเจซเจฐเฉฐเจธ เจตเจฟเฉฑเจš 8 เจญเจพเจ— เจธเจจ: เจฌเฉˆเจ•เจเจ‚เจก, เจซเจฐเฉฐเจŸเจเจ‚เจก, เจฎเฉ‹เจฌเจพเจˆเจฒ, เจŸเฉˆเจธเจŸเจฟเฉฐเจ— เจ…เจคเฉ‡ QA, เจกเฉ‡เจตเฉ‹เจชเจธ, เจกเจฟเจœเจผเจพเจˆเจจ, เจตเจฟเจ—เจฟเจ†เจจ เจ…เจคเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจจเฅค

เจธเจญ เจคเฉ‹เจ‚ เจตเฉฑเจกเฉ‡ เจนเจพเจฒ, เจตเฉˆเจธเฉ‡, เจตเจฟเจ—เจฟเจ†เจจ เจ…เจคเฉ‡ เจชเฉเจฐเจฌเฉฐเจงเจจ เจตเจฟเฉฑเจš เจนเจจ)) เจนเจฐเฉ‡เจ• เจฒเจˆ ~350 เจฒเฉ‹เจ•เจพเจ‚ เจฒเจˆเฅค เจฌเฉˆเจ•เจเจ‚เจก เจ…เจคเฉ‡ เจซเจฐเฉฐเจŸเจเจ‚เจก เจฌเจนเฉเจค เจ›เฉ‹เจŸเฉ‡ เจจเจนเฉ€เจ‚ เจนเจจเฅค เจกเฉ‡เจตเฉ‹เจชเจธ เจ•เจฎเจฐเจพ เจธเจญ เจคเฉ‹เจ‚ เจ›เฉ‹เจŸเจพ เจธเฉ€, เจชเจฐ เจ•เจฟเจฐเจฟเจ†เจธเจผเฉ€เจฒ เจธเฉ€เฅค

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

SKB-Kontur, DataArt, Evil Martians, Ekaterinburg web studio Flag, Miro (RealTimeBoard) เจฆเฉ‡ เจจเฉเจฎเจพเจ‡เฉฐเจฆเจฟเจ†เจ‚ เจจเฉ‡ Devops เจ…เจคเฉ‡ Backend เจญเจพเจ—เจพเจ‚ เจตเจฟเฉฑเจš เจ—เฉฑเจฒ เจ•เฉ€เจคเฉ€เฅค CI/CD เจตเจพเจฒเฉ‡ เจตเจฟเจธเจผเฉ‡, เจ•เจคเจพเจฐ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ, เจฒเฉŒเจ—เจฟเฉฐเจ—; เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจตเจฟเจธเจผเฉ‡ เจ…เจคเฉ‡ Go เจตเจฟเฉฑเจš PostgreSQL เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจšเฉฐเจ—เฉ€ เจคเจฐเฉเจนเจพเจ‚ เจ•เจตเจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจธเฉ€เฅค

Avito, Tinkoff, Yandex, Jetstyle, Megafon, Ak Bars Bank เจฆเฉเจ†เจฐเจพ เจตเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจธเจจ, เจชเจฐ เจฎเฉ‡เจฐเฉ‡ เจ•เฉ‹เจฒ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจธเจฐเฉ€เจฐเจ• เจคเฉŒเจฐ 'เจคเฉ‡ เจนเจพเจœเจผเจฐ เจนเฉ‹เจฃ เจฆเจพ เจธเจฎเจพเจ‚ เจจเจนเฉ€เจ‚ เจธเฉ€ (เจตเฉ€เจกเฉ€เจ“ เจฐเจฟเจ•เจพเจฐเจกเจฟเฉฐเจ— เจ…เจคเฉ‡ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจธเจฒเจพเจˆเจกเจพเจ‚ เจ…เจœเฉ‡ เจ‰เจชเจฒเจฌเจง เจจเจนเฉ€เจ‚ เจนเจจ, เจ‰เจน 2 เจนเจซเจผเจคเจฟเจ†เจ‚ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ เจชเฉ‹เจธเจŸ เจ•เจฐเจจ เจฆเจพ เจตเจพเจ…เจฆเจพ เจ•เจฐเจฆเฉ‡ เจนเจจเฅค dump-ekb.ru 'เจคเฉ‡).

เจกเจฟเจตเฉ‹เจชเจธ เจธเฉˆเจ•เจธเจผเจจ

เจนเฉˆเจฐเจพเจจเฉ€ เจฆเฉ€ เจ—เฉฑเจฒ เจ‡เจน เจธเฉ€ เจ•เจฟ เจ‡เจน เจธเฉˆเจ•เจธเจผเจจ เจธเจญ เจคเฉ‹เจ‚ เจ›เฉ‹เจŸเฉ‡ เจนเจพเจฒ เจตเจฟเจš เจฒเจ—เจญเจ— 50 เจธเฉ€เจŸเจพเจ‚ เจตเจพเจฒเจพ เจธเฉ€เฅค เจฒเฉ‹เจ• เจเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจตเฉ€ เจ–เฉœเฉ‡ เจธเจจ :) เจฎเฉˆเจ‚ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ‰เจจเฉเจนเจพเจ‚ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจฌเจพเจฐเฉ‡ เจฆเฉฑเจธเจพเจ‚เจ—เจพ เจœเฉ‹ เจฎเฉˆเจ‚ เจธเฉเจฃเจจ เจตเจฟเฉฑเจš เจ•เจพเจฎเจฏเจพเจฌ เจฐเจฟเจนเจพ.

เจ‡เฉฑเจ• เจชเฉ‡เจŸเจพเจฌเจพเจˆเจŸ เจตเจœเจผเจจ เจตเจพเจฒเจพ เจฒเจšเจ•เฉ€เจฒเจพ

เจธเฉˆเจ•เจธเจผเจจ เจฆเฉ€ เจธเจผเฉเจฐเฉ‚เจ†เจค เจตเจฒเจพเจฆเฉ€เจฎเฉ€เจฐ เจฒเจฟเจฒ (SKB-เจ•เฉ‹เจ‚เจŸเฉ‚เจฐ) เจฆเฉเจ†เจฐเจพ เจ•เฉ‹เจ‚เจŸเฉ‚เจฐ เจตเจฟเฉฑเจš เจ‡เจฒเจพเจธเจŸเจฟเจ• เจ–เฉ‹เจœ เจฌเจพเจฐเฉ‡ เจ‡เฉฑเจ• เจฐเจฟเจชเฉ‹เจฐเจŸ เจจเจพเจฒ เจนเฉ‹เจˆเฅค เจ‰เจนเจจเจพเจ‚ เจ•เฉ‹เจฒ เจ•เจพเจซเจผเฉ€ เจตเฉฑเจกเจพ เจ…เจคเฉ‡ เจฒเฉ‹เจก เจ•เฉ€เจคเจพ เจฒเจšเจ•เฉ€เจฒเจพ (~ 800 TB เจกเจพเจŸเจพ, ~ 1.3 เจชเฉ‡เจŸเจพเจฌเจพเจˆเจŸ เจฐเจฟเจกเฉฐเจกเฉˆเจ‚เจธเฉ€ เจจเฉ‚เฉฐ เจงเจฟเจ†เจจ เจตเจฟเฉฑเจš เจฐเฉฑเจ–เจฆเฉ‡ เจนเฉ‹เจ) เจนเฉˆเฅค เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เฉ‹เจ‚เจŸเฉ‚เจฐ เจธเฉ‡เจตเจพเจตเจพเจ‚ เจฒเจˆ เจ‡เจฒเจพเจธเจŸเจฟเจ• เจ–เฉ‹เจœ เจธเจฟเฉฐเจ—เจฒ เจนเฉˆ, เจœเจฟเจธ เจตเจฟเฉฑเจš 2 เจ•เจฒเฉฑเจธเจŸเจฐ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ (7 เจ…เจคเฉ‡ 9 เจธเจฐเจตเจฐเจพเจ‚ เจฆเฉ‡), เจ…เจคเฉ‡ เจ‡เจน เจ‡เฉฐเจจเจพ เจฎเจนเฉฑเจคเจตเจชเฉ‚เจฐเจจ เจนเฉˆ เจ•เจฟ เจ•เฉ‹เจ‚เจŸเฉ‚เจฐ เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจตเจฟเจธเจผเฉ‡เจธเจผ เจ‡เจฒเจพเจธเจŸเจฟเจ• เจ–เฉ‹เจœ เจ‡เฉฐเจœเฉ€เจจเฉ€เจ…เจฐ (เจ…เจธเจฒ เจตเจฟเฉฑเจš, เจตเจฒเจพเจฆเฉ€เจฎเฉ€เจฐ เจ–เฉเจฆ) เจนเฉˆเฅค

เจตเจฒเจพเจฆเฉ€เจฎเฉ€เจฐ เจจเฉ‡ Elasticsearch เจฆเฉ‡ เจฒเจพเจญเจพเจ‚ เจ…เจคเฉ‡ เจ‡เจธ เจจเจพเจฒ เจนเฉ‹เจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚ เจฌเจพเจฐเฉ‡ เจ†เจชเจฃเฉ‡ เจตเจฟเจšเจพเจฐ เจตเฉ€ เจธเจพเจ‚เจเฉ‡ เจ•เฉ€เจคเฉ‡เฅค

เจฒเจพเจญ:

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

เจธเจฎเฉฑเจธเจฟเจ†เจตเจพเจ‚:

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

Elasticsearch เจฒเจˆ เจ“เจชเจจ เจกเจฟเจธเจŸเฉเจฐเฉ‹ เจฌเจพเจฐเฉ‡ เจธเจฟเจฐเจซ เจธเจ•เจพเจฐเจพเจคเจฎเจ• เจธเจฎเฉ€เจ–เจฟเจ†เจตเจพเจ‚ เจธเจจ :) เจ…เจงเจฟเจ•เจพเจฐ เจฆเจพ เจ‰เจนเฉ€ เจฎเฉเฉฑเจฆเจพ เจ‰เฉฑเจฅเฉ‡ เจนเฉฑเจฒ เจ•เฉ€เจคเจพ เจ—เจฟเจ† เจนเฉˆ.

เจชเฉ‡เจŸเจพเจฌเจพเจˆเจŸ เจ•เจฟเฉฑเจฅเฉ‹เจ‚ เจ†เจ‰เจ‚เจฆเฉ€ เจนเฉˆ?เจ‰เจนเจจเจพเจ‚ เจฆเฉ‡ เจจเฉ‹เจกเจพเจ‚ เจตเจฟเฉฑเจš 12*8 Tb SATA + 2*2 Tb SSD เจตเจพเจฒเฉ‡ เจธเจฐเจตเจฐ เจนเฉเฉฐเจฆเฉ‡ เจนเจจเฅค SATA 'เจคเฉ‡ เจ•เฉ‹เจฒเจก เจธเจŸเฉ‹เจฐเฉ‡เจœ, SSD เจธเจฟเจฐเจซเจผ เจ—เจฐเจฎ เจ•เฉˆเจธเจผ (เจ—เจฐเจฎ เจธเจŸเฉ‹เจฐเฉ‡เจœ) เจฒเจˆเฅค
7+9 เจธเจฐเจตเจฐ, (7 + 9) * 12 * 8 = 1536 เจŸเฉ€.เจฌเฉ€.
เจธเจชเฉ‡เจธ เจฆเจพ เจ•เฉเจ เจนเจฟเฉฑเจธเจพ เจฐเจฟเจœเจผเจฐเจต เจตเจฟเฉฑเจš เจนเฉˆ, เจฐเจฟเจกเฉฐเจกเฉˆเจ‚เจธเฉ€ เจฒเจˆ เจ…เจฒเฉฑเจ— เจฐเฉฑเจ–เจฟเจ† เจ—เจฟเจ† เจนเฉˆ, เจ†เจฆเจฟเฅค
เจฒเจ—เจญเจ— 90 เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ‡ เจฒเฉŒเจ— เจ‡เจฒเจพเจธเจŸเจฟเจ•เจธเจฐเจš เจจเฉ‚เฉฐ เจญเฉ‡เจœเฉ‡ เจœเจพเจ‚เจฆเฉ‡ เจนเจจ, เจœเจฟเจธ เจตเจฟเฉฑเจš เจ•เฉ‹เจจเจŸเฉ‚เจฐ, เจเจฒเจฌเจพ, เจ†เจฆเจฟ เจฆเฉ€เจ†เจ‚ เจธเจพเจฐเฉ€เจ†เจ‚ เจฐเจฟเจชเฉ‹เจฐเจŸเจฟเฉฐเจ— เจธเฉ‡เจตเจพเจตเจพเจ‚ เจธเจผเจพเจฎเจฒ เจนเจจเฅค

เจธเจฐเจตเจฐ เจฐเจนเจฟเจค 'เจคเฉ‡ เจตเจฟเจ•เจพเจธ เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚

เจ…เฉฑเจ—เฉ‡ เจธเจฐเจตเจฐเจฒเฉ‡เจธ เจฌเจพเจฐเฉ‡ เจกเฉ‡เจŸเจพเจ†เจฐเจŸ เจคเฉ‹เจ‚ เจฐเฉเจธเจฒเจพเจจ เจธเจฐเจ•เจฟเจจ เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• เจฐเจฟเจชเฉ‹เจฐเจŸ เจนเฉˆ.

เจฐเฉเจธเจฒเจจ เจจเฉ‡ เจ‡เจธ เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เฉ€เจคเฉ€ เจ•เจฟ เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจชเจนเฉเฉฐเจš เจจเจพเจฒ เจ†เจฎ เจคเฉŒเจฐ 'เจคเฉ‡ เจ•เฉ€ เจตเจฟเจ•เจพเจธ เจนเฉเฉฐเจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจ‡เจธ เจฆเฉ€เจ†เจ‚ เจตเจฟเจธเจผเฉ‡เจธเจผเจคเจพเจตเจพเจ‚ เจ•เฉ€ เจนเจจเฅค

เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจตเจฟเจ•เจพเจธ เจฒเจˆ เจ‡เฉฑเจ• เจชเจนเฉเฉฐเจš เจนเฉˆ เจœเจฟเจธ เจตเจฟเฉฑเจš เจกเจฟเจตเฉˆเจฒเจชเจฐ เจ•เจฟเจธเฉ‡ เจตเฉ€ เจคเจฐเฉ€เจ•เฉ‡ เจจเจพเจฒ เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจจเฉ‚เฉฐ เจจเจนเฉ€เจ‚ เจ›เฉ‚เจนเจฆเฉ‡ เจนเจจเฅค เจ‰เจฆเจพเจนเจฐเจจ - AWS Lambda Serverless, Kubeless.io (Kubernetes เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจธเจฐเจตเจฐ เจฐเจนเจฟเจค), Google เจ•เจฒเจพเจ‰เจก เจซเฉฐเจ•เจธเจผเจจเฅค

เจ‡เฉฑเจ• เจ†เจฆเจฐเจธเจผ เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจธเจฟเจฐเจซเจผ เจ‡เฉฑเจ• เจซเฉฐเจ•เจธเจผเจจ เจนเฉˆ เจœเฉ‹ เจ‡เฉฑเจ• เจตเจฟเจธเจผเฉ‡เจธเจผ API เจ—เฉ‡เจŸเจตเฉ‡ เจฆเฉเจ†เจฐเจพ เจ‡เฉฑเจ• เจธเจฐเจตเจฐ เจฐเจนเจฟเจค เจชเฉเจฐเจฆเจพเจคเจพ เจจเฉ‚เฉฐ เจ‡เฉฑเจ• เจฌเฉ‡เจจเจคเฉ€ เจญเฉ‡เจœเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• เจ†เจฆเจฐเจธเจผ เจฎเจพเจˆเจ•เฉเจฐเฉ‹เจธเจฐเจตเจฟเจธ, เจœเจฆเฉ‹เจ‚ เจ•เจฟ AWS Lambda เจตเฉ€ เจตเฉฑเจกเฉ€ เจ—เจฟเจฃเจคเฉ€ เจตเจฟเฉฑเจš เจ†เจงเฉเจจเจฟเจ• เจชเฉเจฐเฉ‹เจ—เจฐเจพเจฎเจฟเฉฐเจ— เจญเจพเจธเจผเจพเจตเจพเจ‚ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจ•เจฒเจพเจ‰เจก เจชเฉเจฐเจฆเจพเจคเจพเจตเจพเจ‚ เจฆเฉ‡ เจฎเจพเจฎเจฒเฉ‡ เจตเจฟเฉฑเจš เจฌเฉเจจเจฟเจ†เจฆเฉ€ เจขเจพเจ‚เจšเฉ‡ เจฆเฉ€ เจธเจพเจ‚เจญ-เจธเฉฐเจญเจพเจฒ เจ…เจคเฉ‡ เจคเฉˆเจจเจพเจค เจ•เจฐเจจ เจฆเฉ€ เจฒเจพเจ—เจค เจœเจผเฉ€เจฐเฉ‹ เจนเฉ‹ เจœเจพเจ‚เจฆเฉ€ เจนเฉˆ, เจ›เฉ‹เจŸเฉ€เจ†เจ‚ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเจพ เจธเจฎเจฐเจฅเจจ เจ•เจฐเจจเจพ เจตเฉ€ เจฌเจนเฉเจค เจธเจธเจคเจพ เจนเฉ‹เจตเฉ‡เจ—เจพ (AWS Lambda - $0.2 / 1 เจฎเจฟเจฒเฉ€เจ…เจจ เจธเจงเจพเจฐเจจ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚)เฅค

เจ…เจœเจฟเจนเฉ‡ เจธเจฟเจธเจŸเจฎ เจฆเฉ€ เจธเจ•เฉ‡เจฒเฉ‡เจฌเจฟเจฒเจŸเฉ€ เจฒเจ—เจญเจ— เจ†เจฆเจฐเจธเจผ เจนเฉˆ - เจ•เจฒเจพเจ‰เจก เจชเฉเจฐเจฆเจพเจคเจพ เจ‡เจธ เจฆเจพ เจ–เฉเจฆ เจงเจฟเจ†เจจ เจฐเฉฑเจ–เจฆเจพ เจนเฉˆ, เจ•เฉเจฌเฉ‡เจฒเฉˆเจธ เจ•เฉเจฌเจฐเจจเฉ‡เจŸเจธ เจ•เจฒเฉฑเจธเจŸเจฐ เจฆเฉ‡ เจ…เฉฐเจฆเจฐ เจ†เจชเจฃเฉ‡ เจ†เจช เจนเฉ€ เจธเจ•เฉ‡เจฒ เจ•เจฐเจฆเจพ เจนเฉˆเฅค

เจจเฉเจ•เจธเจพเจจ เจนเจจ:

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

เจ‡เจฎเจพเจจเจฆเจพเจฐ เจนเฉ‹เจฃ เจฒเจˆ, เจฎเฉˆเจ‚ เจ•เฉเจ เจธเจพเจฒ เจชเจนเจฟเจฒเจพเจ‚ เจธเจฐเจตเจฐเจฒเฉ‡เจธ เจฌเจพเจฐเฉ‡ เจธเฉเจฃเจฟเจ† เจธเฉ€, เจชเจฐ เจ‡เจนเจจเจพเจ‚ เจธเจพเจฐเฉ‡ เจธเจพเจฒเจพเจ‚ เจตเจฟเฉฑเจš เจ‡เจน เจฎเฉ‡เจฐเฉ‡ เจฒเจˆ เจธเจชเจธเจผเจŸ เจจเจนเฉ€เจ‚ เจธเฉ€ เจ•เจฟ เจ‡เจธเจจเฉ‚เฉฐ เจธเจนเฉ€ เจขเฉฐเจ— เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจตเจฐเจคเจฃเจพ เจนเฉˆ. เจฐเฉเจธเจฒเจพเจจ เจฆเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจธเจฎเจ เจชเฉเจฐเจ—เจŸ เจนเฉ‹เจˆ, เจ…เจคเฉ‡ เจฌเฉˆเจ•เจเจ‚เจก เจธเฉˆเจ•เจธเจผเจจ เจคเฉ‹เจ‚ เจจเจฟเจ•เฉ‹เจฒเจพเจˆ เจธเจฐเจตเจฐเจšเจ•เฉ‹เจต (เจˆเจตเจฟเจฒ เจฎเจพเจฐเจŸเฉ€เจ…เจจเจœเจผ) เจฆเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ, เจ‡เจธ เจจเฉ‚เฉฐ เจ‡เจ•เจธเจพเจฐ เจ•เฉ€เจคเจพ เจ—เจฟเจ†เฅค เจ‡เจน เจตเจฟเจ…เจฐเจฅ เจจเจนเฉ€เจ‚ เจธเฉ€ เจ•เจฟ เจฎเฉˆเจ‚ เจ•เจพเจจเจซเจฐเฉฐเจธ เจตเจฟเฉฑเจš เจ—เจฟเจ† :)

CI เจ—เจฐเฉ€เจฌเจพเจ‚ เจฒเจˆ เจนเฉˆ, เจœเจพเจ‚ เจ•เฉ€ เจ‡เจน เจตเฉˆเฉฑเจฌ เจธเจŸเฉ‚เจกเฉ€เจ“ เจฒเจˆ เจ†เจชเจฃเจพ CI เจฒเจฟเจ–เจฃเจพ เจฏเฉ‹เจ— เจนเฉˆ?

เจฏเฉ‡เจ•เจพเจŸเฉ‡เจฐเจฟเจจเจฌเจฐเจ— เจคเฉ‹เจ‚ เจซเจฒเฉˆเจ— เจตเฉˆเฉฑเจฌ เจธเจŸเฉ‚เจกเฉ€เจ“ เจฆเฉ‡ เจฎเฉเจ–เฉ€ เจฎเจฟเจ–เจพเจ‡เจฒ เจฐเฉ‡เจกเฉ€เจ“เจจเฉ‹เจต เจจเฉ‡ เจธเจตเฉˆ-เจฒเจฟเจ–เจค CI/CD เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เฉ€เจคเฉ€เฅค

เจ‰เจธเจฆเจพ เจธเจŸเฉ‚เจกเฉ€เจ“ "เจฎเฉˆเจจเฉ‚เจ…เจฒ CI/CD" (SSH เจฆเฉเจ†เจฐเจพ เจธเจฐเจตเจฐ เจตเจฟเฉฑเจš เจฒเฉŒเจ—เจ‡เจจ เจ•เจฐเฉ‹, เจ‡เฉฑเจ• git เจชเฉเฉฑเจฒ เจ•เจฐเฉ‹, เจฆเจฟเจจ เจตเจฟเฉฑเจš 100 เจตเจพเจฐ เจฆเฉเจนเจฐเจพเจ“) เจคเฉ‹เจ‚ เจœเฉ‡เจจเจ•เจฟเจจเจธ เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจธเจตเฉˆ-เจฒเจฟเจ–เจค เจŸเฉ‚เจฒ เจคเฉฑเจ• เจšเจฒเจพ เจ—เจฟเจ† เจนเฉˆ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ•เฉ‹เจก เจฆเฉ€ เจจเจฟเจ—เจฐเจพเจจเฉ€ เจ•เจฐเจจ เจ…เจคเฉ‡ เจชเฉเจฒเจ•เจฟเจจเจœเจผ เจจเจพเจฎเจ• เจฐเฉ€เจฒเฉ€เจœเจผเจพเจ‚ เจจเฉ‚เฉฐ เจ•เจฐเจจ เจฆเฉ€ เจ†เจ—เจฟเจ† เจฆเจฟเฉฐเจฆเจพ เจนเฉˆเฅค .

เจœเฉ‡เจจเจ•เจฟเฉฐเจธ เจจเฉ‡ เจ•เฉฐเจฎ เจ•เจฟเจ‰เจ‚ เจจเจนเฉ€เจ‚ เจ•เฉ€เจคเจพ? เจ‡เจน เจฎเฉ‚เจฒ เจฐเฉ‚เจช เจตเจฟเฉฑเจš เจฒเฉ‹เฉœเฉ€เจ‚เจฆเฉ€ เจฒเจšเจ•เจคเจพ เจชเฉเจฐเจฆเจพเจจ เจจเจนเฉ€เจ‚ เจ•เจฐเจฆเจพ เจธเฉ€ เจ…เจคเฉ‡ เจ…เจจเฉเจ•เฉ‚เจฒเจฟเจค เจ•เจฐเจจเจพ เจฌเจนเฉเจค เจฎเฉเจธเจผเจ•เจฒ เจธเฉ€เฅค

"เจเฉฐเจกเจพ" Laravel (PHP เจซเจฐเฉ‡เจฎเจตเจฐเจ•) เจตเจฟเฉฑเจš เจตเจฟเจ•เจธเจค เจนเฉเฉฐเจฆเจพ เจนเฉˆเฅค เจ‡เฉฑเจ• CI/CD เจธเจฐเจตเจฐ เจตเจฟเจ•เจธเจฟเจค เจ•เจฐเจจ เจตเฉ‡เจฒเฉ‡, เจฎเจฟเจ–เจพเจ‡เจฒ เจ…เจคเฉ‡ เจ‰เจธเจฆเฉ‡ เจธเจพเจฅเฉ€เจ†เจ‚ เจจเฉ‡ Laravel เจฆเฉ‡ เจฌเจฟเจฒเจŸ-เจ‡เจจ เจฎเจ•เฉˆเจจเจฟเจœเจผเจฎ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เฉ€เจคเฉ€ เจœเจฟเจธเจจเฉ‚เฉฐ เจŸเฉˆเจฒเฉ€เจธเจ•เฉ‹เจช เจ…เจคเฉ‡ เจฆเฉ‚เจค เจ•เจนเจฟเฉฐเจฆเฉ‡ เจนเจจเฅค เจจเจคเฉ€เจœเจพ PHP เจตเจฟเฉฑเจš เจ‡เฉฑเจ• เจธเจฐเจตเจฐ เจนเฉˆ (เจ•เจฟเจฐเจชเจพ เจ•เจฐเจ•เฉ‡ เจจเฉ‹เจŸ เจ•เจฐเฉ‹) เจœเฉ‹ เจ†เจ‰เจฃ เจตเจพเจฒเฉ€เจ†เจ‚ เจตเฉˆเจฌเจนเฉเฉฑเจ• เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฆเฉ€ เจชเฉเจฐเจ•เจฟเจฐเจฟเจ† เจ•เจฐเจฆเจพ เจนเฉˆ, เจซเจฐเฉฐเจŸเจเจ‚เจก เจ…เจคเฉ‡ เจฌเฉˆเจ•เจเจ‚เจก เจฌเจฃเจพ เจธเจ•เจฆเจพ เจนเฉˆ, เจตเฉฑเจ–-เจตเฉฑเจ– เจธเจฐเจตเจฐเจพเจ‚ 'เจคเฉ‡ เจคเจพเจ‡เจจเจพเจค เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆ, เจ…เจคเฉ‡ เจธเจฒเฉˆเจ• เจจเฉ‚เฉฐ เจฐเจฟเจชเฉ‹เจฐเจŸ เจ•เจฐ เจธเจ•เจฆเจพ เจนเฉˆเฅค

เจซเจฟเจฐ, เจจเฉ€เจฒเฉ€/เจนเจฐเฉ‡ เจคเฉˆเจจเจพเจคเฉ€ เจ•เจฐเจจ เจฆเฉ‡ เจฏเฉ‹เจ— เจนเฉ‹เจฃ เจ…เจคเฉ‡ dev-stage-prod เจตเจพเจคเจพเจตเจฐเจฃ เจตเจฟเฉฑเจš เจ‡เฉฑเจ•เจธเจพเจฐ เจธเฉˆเจŸเจฟเฉฐเจ—เจพเจ‚ เจฐเฉฑเจ–เจฃ เจฒเจˆ, เจ‰เจน เจกเฉŒเจ•เจฐ เจตเจฟเฉฑเจš เจฌเจฆเจฒ เจ—เจเฅค เจซเจพเจ‡เจฆเฉ‡ เจ‰เจนเฉ€ เจฐเจนเฉ‡, เจตเจพเจคเจพเจตเจฐเจฃ เจจเฉ‚เฉฐ เจ‡เจ•เจธเจพเจฐ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ€เจ†เจ‚ เจธเฉฐเจญเจพเจตเจจเจพเจตเจพเจ‚ เจ…เจคเฉ‡ เจธเจนเจฟเจœ เจคเฉˆเจจเจพเจคเฉ€ เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ†, เจ…เจคเฉ‡ เจกเฉŒเจ•เจฐ เจจเฉ‚เฉฐ เจ‡เจธเจฆเฉ‡ เจจเจพเจฒ เจธเจนเฉ€ เจขเฉฐเจ— เจจเจพเจฒ เจ•เฉฐเจฎ เจ•เจฐเจจ เจฒเจˆ เจธเจฟเฉฑเจ–เจฃ เจฆเฉ€ เจœเจผเจฐเฉ‚เจฐเจค เจจเฉ‚เฉฐ เจœเฉ‹เฉœเจฟเจ† เจ—เจฟเจ†เฅค

เจชเฉเจฐเฉ‹เจœเฉˆเจ•เจŸ Github 'เจคเฉ‡ เจนเฉˆ

เจ…เจธเฉ€เจ‚ เจธเจฐเจตเจฐ เจฐเฉ€เจฒเฉ€เจœเจผ เจฐเฉ‹เจฒเจฌเฉˆเจ•เจธ เจฆเฉ€ เจ—เจฟเจฃเจคเฉ€ เจจเฉ‚เฉฐ 99% เจ•เจฟเจตเฉ‡เจ‚ เจ˜เจŸเจพเจ‡เจ†

Devops เจญเจพเจ— เจตเจฟเฉฑเจš เจ†เจ–เจฐเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸ Miro.com (เจชเจนเจฟเจฒเจพเจ‚ RealTimeBoard) เจฆเฉ‡ เจฒเฉ€เจก เจกเจฟเจตเฉ‹เจชเจธ เจ‡เฉฐเจœเฉ€เจจเฉ€เจ…เจฐ เจตเจฟเจ•เจŸเจฐ เจเจฐเฉ‡เจฎเจšเฉ‡เจ‚เจ•เฉ‹ เจฆเฉ€ เจธเฉ€เฅค

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

เจ‡เฉฑเจ• เจธเจฟเจธเจŸเจฎ เจฌเจฃเจพเจ‰เจฃ เจฆเฉ‡ เจฐเจธเจคเฉ‡ 'เจคเฉ‡ เจœเฉ‹ เจคเฉเจนเจพเจจเฉ‚เฉฐ เจ…เจœเจฟเจนเจพ เจ•เจฐเจจ เจฆเฉ€ เจ‡เจœเจพเจœเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉˆ, เจฎเฉ€เจฐเฉ‹ เจ‡เฉฑเจ• เจฎเจพเจฐเจ— เจคเฉ‹เจ‚ เจฒเฉฐเจ˜เจฟเจ† เจœเจฟเจธ เจตเจฟเฉฑเจš เจ†เจฐเจ•เฉ€เจŸเฉˆเจ•เจšเจฐ 'เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ, เจตเจฐเจคเฉ‡ เจ—เจ เจŸเฉ‚เจฒ (เจเจŸเจฒเจธเฉ€เจ…เจจ เจฌเจพเจ‚เจธ, เจเจ‚เจธเฉ€เจฌเจฒ, เจ†เจฆเจฟ), เจ…เจคเฉ‡ เจŸเฉ€เจฎเจพเจ‚ เจฆเฉ‡ เจขเจพเจ‚เจšเฉ‡ 'เจคเฉ‡ เจ•เฉฐเจฎ เจ•เจฐเจจเจพ เจธเจผเจพเจฎเจฒ เจนเฉˆ (เจ‰เจนเจจเจพเจ‚ เจ•เฉ‹เจฒ เจนเฉเจฃ เจ‡เฉฑเจ• เจธเจฎเจฐเจชเจฟเจค Devops เจŸเฉ€เจฎ + เจตเฉฑเจ–-เจตเฉฑเจ– เจชเฉเจฐเฉ‹เจซเจพเจˆเจฒเจพเจ‚ เจฆเฉ‡ เจกเจฟเจตเฉˆเจฒเจชเจฐเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจตเฉฑเจ–เจฐเฉ€เจ†เจ‚ เจธเจ•เฉเจฐเจฎ เจŸเฉ€เจฎเจพเจ‚)เฅค

เจฐเจธเจคเจพ เจ”เจ–เจพ เจ…เจคเฉ‡ เจ•เฉฐเจกเจฟเจ†เจ‚ เจตเจพเจฒเจพ เจจเจฟเจ•เจฒเจฟเจ†, เจ…เจคเฉ‡ เจตเจฟเจ•เจŸเจฐ เจจเฉ‡ เจ‡เจ•เฉฑเจ เฉ‡ เจนเฉ‹เจ เจฆเจฐเจฆ เจ…เจคเฉ‡ เจ†เจธเจผเจพเจตเจพเจฆ เจจเฉ‚เฉฐ เจธเจพเจ‚เจเจพ เจ•เฉ€เจคเจพ เจœเฉ‹ เจ‡เฉฑเจฅเฉ‡ เจ–เจคเจฎ เจจเจนเฉ€เจ‚ เจนเฉ‹เจ‡เจ†เฅค

เจกเฉฐเจช เจ•เจพเจจเจซเจฐเฉฐเจธ | grep 'เจฌเฉˆเจ•เจเจ‚เจก|devops'
เจธเจตเจพเจฒ เจชเฉเฉฑเจ›เจฃ เจฒเจˆ เจ‡เฉฑเจ• เจ•เจฟเจคเจพเจฌ เจœเจฟเฉฑเจคเฉ€

เจฌเฉˆเจ•เจเจ‚เจก เจธเฉˆเจ•เจธเจผเจจ

เจฎเฉˆเจ‚ 2 เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจตเจฟเฉฑเจš เจธเจผเจพเจฎเจฒ เจนเฉ‹เจฃ เจตเจฟเฉฑเจš เจ•เจพเจฎเจฏเจพเจฌ เจฐเจฟเจนเจพ - เจจเจฟเจ•เฉ‹เจฒเฉ‡ เจธเจตเฉ‡เจฐเจšเจ•เฉ‹เจต (เจˆเจตเจฟเจฒ เจฎเจพเจฐเจŸเฉ€เจ…เจจเจœเจผ), เจธเจฐเจตเจฐเจฒเฉ‡เจธ เจฌเจพเจฐเฉ‡ เจตเฉ€, เจ…เจคเฉ‡ เจŸเฉˆเจฒเฉ€เจฎเฉˆเจŸเจฐเฉ€ เจฌเจพเจฐเฉ‡ เจ—เฉเจฐเจฟเจ—เฉ‹เจฐเฉ€ เจ•เฉ‹เจธเจผเฉ‡เจฒเฉ‡เจต (เจ•เฉ‹เจจเจŸเฉ‚เจฐ เจ•เฉฐเจชเจจเฉ€) เจคเฉ‹เจ‚เฅค

เจจเจฟเจฐเฉ‡ เจชเฉเจฐเจพเจฃเฉ€เจ†เจ‚ เจฒเจˆ เจธเจฐเจตเจฐเจนเฉ€เจฃ

เจœเฉ‡เจ•เจฐ เจฐเฉเจธเจฒเจจ เจธเจฐเจ•เจฟเจจ เจจเฉ‡ เจธเจฐเจตเจฐเจฒเฉ‡เจธ เจ•เฉ€ เจนเฉˆ เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เฉ€เจคเฉ€, เจคเจพเจ‚ เจจเจฟเจ•เฉ‹เจฒเฉ‡ เจจเฉ‡ เจธเจฐเจตเจฐเจฒเฉ‡เจธ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเฉ‡ เจนเฉ‹เจ เจธเจงเจพเจฐเจจ เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจจเฉ‚เฉฐ เจฆเจฟเจ–เจพเจ‡เจ†, เจ…เจคเฉ‡ เจ‰เจนเจจเจพเจ‚ เจตเฉ‡เจฐเจตเจฟเจ†เจ‚ เจฌเจพเจฐเฉ‡ เจ—เฉฑเจฒ เจ•เฉ€เจคเฉ€ เจœเฉ‹ AWS Lambda เจตเจฟเฉฑเจš เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจเจพเจ‚ เจฆเฉ€ เจฒเจพเจ—เจค เจ…เจคเฉ‡ เจ—เจคเฉ€ เจจเฉ‚เฉฐ เจชเฉเจฐเจญเจพเจตเจค เจ•เจฐเจฆเฉ‡ เจนเจจเฅค

เจ‡เฉฑเจ• เจฆเจฟเจฒเจšเจธเจช เจตเฉ‡เจฐเจตเจพ: เจ˜เฉฑเจŸเฉ‹-เจ˜เฉฑเจŸ เจญเฉเจ—เจคเจพเจจ เจ•เฉ€เจคเจพ เจคเฉฑเจค 128 Mb เจฎเฉˆเจฎเฉ‹เจฐเฉ€ เจ…เจคเฉ‡ 100 ms CPU เจนเฉˆ, เจ‡เจธเจฆเฉ€ เจ•เฉ€เจฎเจค $0,000000208 เจนเฉˆเฅค เจ‡เจธ เจคเฉ‹เจ‚ เจ‡เจฒเจพเจตเจพ, เจชเฉเจฐเจคเฉ€ เจฎเจนเฉ€เจจเจพ 1 เจฎเจฟเจฒเฉ€เจ…เจจ เจ…เจœเจฟเจนเฉ€เจ†เจ‚ เจฌเฉ‡เจจเจคเฉ€เจ†เจ‚ เจฎเฉเจซเจค เจนเจจเฅค

เจจเจฟเจ•เฉ‹เจฒเจพเจˆ เจฆเฉ‡ เจ•เฉเจ เจซเฉฐเจ•เจธเจผเจจ เจ…เจ•เจธเจฐ 100 ms เจธเฉ€เจฎเจพ เจคเฉ‹เจ‚ เจตเฉฑเจง เจœเจพเจ‚เจฆเฉ‡ เจนเจจ (เจฎเฉเฉฑเจ– เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจฐเฉ‚เจฌเฉ€ เจตเจฟเฉฑเจš เจฒเจฟเจ–เฉ€ เจ—เจˆ เจธเฉ€), เจ‡เจธเจฒเจˆ เจ‰เจนเจจเจพเจ‚ เจจเฉ‚เฉฐ Go เจตเจฟเฉฑเจš เจฆเฉเจฌเจพเจฐเจพ เจฒเจฟเจ–เจฃ เจจเจพเจฒ เจธเจผเจพเจจเจฆเจพเจฐ เจฌเจšเจค เจฎเจฟเจฒเจฆเฉ€ เจนเฉˆเฅค

เจตเฉ‹เจธเจŸเฉ‹เจ• เจนเจฐเจ•เฉ‚เจฒเฉ€เจธ โ€” เจŸเฉˆเจฒเฉ€เจฎเฉˆเจŸเจฐเฉ€ เจจเฉ‚เฉฐ เจฆเฉเจฌเจพเจฐเจพ เจธเจผเจพเจจเจฆเจพเจฐ เจฌเจฃเจพเจ“!

เจŸเฉˆเจฒเฉ€เจฎเฉˆเจŸเจฐเฉ€ เจฌเจพเจฐเฉ‡ เจ—เฉเจฐเจฟเจ—เฉ‹เจฐเฉ€ เจ•เฉ‹เจธเจผเฉ‡เจฒเฉ‡เจต (เจ•เฉ‹เจ‚เจŸเฉ‚เจฐ เจ•เฉฐเจชเจจเฉ€) เจคเฉ‹เจ‚ เจฌเฉˆเจ•เจเจ‚เจก เจธเฉˆเจ•เจธเจผเจจ เจฆเฉ€ เจคเจพเจœเจผเจพ เจฐเจฟเจชเฉ‹เจฐเจŸเฅค เจŸเฉˆเจฒเฉ€เจฎเฉˆเจŸเจฐเฉ€ เจฆเจพ เจ…เจฐเจฅ เจนเฉˆ เจฒเฉŒเจ—, เจฎเฉˆเจŸเฉเจฐเจฟเจ•เจธ, เจเจชเจฒเฉ€เจ•เฉ‡เจธเจผเจจ เจŸเจฐเฉ‡เจธเฅค

เจ‡เจธ เจฎเฉฐเจคเจต เจฒเจˆ, เจ•เฉฐเจŸเฉ‹เจฐ เจ—เจฟเจฅเจฌ 'เจคเฉ‡ เจชเฉ‹เจธเจŸ เจ•เฉ€เจคเฉ‡ เจ—เจ เจธเจตเฉˆ-เจฒเจฟเจ–เจค เจธเจพเจงเจจเจพเจ‚ เจฆเฉ€ เจตเจฐเจคเฉ‹เจ‚ เจ•เจฐเจฆเจพ เจนเฉˆเฅค เจฐเจฟเจชเฉ‹เจฐเจŸ เจคเฉ‹เจ‚ เจŸเฉ‚เจฒ - เจนเจฐเจ•เฉ‚เจฒเฉ€เจธ, github.com/vostok/hercules, เจŸเฉˆเจฒเฉ€เจฎเฉˆเจŸเจฐเฉ€ เจกเฉ‡เจŸเจพ เจชเฉเจฐเจฆเจพเจจ เจ•เจฐเจจ เจฒเจˆ เจตเจฐเจคเจฟเจ† เจœเจพเจ‚เจฆเจพ เจนเฉˆเฅค

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

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

เจ‡เจน เจนเฉ‹เจฐ เจ•เจพเจจเจซเจฐเฉฐเจธเจพเจ‚ เจจเจพเจฒ เจ•เจฟเจตเฉ‡เจ‚ เจคเฉเจฒเจจเจพ เจ•เจฐเจฆเจพ เจนเฉˆ?

เจฎเฉˆเจ‚ เจ‡เจธเจฆเฉ€ เจคเฉเจฒเจจเจพ เจฎเจพเจธเจ•เฉ‹ เจ…เจคเฉ‡ เจธเฉ‡เจ‚เจŸ เจชเฉ€เจŸเจฐเจธเจฌเจฐเจ— เจตเจฟเฉฑเจš เจ•เจพเจจเจซเจฐเฉฐเจธเจพเจ‚ เจจเจพเจฒ เจจเจนเฉ€เจ‚ เจ•เจฐ เจธเจ•เจฆเจพ, เจฎเฉˆเจ‚ เจ‡เจธเจฆเฉ€ เจคเฉเจฒเจจเจพ เจฏเฉ‚เจฐเจฒ เจตเจฟเฉฑเจš เจนเฉ‹เจฐ เจธเจฎเจพเจ—เจฎเจพเจ‚ เจ…เจคเฉ‡ เจธเจฎเจพเจฐเจพ เจตเจฟเฉฑเจš 404 เจซเฉˆเจธเจŸ เจจเจพเจฒ เจ•เจฐ เจธเจ•เจฆเจพ เจนเจพเจ‚เฅค

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

เจ‡เจ• เจนเฉ‹เจฐ เจฆเจฟเจฒเจšเจธเจช เจจเฉเจ•เจคเจพ เจ‡เจน เจนเฉˆ เจ•เจฟ เจฌเจนเฉเจค เจธเจพเจฐเฉ€เจ†เจ‚ เจ•เฉฐเจชเจจเฉ€เจ†เจ‚ เจ•เฉ‹เจฒ เจ•เจพเจจเจซเจฐเฉฐเจธ เจตเจฟเจš เจ‡เจ•เฉ‹ เจธเจฎเฉ‡เจ‚ 3-4 เจธเจชเฉ€เจ•เจฐ เจนเฉเฉฐเจฆเฉ‡ เจนเจจ (เจ‡เจน เจ•เฉ‹เจจเจŸเฉ‚เจฐ, เจˆเจตเจฟเจฒ เจฎเจพเจฐเจŸเฉ€เจ…เจจเจœเจผ, เจŸเจฟเฉฐเจ•เฉ‹เจซ เจจเจพเจฒ เจ•เฉ‡เจธ เจธเฉ€)เฅค เจ‰เจจเฉเจนเจพเจ‚ เจตเจฟเฉฑเจšเฉ‹เจ‚ เจฌเจนเฉเจค เจธเจพเจฐเฉ‡ เจธเจชเจพเจ‚เจธเจฐ เจธเจจ, เจชเจฐ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจฆเฉ‚เจœเจฟเจ†เจ‚ เจฆเฉ‡ เจฌเจฐเจพเจฌเจฐ เจนเจจ, เจ‡เจน เจ‡เจธเจผเจคเจฟเจนเจพเจฐเจฌเจพเจœเจผเฉ€ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจจเจนเฉ€เจ‚ เจนเจจเฅค

เจœเจพเจฃเจพ เจนเฉˆ เจœเจพเจ‚ เจจเจนเฉ€เจ‚ เจœเจพเจฃเจพ? เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจฏเฉ‚เจฐเจฒ เจœเจพเจ‚ เจจเฉ‡เฉœเฉ‡ เจฐเจนเจฟเฉฐเจฆเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจคเฉเจนเจพเจกเฉ‡ เจ•เฉ‹เจฒ เจฎเฉŒเจ•เจพ เจนเฉˆ เจ…เจคเฉ‡ เจตเจฟเจธเจผเจฟเจ†เจ‚ เจตเจฟเฉฑเจš เจฆเจฟเจฒเจšเจธเจชเฉ€ เจฐเฉฑเจ–เจฆเฉ‡ เจนเฉ‹ - เจนเจพเจ‚, เจœเจผเจฐเฉ‚เจฐ. เจœเฉ‡ เจคเฉเจธเฉ€เจ‚ เจ‡เฉฑเจ• เจฒเฉฐเจฌเฉ€ เจฏเจพเจคเจฐเจพ เจฌเจพเจฐเฉ‡ เจธเฉ‹เจš เจฐเจนเฉ‡ เจนเฉ‹, เจคเจพเจ‚ เจฎเฉˆเจ‚ เจชเจฟเจ›เจฒเฉ‡ เจธเจพเจฒเจพเจ‚ เจฆเฉ€เจ†เจ‚ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจ…เจคเฉ‡ เจตเฉ€เจกเฉ€เจ“ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจฆเฉ‡ เจตเจฟเจธเจผเจฟเจ†เจ‚ เจจเฉ‚เฉฐ เจฆเฉ‡เจ–เจพเจ‚เจ—เจพ www.youtube.com/user/videoitpeople/videos เจ…เจคเฉ‡ เจ‡เฉฑเจ• เจซเฉˆเจธเจฒเจพ เจ•เฉ€เจคเจพ.
เจ–เฉ‡เจคเจฐเจพเจ‚ เจตเจฟเฉฑเจš เจ•เจพเจจเจซเจฐเฉฐเจธเจพเจ‚ เจฆเจพ เจ‡เฉฑเจ• เจนเฉ‹เจฐ เจซเจพเจ‡เจฆเจพ, เจ‡เฉฑเจ• เจจเจฟเจฏเจฎ เจฆเฉ‡ เจคเฉŒเจฐ เจคเฉ‡, เจ‡เจน เจนเฉˆ เจ•เจฟ เจฐเจฟเจชเฉ‹เจฐเจŸเจพเจ‚ เจคเฉ‹เจ‚ เจฌเจพเจ…เจฆ เจธเจชเฉ€เจ•เจฐ เจจเจพเจฒ เจธเฉฐเจšเจพเจฐ เจ•เจฐเจจเจพ เจ†เจธเจพเจจ เจนเฉˆ; เจ…เจœเจฟเจนเฉ‡ เจธเฉฐเจšเจพเจฐ เจฒเจˆ เจฌเจนเฉเจค เจ˜เฉฑเจŸ เจฌเจฟเจจเฉˆเจ•เจพเจฐ เจนเจจ.

เจกเฉฐเจช เจ•เจพเจจเจซเจฐเฉฐเจธ | grep 'เจฌเฉˆเจ•เจเจ‚เจก|devops'

เจกเฉฐเจช เจ…เจคเฉ‡ เจเจ•เฉ‡เจŸเจฐเจฟเจจเจฌเจฐเจ— เจฒเจˆ เจงเฉฐเจจเจตเจพเจฆ! )

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

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