1. ubuntu编译nodejs所需的软件并安装
在准备开始新项目时,我反思并决定重新审视我的技术栈。公司主要使用Java,我的技术堆栈则包括Spring Boot、Zookeeper、JRedis、Dubbo和Druid。Maven依赖的数量令人咋舌,多达35个以上,占据超过4GB的存储空间。而我更偏好的是Node.js + IBM Loopback架构,我曾在此基础上开发过两个微信服务器。因此,我决定花些时间进行对比和压力测试。
我选择了安装Ubuntu 16.04 Server版操作系统,而非桌面版,来编译Node.js LTS版。Ubuntu Server是一个非常纯净的版本,因此需要自行安装必要的软件。具体步骤包括安装GCC(C编译器)、G++(C++编译器)、Make和Python 2.7。随后,下载Node.js LTS版本的源码并解压,执行配置和编译过程。最后,使用sudo make install将编译后的文件安装到系统目录。
成功编译后,Node.js和npm已可用。接着,我安装了loopback CLI和pm2进程管理器,并编写了一个测试程序进行验证。至此,一个基础的Node.js环境搭建完成。接下来,我将部署Java环境、MySQL、Redis等,并使用Nginx进行反向代理和动态均衡。
当前阶段的目标是完成环境搭建,下周一将开始Java环境和相关组件的部署,并使用Nginx进行配置。一旦环境就绪,将进行一系列测试,包括Python + Flask/Django(虽然对Django不太熟悉,但仅作为初步测试)。在选择操作系统时,Ubuntu成为首选,因为它在gcc/g++的最新版本上提供了更好的支持,相较于公司现有的CentOS 6.8版本。
总的来说,我非常享受Node.js带来的高效开发体验。这次部署虽然基于技术选择和个人偏好,但更多的是为了探索和比较不同技术栈的优势。后续的结果和详细测试结果将另作分享。