动态规划
维基百科对动态规划(Dynamic programming,简称DP)的定义是一种在数学、管理科学、计算机科学、经济学和生物信息学中使用的,通过把原问题分解为相对简单的子问题的方式求解复杂问题的方法。
在开发中做定时任务是一个非常常见的业务场景,在代码层面 Node.js 可以用 setTimeout、setInerval 这种基础语法或用 node-schedule 这些类似的库来达到部分目的,在第三方服务上可以用 Redis 的 Keyspace Notification 或 Linux 自身的 crontab 来做定时任务。RabbitMQ 作为一个消息中间件,使用其死信队列也可以达到做定时任务的目的。
随着 Node.js v8 的发布,Node.js 已原生支持 async/await 函数,Web 框架 Koa 也随之发布了 Koa 2 正式版,支持 async/await 中间件,为处理异步回调带来了极大的方便。
常说的ELK是指包括 elasticsearch、logstash 和 kibana 的一套技术栈,常用来处理日志等数据。最近在用这一套 stack 处理 nginx 的日志,而且还用到了 elastic 的另一个产品 beats,来作为客户端 shipper,形成了ELKB Stack。
持续集成(Continuous integration,简称CI)是一套标准的互联网软件开发和发布流程,主要指频繁的将代码集成到主干,让产品可以快速迭代,同时能保证高质量。