Node.js үчүн хостинг дагы деле кеңири жайыла элек, айрыкча немис тилдүү өлкөлөрдө. Америкалык булут компаниясы Heroku бул жерде каражатты сунуштайт, ал тургай акысыз . Сиз ар дайым "Колдонмолорду түзүңүз ... инфраструктура эмес" парадигмасын байкайсыз жана чектөөлөргө ээ эмессиз. Мисал катары, биз PhantomJSтин негизинде күн сайын веб-сайтты бузуп , баракчанын аталышын электрондук почта аркылуу жөнөтүп турган чакан cron жумушун ишке ашырып жатабыз.
Бул үчүн, биз биринчи жолу эркин катталуу https://signup.heroku.com/:
Милдеттүү түрдө электрондук почта ырасталгандан кийин, биз коопсуз сыр сөздү чыгарабыз:
Кийинчерээк Marketplace'тен акысыз кошумча каражаттарды колдоно алуу үчүн, алгач насыя картасын киргизүү менен https://heroku.com/verify дарегиндеги каттоо эсебиңизди текшеришибиз керек (кабатыр болбоңуз, бардыгы акысыз бойдон калууда):
Калгандары эми буйрук сабында гана өтөт. Бул үчүн бизге жергиликтүү Node.js / npm , Git жана Heroku CLI керек .
Акыры, Heroku'го буйрук сабында жергиликтүү (бир жолу) киребиз:
Алгач, ылайыктуу курама пакеттин негизинде жаңы колдонмо түзөбүз . Биздин мисалда расмий Node.js buildpack heroku-buildpack-nodejs.git колдонуп жатабыз:
1a01abaf4b9308c5714622396ccc4708
Эми биздин долбоор үчүн талап кылынган PhantomJS , CasperJS , SpookyJS жана Nodemailer пакеттерин орнотуу үчүн pack.json түзөбүз:
1a01abaf4b9308c5714622396ccc4708
Чыныгы логиканы script.js табууга болот:
1a01abaf4b9308c5714622396ccc4708
Алгач биз баардыгын жергиликтүү деңгээлде сынайбыз:
1a01abaf4b9308c5714622396ccc4708
Сценарий веб-сайттан аталыш алып, электрондук почта билдирүүсүн жөнөтөт:
Азыр биз бардык нерсени Herokuге түртүп жатабыз, бул дагы курулуш процессин баштайт:
1a01abaf4b9308c5714622396ccc4708
Эгер сиз кийинчерээк Heroku кодун өзгөрткүңүз келсе, анда жөн эле дагы бир жолу түртөсүз. Бир жагынан, биз SSHди колдонуп, серверде бардыгы иштеп жаткандыгын текшере алабыз:
1a01abaf4b9308c5714622396ccc4708
Бул жерде дагы электрондук кат туура жөнөтүлдү. Эми биз процессти автоматташтырышыбыз керек:
1a01abaf4b9308c5714622396ccc4708
"Жаңы жумуш кошуу" менен жаңы скрипт чалууну кошобуз:
Сыноо иретинде, ар бир 10 мүнөт сайын жыштык катары тандап, сактап коёбуз:
Эми cronjob келечекте өз ишин автоматтык түрдө аткарат.