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

前言

OpenNJet,是一款基于强大的 NGINX 技术栈构建的创新型云原生运行时组态服务程序,旨在为互联网与云原生应用场景提供高效、灵活且安全的服务支持。通过对 NGINX 的云原生功能深度强化、安全加固以及代码重构,实现了对基础架构的全面升级,从而能够通过动态加载机制轻松适配多种业务场景,以满足不同产品的形态需求。

一、技术架构

好的产品都是从好的设计开始的,优秀的技术架构才能承载多样化的业务场景、拥有极高的性能、更易扩展和管理等独特优势。
技术架构
从而,OpenNJet 能够有效管理和调控微服务之间的内部通信,确保服务间调用的高效、可靠与透明。

二、新增特性

1. 透明流量劫持

OpenNJet 具备对服务间流量的透明拦截与操控能力,能够在不改变服务本身的情况下,对数据包进行检测、修改或者重定向,便于实施统一的安全策略、监控措施或进行A/B测试等高级操作。

2. 熔断机制

为了保护系统免受局部故障的连锁反应影响,OpenNJet 集成了服务熔断功能。当某个服务的错误率超过预设阈值时,引擎能够自动切断对该服务的请求,防止故障扩散,并提供降级处理或备用服务切换,确保整体系统的稳定性和用户体验。

3. 遥测与故障注入

OpenNJet 实现了全面的遥测能力,能够实时收集并上报服务间的调用指标、性能数据以及异常事件,为运维人员提供详尽的可观测性视图。此外,它还支持故障注入测试,允许在生产环境中模拟特定故障场景,以验证系统的容错能力和恢复策略,助力持续改进服务的韧性和可靠性。

三、Ubuntu 发行版安装 OpentNJet

1. 添加gpg 文件

 sudo apt-get update
 sudo apt-get install ca-certificates curl gnupg
 sudo install -m 0755 -d /etc/apt/keyrings
 curl -fsSL https://njet.org.cn/download/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/njet.gpg
 sudo chmod a+r /etc/apt/keyrings/njet.gpg

添加gpg文件

2. 添加APT 源

echo \
"deb [arch=$(dpkg --print-architecture) signed-
by=/etc/apt/keyrings/njet.gpg] https://njet.org.cn/download/linux/ubuntu \
 $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
 sudo tee /etc/apt/sources.list.d/njet.list > /dev/null
 sudo apt-get update

添加apt源

注意
E:Malformed entry 1 in list file /etc/apt/sources.list.d/njet.list ([option] not assignment)
报错解释:这个错误表明在/etc/apt/sources.list.d/njet.list文件中,列表中的第一个条目格式不正确。

解决方法
1)打开文件进行编辑 sudo vim /etc/apt/sources.list.d/njet.list
2)检查并修正第一个条目的格式。正确的条目通常以deb或deb-src开头,后面跟着相应的仓库地址、发行版名称、版本号和构架。
修改为:deb [arch=amd64 signed-by=/etc/apt/keyrings/njet.gpg]
https://njet.org.cn/download/linux/ubuntu focal stable
3)保存文件并退出编辑器。
4)运行sudo apt-get update来更新软件包列表。

3. 安装及启动

-- 安装
sudo apt-get install njet

-- 启动
sudo systemctl start njet

安装以及启动

启动的时候报错System has not been booted with systemd as init system (PID 1). Can't operate.
报错原因我这个系统里没有使用systemctl、service来管理njet服务,很好理解。
启动报错
解决方法:手工启停
可执行文件及相关的配置文件安装到目录 /usr/local/njet 下

 -- 启动
 cd /usr/local/njet
 sbin/njet
 
 -- 停止
 pkill njet

4. 验证

可以通过浏览器或curl/wget访问部署机器的8080地址进行验证
浏览器验证

curl http localhost:8080/

curl访问验证

总结

OpenNJet 应用引擎凭借其对 NGINX 的深度定制化改造与云原生功能扩展,成功构建了一个强大而全面的云原生服务运行环境。它不仅涵盖了传统Web服务与现代微服务架构的多样化需求,更通过引入先进的服务网格特性和运维工具,显著提升了云原生应用的稳定、安全与可管理性,为用户在快速变化的互联网和云环境中提供了坚实的技术支撑。

最后,OpenNJet这么强大,你是不是也想了解和上手实操了!别急,这就上链接:

官网链接https://njet.org.cn/
github链接https://github.com/OpenNJet/OpenNJet

  • 11
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
云原生应用架构实践》是一本介绍云原生应用架构设计和实践方法的PDF文件。云原生应用架构是一种在云环境中开发、部署和运行的应用架构模式,具有高可用性、高弹性和高扩展性等优势。 这本PDF文件首先介绍了云原生应用架构的基本概念和原则,包括容器化、微服务架构和自动化等内容。然后,它提供了一些实用的架构设计方法和最佳实践,帮助开发者高效地构建云原生应用。 在实践部分,PDF文件给出了许多案例研究和实际应用场景,涵盖了多种不同的技术和工具。它详细介绍了如何使用Docker等容器技术来打包和部署应用,如何使用Kubernetes等容器编排工具来管理应用的生命周期,以及如何使用Service Mesh等微服务架构技术来实现应用之间的通信和协调。 此外,这本PDF文件还介绍了云原生应用架构中的监控、日志和安全等方面的最佳实践,帮助开发者保证应用的可靠性和安全性。它还提供了一些性能调优的方法和工具,帮助开发者优化应用的性能和资源利用率。 总的来说,《云原生应用架构实践》这本PDF文件全面介绍了云原生应用架构的设计和实践方法,并提供了丰富的案例和经验,对开发者在构建云原生应用方面具有重要的参考价值。有了这本PDF文件的指导,开发者可以更好地理解和应用云原生应用架构,提高应用的可靠性、弹性和可扩展性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

笑看风云路

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值