OpenNJet:引领下一代云原生应用引擎

文章目录

  • 一、前言
  • 二、什么是OpenNJet 应用引擎
  • 三、OpenNJet的优势
    • 3.1 性能无损动态配置
    • 3.2 灵活的CoPilot框架
    • 3.3 支持HTTP/3
    • 3.4 支持国密
    • 3.5 企业级应用
    • 3.6 高效安全
  • 四、centos 安装
    • 4.1 生成njet.repo
    • 4.2 更新yum 缓存
    • 4.3 安装 njet 或 njet-otel
  • 五、OpenNJet配置与部署
    • 5.1 配置
    • 5.3 启动njet服务
    • 5.4 停止njet服务
  • 六、小结

在这里插入图片描述

一、前言

云原生引擎是一种用于构建、部署和管理云原生应用程序的工具。它可以帮助开发人员更轻松地将应用程序部署到云端,并利用云计算资源来提高应用程序的可靠性、可扩展性和安全性。云原生引擎通常包括容器编排、服务发现、负载均衡、自动伸缩等功能,帮助开发人员更好地利用云计算平台的优势。

二、什么是OpenNJet 应用引擎

在这里插入图片描述

OpenNJet 应用引擎是基于 NGINX 的面向互联网和云原生应用提供的运行时组态服务程序,作为底层引擎,OpenNJet 实现了NGINX 云原生功能增强、安全加固和代码重构,利用动态加载机制可以实现不同的产品形态,如Web服务器、流媒体服务器、负载均衡、代理(Proxy)、应用中间件、API网关、消息队列等产品形态等等。OpenNJet 在云原生架构中作为数据平面,除了提供南北向通信网关的功能以外,还提供了服务网格中东西向通信能力。在原有功能基础上增加了透明流量劫持、熔断、遥测与故障注入等新功能特性。

OpenNJet 最早是基于 NGINX1.19 基础 fork 并独立演进,OpenNJet 具有高性能、稳定、易扩展的特点,同时也解决了 NGINX 长期存在的难于动态配置、管理功能影响业务等问题。我们旨在适应国内特定的技术规范及标准,如国密算法套件支持、构建安全可控的云原生数据面,支撑我国云原生产业生态。

官方链接:https://njet.org.cn/

三、OpenNJet的优势

在这里插入图片描述

3.1 性能无损动态配置

动态配置能力解决NGINX长期痛点,实时更改NGINX配置而无需重新启动服务器。不中断务,快速响应流量需求变化

3.2 灵活的CoPilot框架

在实现高性能的数据处理能力的同时提供方便扩展的管理接口,如指标输出、健康检查、管理界面、配置同步等以 便灵活地、动态地监控、配置和管理系统的各个方面,同时确保数据面的稳定性和可靠性

3.3 支持HTTP/3

HTTP/3采用了全新的底层传输协议即QUIC,为您提供更快、更可靠和更安全的Web浏览体验,保证互联网数据传输效率的同时减少用户等待,并增强网络的安全性

3.4 支持国密

支持国密 SM2、SM3、SM4算法,场景主要为Server和反向代理两种场景,为您提供更强的数据保护,满足合规性

3.5 企业级应用

提供集群状态同步及集群配额控制、高可用及运维文档一体化功能,可以帮助企业更好地实现自动化部署、持续集成和持续交付等 DevOps 实践

3.6 高效安全

在提高现代应用的安全性、可用性和管理效率,特别是涉及到敏感数据、大规模集群和高可用性要求时,帮助企业更好地保护数据、提供可靠的服务,并简化运维任务

四、centos 安装

OpenNJet提供了多种安装方式,无论是省事的二进制安全包,还是利用apt,yum等包管理工具安装发行版,亦或是想要源码安装,都有着一套完整的流程供你选择。
链接跳转:https://njet.org.cn/docs/quickstart/

这里为了免去软件编译与安装的折磨。

为大家带来超详细的教程:

4.1 生成njet.repo

现在 njet 支持yum源安装了,目前只支持 centos 7 和 x86_64架构。具体安装方式如下:
首先使用vim打开

vim /etc/yum.repos.d/njet.repo

再往里面写入指定内容:

[opennjet]
name=OpenNJet
baseurl=https://njet.org.cn/download/linux/centos/$releasever/$basearch/
enabled=1
gpgcheck=1
gpgkey=https://njet.org.cn/download/linux/centos/RPM-GPG-KEY-OpenNJet

在这里插入图片描述

4.2 更新yum 缓存

yum clean all

[图片]

yum makecache 

[图片]

4.3 安装 njet 或 njet-otel

yum install njet
yum install njet-otel

在这里插入图片描述
在这里插入图片描述

五、OpenNJet配置与部署

5.1 配置

以下是一个简单的 OpenNJet 配置文件示例,它将所有请求重定向到一个 HTML 文件。你可以通过修改 njet.conf 文件来配置 OpenNJet。
1.systemctl stop njet 先停止服务
2.编辑/usr/local/njet/conf/njet.conf
vim /usr/local/njet/conf/njet.conf

worker_processes auto;

cluster_name njet;
node_name node1;

error_log logs/error.log error;

helper ctrl modules/njt_helper_ctrl_module.so conf/njet_ctrl.conf;
helper broker modules/njt_helper_broker_module.so;
#helper ha modules/njt_helper_ha_module.so conf/vrrp.conf;

load_module modules/njt_http_split_clients_2_module.so;  
load_module modules/njt_agent_dynlog_module.so;  
load_module modules/njt_http_dyn_bwlist_module.so; 
load_module modules/njt_dyn_ssl_module.so;
load_module modules/njt_http_vtsc_module.so;
load_module modules/njt_http_location_module.so;
#load_module modules/njt_http_lua_module.so;
#load_module modules/njt_http_modsecurity_module.so;
#load_module modules/njt_http_dyn_modsecurity_module.so;

events {
    worker_connections  1024;
}
http {
    server {
       listen 80;
       server_name example.com;
       location / {
           root /var/www/html;
           index index.html;
       }
    }
}

上述配置中,我们在 HTTP 块中定义了一个名为“server”的服务器块。该服务器块监听 80 端口,并将请求的根目录设置为/var/www/html。如果请求的路径不存在,默认会返 回 index.html 文件。

5.2 部署web

mkdir /var/www/html
cd /var/www/html
vi index.html

添加内容如下

<html>
    <head>hello</head>
    <body>body</body>
</html>

手动创建html文件

5.3 启动njet服务

systemctl start njet

浏览器访问 Web 应用程序。只需输入服务器的 IP 地址或域名即 可访问 Web 应用程序。如果您按照上述示例配置 OpenNJet,则应将 Web 应用程序放置在 /var/www/html 目录中,并使用服务器的 IP 地址或域名访问它。

5.4 停止njet服务

systemctl stop njet

六、小结

随着云原生技术的迅速发展和普及,OpenNJet应用引擎作为基于NGINX的云原生解决方案,其未来的前景无疑将更加广阔和光明。

因为云计算的普及和云原生技术的不断成熟,所以有有着越来越多的企业将选择将业务迁移到云端,而OpenNJet作为高效的云原生应用引擎,可以为企业提供更稳定、可靠、安全的云服务。

当然上述所说的只是一方面,OpenNJet能做的事情远不止于此,我个人对OpenNJet是非常看好的。

[图片]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/624170.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【Nginx <一>⭐️】Nginx 的初步了解以及安装使用

目录 &#x1f44b;前言 &#x1f440;一、 Nginx 介绍 &#x1f331;二、 安装使用 &#x1f49e;️ 三、 总结 &#x1f4eb;四、 章末 &#x1f44b;前言 小伙伴们大家好&#xff0c;前段时间主要在学习 Elasticsearch 相关的知识&#xff0c;花了两周的时间吧&#x…

【Linux系统编程】第十八弹---进程状态(上)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】【C详解】【Linux系统编程】 目录 1、操作系统进程 1.1、进程背景 1.2、进程如何在CPU上运行的&#xff1f; 1.2、进程状态 2、Linux的进程状态 2.1、如何描…

【VUE】VUE3绘制箭头组件

效果预览&#xff1a; 长、宽、粗细等等根据情况合理调整即可。 组件&#xff1a; <template><div class"line" :style"props.arrowsColor"></div> </template><script setup> import { defineProps, ref, onMounted } fr…

答辩PPT制作成本高?推荐3个aippt工具

这些网站我愿称之为制作答辩PPT的神&#xff01; 很多快要毕业的同学在做答辩PPT的时候总是感觉毫无思路&#xff0c;一窍不通。但这并不是你们的错&#xff0c;对于平时没接触过相关方面&#xff0c;第一次搞答辩PPT的人来说&#xff0c;这是很正常的一件事。一个好的答辩PPT…

【案例】使用Vue实现拖拽课表

效果展示 效果说明 点击左侧的课程并进行拖拽&#xff0c;拖拽到要开设本课程的地方然后松手&#xff0c;即可将本节课设置为当前所拖拽的科目并且背景色为当前科目的背景色&#xff0c;当多次拖拽到同一节课的时候将会实现后者覆盖前者的效果。 效果实现代码 第一步&#x…

【全开源】多功能投票小程序支持微信公众号+微信小程序+H5(源码搭建/上线/运营/售后/维护更新)

介绍 多功能投票小程序是一款基于FastAdminThinkPHPuniapp开发的一款多功能投票小程序。 ​用户友好与便捷性&#xff1a; 投票小程序界面简洁直观&#xff0c;操作简便&#xff0c;用户无需下载和安装额外的应用&#xff0c;即可在微信或其他平台上直接使用&#xff0c;大大提…

AI应用案例:会议纪要自动生成

以腾讯会议转录生成的会议记录为研究对象&#xff0c;借助大模型强大的语义理解和文本生成等能力&#xff0c;利用指令和文本向量搜索实现摘要总结、要点提取、行动项目提取、会议纪要生成等过程&#xff0c;完成会议纪要的自动总结和生成&#xff0c;降低人工记录和整理时间成…

基于uniapp+vue3+ts小程序项目实战之项目初始化

&#x1f680; 作者 &#xff1a;“二当家-小D” &#x1f680; 博主简介&#xff1a;⭐前荔枝FM架构师、阿里资深工程师||曾任职于阿里巴巴担任多个项目负责人&#xff0c;8年开发架构经验&#xff0c;精通java,擅长分布式高并发架构,自动化压力测试&#xff0c;微服务容器化k…

InstantStyle —— 文本到图像生成中的风格保持新突破

在人工智能领域&#xff0c;文本到图像生成&#xff08;Text-to-Image Generation&#xff09;技术正迅速发展&#xff0c;其应用范围从娱乐到专业设计不断扩展。然而&#xff0c;风格一致性生成一直是该领域的一个技术难题。最近&#xff0c;InstantX团队提出了一种名为Instan…

flutter开发实战-本地SQLite数据存储

flutter开发实战-本地SQLite数据库存储 正在编写一个需要持久化且查询大量本地设备数据的 app&#xff0c;可考虑采用数据库。相比于其他本地持久化方案来说&#xff0c;数据库能够提供更为迅速的插入、更新、查询功能。这里需要用到sqflite package 来使用 SQLite 数据库 预…

网络工程师----第二十五天

计算机基础 第二章&#xff1a;物理层 物理层的功能&#xff1a;怎样在连接各种计算机的传输媒体上传输数据比特流&#xff0c;屏蔽不同传输媒体和通信手段的差异。 传输媒体接口的特性&#xff1a; 机械特性&#xff1a;接口所用接线器的形状和尺寸、引脚数目和排列、固定…

6. 神经网络的内积

目录 1. 准备知识 1.1 NumPy 的多维数组 1.2 矩阵乘法 1.2.1 矩阵乘法顺序 1.2.2 矩阵乘法范例 2. 神经网络的内积 2.1 使用场合 2.2 Python 实现 1. 准备知识 1.1 NumPy 的多维数组 大家应该对多维数组都很熟悉&#xff0c;我不再多言。在 NumPy 模块中&#xff0c;…

PXI/PXIe规格1553B总线测试模块

面向GJB5186测试专门开发的1553B总线适配卡&#xff0c;支持4Mbps和1Mbps总线速率。该产品提供2个双冗余1553B通道、1个测试专用通道、2个线缆测试通道。新一代的TM53x板卡除了支持耦合方式可编程、总线信号幅值可编程、共模电压注入、总线信号波形采集等功能外&#xff0c;又新…

添砖Java之路(其四)——面向对象的编程,类和对象

目录 前言&#xff1a; 面向对象的编程&#xff1a; this关键字&#xff1a; 构造方法&#xff1a; 前言&#xff1a; 其实中间我还有很多地方没有去讲&#xff0c;因为我觉得里面的很多东西和c/c差不太多&#xff0c;就比如逻辑运算&#xff0c;方法重载&#xff0c;以及数…

【数据结构】 二叉树的顺序结构——堆的实现

普通的二叉树是不适合用数组来存储的&#xff0c;因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆(一种二叉树)使用顺序结构的数组来存储 。 一、堆的概念及结构 父节点比孩子结点大 是大堆 父节点比孩子结点小 是小堆 堆的性质 堆中某…

SpringBoot设置默认文件大小

1、问题发现 有个需求&#xff0c;上传文件的时候&#xff0c;发现提示了这个错误&#xff0c;看了一下意思是说&#xff0c;文件超过了1M。 看我们文件的大小&#xff1a; 发现确实是&#xff0c;文件超出了1M&#xff0c;查了一下资料&#xff0c;tomcat默认上传文件大小为1M…

2024龙年新版ui周易测算网站H5源码/在线起名网站源码/运势测算网站系统源码

更新日志 1、修复时间不能选择子时; 2、部分机型支付后不跳转; 3、新增后台支持按照时间、项目、进行订单筛选查询; 4、数据库新增测算结果的纳音、藏干、感情、性格分析; 5、微信支付支持https证书; 6、修复PC端扫码支付问题; 7、新增代理分销功能; 8、新增会员功能&a…

如何把小程序视频下载保存

在这个快节奏的数字时代&#xff0c;小程序已成为我们生活的一部分&#xff0c;而那些在小程序中流转的精彩视频&#xff0c;常常让我们驻足。想象一下&#xff0c;如果能够将这些瞬间的精彩捕捉下来&#xff0c;让它们不再只是屏幕上的一抹流光&#xff0c;而是成为你个人收藏…

Adobe Media Encoder ME v24.3.0 解锁版 (视频和音频编码渲染工具)

Adobe系列软件安装目录 一、Adobe Photoshop PS 25.6.0 解锁版 (最流行的图像设计软件) 二、Adobe Media Encoder ME v24.3.0 解锁版 (视频和音频编码渲染工具) 三、Adobe Premiere Pro v24.3.0 解锁版 (领先的视频编辑软件) 四、Adobe After Effects AE v24.3.0 解锁版 (视…

[算法][贪心算法][leetcode]2244. 完成所有任务需要的最少轮数

题目地址 https://leetcode.cn/problems/minimum-rounds-to-complete-all-tasks/description/ 错误解法&#xff08;暴力解法&#xff09; class Solution {public int minimumRounds(int[] tasks) {int ans 0;//先用一个hashmap记录每个key值出现的次数//判断他们是否能被2或…