I frequently saw words ‘invoke’ and ‘deploy’ used in meaning of “to use something that resolve problem of certain domain” in software technology blog posts. What are differences between them and when should I select which one?
In general, in a programming and software context, the primary difference is that deploying something implies a permanent change in how something will function.
You might invoke commands or functions but you will deploy code or "changes"
Deploying implies greater effort and uniqueness. You might invoke hundreds of commands a day and your code might invoke thousands of functions a second, but you would only deploy code or a tool a few times a day.