文章列表

从封装 Nginx NJS 工具镜像聊起

, , ,
最近发现有不少需求可以通过 Nginx JavaScript (NJS)来完成,相比较运行一套完整的 Web 服务来说,轻量高效的方案总是惹人喜爱,更何况这套方案是由 Nginx 官方团队推出,并搭上了繁荣的 JavaScript 生态。本篇文章先从 NJS 容器封装、以及容器镜像优化来聊聊。 阅读全文

使用 Docker 和 Nginx 打造高性能二维码服务(二)

, , , ,
三年前我曾写过一篇[《使用 Docker 和 Nginx 打造高性能的二维码服务》],时过境迁,容器软件、基础系统、Nginx、QRCode 依赖库都经历了版本升级,为了构建可维护,性能更好的 QRCode 生成服务,就有了本篇折腾内容。希望本篇内容的出现可以帮到同样需要减少各种语言、框架中二维码生成实现代码的你。 阅读全文

使用 Nginx 容器为 Traefik 配置高性能通用错误页面

, , , ,
使用 Traefik 比较久的读者应该会发现,在服务重启的时候,原来的网站会展示 404 not found 的空白页面,虽然多数情况下服务恢复很快,但是这个恢复时间取决于部署启动的应用和监控检查配置策略,如果没有配置流量切换规则,那么有的时候,会看到很久的空白页面,这样的体验显然不好。为了提升体验,我们可以使用 Traefik 提供的错误页面中间件来解决这个问题,优化访问体验。本篇思路同样可以处理通用 Nginx 错误页面的创建。 阅读全文

没能躲开的云服务容器网络问题

,
遇到一个诡异的问题,在固定的 VPC 环境里运行了一年的 ECS 机器,突然连不上 RDS 数据库,而这个问题在早些时候,也曾在另外一台机器上出现过。为了避免后续在业务日常运行和重大活动过程中出现类似问题,我们和阿里云进行了反馈,并进行的排查。 阅读全文

Traefik 2 基础授权验证(后篇)

, , , , ,
[上篇文章]中,我们提到了 Traefik 的 Forward Auth,本篇内容我们来展开聊聊如何使用它。 阅读全文

Traefik 2 基础授权验证(前篇)

我们经常会看到在访问应用前,系统提示用户进行鉴权操作,或出于某些原因,内部提供公网服务的应用需要藏在一些基础的鉴权认证后,避免直接向大众公开。除了使用各种语言来实现鉴权外,使用 Traefik 也可以简单快速的满足这些需求。 阅读全文

更简单的 Traefik 2 使用方式

, , ,
经过一年多的实践,对于使用 Traefik 有了一些更深入的体会,本篇先来介绍如何简化使用,后续会逐步展开聊聊如何在云上使用这款“云原生”工具,以及结合它做一些提升业务效率和开发效率的实践。在 [Traefik 2 使用指南,愉悦的开发体验]、[配置基于Traefik v2的 Web 服务器] 文章中,使用 Traefik 的方案引入了比较多的配置,如果你并不是在一个复杂场景使用,这样的配置是可以简化的。 阅读全文

重定向的九种方案及性能比较

, , , , , , , , , ,
说到重定向,大家必然不会陌生,最常见的场景之一便是各种文章、社交媒体上的短链接。最近计划对于之前的短链接服务进行升级改造。在改造前,对于常见 Web 语言,如 Java、PHP、Python、Node、Ruby、Go和服务工具 Nginx、Caddy、Traefik 做了简单的对比分析。希望这篇文章能够帮你在这个技术场景下,更立体的了解到各种语言/工具的基础性能差异。 阅读全文

实时查看容器日志

, , ,
介绍一款使用了几个月的开源小工具,[Dozzle]。它是一款轻量、简单的容器日志查看工具。本篇将简单介绍如何使用它,包括搭配 Traefik,以及如何快速从源码构建它。 阅读全文

使用 Nginx 构建前端日志统计服务(打点采集)服务

, , ,
工作中经常会遇到需要“数据支撑”决策的时候,那么可曾想过这些数据从何而来呢?如果业务涉及 Web 服务,那么这些数据的来源之一便是服务器上各种服务器的请求数据,如果我们将专门用于统计的数据进行服务器区分,有一些服务器专注于接收“统计类型”的请求,那么产生的这些日志便是“打点日志”。本文将介绍如何在容器中使用 Nginx 简单搭建一个支持前端使用的统计(打点采集)服务,避免引入过多的技术栈,徒增维护成本。 阅读全文