前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何用OpenNJet部署自己的应用程序?——OpenNJet实践记录

如何用OpenNJet部署自己的应用程序?——OpenNJet实践记录

原创
作者头像
中杯可乐多加冰
发布2024-05-06 20:47:57
1270
发布2024-05-06 20:47:57
举报
文章被收录于专栏:心源易码心源易码

OpenNJet 应用引擎是基于 NGINX 的面向互联网和云原生应用提供的运行时组态服务程序,其在云原生架构中作为数据平面,除了提供南北向通信网关的功能以外,还提供了服务网格中东西向通信能力,本篇文章将从零开始使用OpenNJet部署自己的应用程序。

一、下载安装OpenNJet

OpenNJet提供了二进制RPM包和DEB包安装方法首先在终端输入lsb_release -a命令,查看本机架构环境:

然后进入https://njet.org.cn/docs/quickstart界面,根据对应的操作系统找到对应下载链接:

将对应的rpm包或者deb安装好后,使用yum或者dpkg方法安装,由于本机是CentOS系统,故在终端输入yum localinstall njet-2.0.1-1.el7.x86_64.rpm进行安装:

使用 rpm 或 deb 二进制安装后,会在 /usr/lib/systemd/system/ 目录下添加 service文件,并提示Complete!表明成功。

安装成功后,就可以使用 sudo systemctl start njet 启动服务,以 root 权限执行 systemctl 工具,然后可以通过浏览器或命令curl http localhost:8080/访问访问部署机器的8080地址,显示If you see this page, web platform is successfully installed andworking. Further configuration is required.或者输出以下html内容说明OpenNJet安装成功!

二、配置与部署应用程序

下面使用OpenNJet 来配置一个简单的 HTTP 服务器,并搭建自己的应用程序上去。

首先,我们将开发好的应用程序进行打包,这里我打包了一个之前开发的Vue项目,直接在终端输入npm run build或者vite build进行打包就可以,不同项目的打包指令和流程可能不相同,需要查看package.json的具体配置。

打包完成后,会生成一个dist文件夹,就是成功打包。

然后将打包好的dist文件夹整个上传到/home/www/html中:

上传完成后,下面对OpenNJet进行配置,首先新建一个conf文件夹专门存放OpenNJet配置文件,在文件夹中新建一个njet.conf:

并将以下基本配置写入njet.conf文件中:

代码语言:javascript
复制
http {
    server {
       listen 80;
       server_name example.com;
       location / {
           root /home/www/html/dist;
           index index.html;
       } 
    }
}

其中,

  • http 用于定义 HTTP 服务器的配置,server用于定义一个虚拟主机。
  • listen 80; 指定该服务器监听 80 端口,即 HTTP 默认端口。
  • location / { ... } 定义了请求的路径,这里是根路径 /,也就是所有请求的入口点。location 块内部定义了如何处理该路径的请求。
  • root /var/www/html; 指定了请求的根目录为 /home/www/html/dist,也就是之前放dist文件夹的地方。(也可以修改,可以将打包好的应用程序放在服务器上的任何位置,只要正确设置 root 目录即可。)
  • index index.html; 指定了当请求的路径指向一个目录时,服务器应该返回的默认文件为 index.html

最后,在终端输入以下命令启动 OpenNJet:、

代码语言:javascript
复制
njet -p /media/ -c conf/njet.conf 

其中,/media/表示之前存放njet.conf 配置文件路径,conf/njet.conf 指定配置文件,然后就可以使用 Web 浏览器访问 Web 应用程序了。输入服务器的IP地址或域名即可访问Web应用程序:

此外,还可以根据需要进行修改和定制,比如在实际部署 Web 应用程序时,使用 OpenNJet 进行动态配置在不中断服务的情况下实时更改 Web 服务器配置,从而快速响应流量需求的变化,或者使用 OpenNJet的负载平衡来分配服务器之间的负载,确保请求被有效地分配到可用的服务器上等等,后续有机会展开。

三、OpenNjet使用感受

总得来讲,OpenNJet给我留下了不错的体验感受。首先OpenNJet通过动态配置能力解决了性能无损动态配置的问题,能够无需重新启动服务器,快速响应流量需求变化;其次,OpenNJet的CoPilot框架不仅实现了高性能的数据处理能力,还提供了方便扩展的管理接口,如指标输出、健康检查、管理界面、配置同步等,使得监控、配置和管理系统的各个方面变得更加灵活和动态;另外,OpenNJet采用全新的底层传输协议QUIC,提供了更快、更可靠和更安全的Web浏览体验。最后,作为一个企业级应用,OpenNJet提供了集群状态同步、集群配额控制、高可用性和运维文档一体化功能。这些功能可以帮助企业更好地实现自动化部署、持续集成和持续交付等DevOps实践。

总的来说,OpenNJet可以应对大规模集群和高可用性要求时的安全性、可用性和管理效率,从而帮助企业保护数据、提供可靠的服务,并简化运维任务。

我正在参与2024腾讯技术创作特训营最新征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、下载安装OpenNJet
  • 二、配置与部署应用程序
  • 三、OpenNjet使用感受
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
http://www.vxiaotou.com