动手撸个Caddy(十二)| 插件开发之HelloWorld

连载了十一篇,终于讲到了大家最关心的Caddy的插件开发。插件开发是一种提供给我们开发者定制化Caddy的能力,让我们可以根据自己的需求,通过插件的机制,扩展Caddy的功能,满足自己的需求。 在Caddy中,编写插件是非常容易的事情,这得益于Caddy模块化的架构。其实我们用到的……

阅读全文

动手撸个Caddy(十一)| Caddyfile 设计之美

Caddyfile是Caddy的核心配置文件,它的设计,关乎着我们使用,开发者的解析以及扩展,所以本篇着重的介绍Caddy是如何设计一个Caddyfile的,我们也可以从中学到如何设计一个配置文件,并且让它更好的通用,更好的解析。 其实设计如此复杂的一个配置文件,已经和设计一门编程……

阅读全文

动手撸个Caddy(十)| 一分钟搭建PHP服务器

Caddy对于反向代理的支持我们已经介绍的差不多了,这也是我们对于Nginx、Caddy最多的应用之一,也就是把他们当成一个反向代理服务器使用。 除了我们经常见到的反向代理外,还有一类应用也可以通过反向代理来实现,它就是FastCGI,比如我们经常看到的php-fpm,它就是一个用……

阅读全文

动手撸个Caddy(九)| 设置头信息实现跨域

在前端开发中,会通过 fetch 发起网络请求获取数据,然后再显示到页面上,这也就是我们常说的前后端分离。 但是受限于浏览器的同源策略, fetch 是不能跨域访问的,这时候就需要我们设置服务端响应的头信息,来达到跨域的目的,而Caddy的反向代理,天生就具备这个能力。 什么是同源策略 同源策略是浏览器的一项……

阅读全文

动手撸个Caddy(八)| 利用缓冲提升反向代理的性能

上一篇 Caddy实战(七)| 反向代理中的健康检查 已经为你介绍了Caddy如果通过健康检查,来确保一个上游(后端)服务是可用的,今天呢,就为你介绍Caddy如何通过缓冲提高反向代理的性能,降低上游服务的负载。 什么是缓冲 反向代理是客户端和后端服务之间的桥梁,所以这里面就有2个链接: 客……

阅读全文

动手撸个Caddy(七)| 反向代理中的健康检查

在上一篇文章中,我讲解了反向代理中的负载均衡,一个上游主机要想被使用到的前提:就是这该主机必须可用?那么怎么才算可用呢?这涉及到Caddy的健康检查,和Nginx的类似。 什么是健康检查 比如我们做体验,其实就是对我们自己身体做一个健康检查,判断身体是否健康。那么对于我们的上游主机服……

阅读全文

动手撸个Caddy(六)| 反向代理中的负载均衡

为了保障系统的高可用,我们需要针对重要的服务启动多个,这样当其中的一个服务出问题的时候,其他服务可以继续工作,系统就做到了高可用,这也就是负载均衡的应用。 什么是负载均衡 负载平衡(Load balancing)是一种电子计算机技术,用来在多个计算机(计算机集群)、网络连接、CPU、磁……

阅读全文

动手撸个Caddy(五)| 配置反向代理

我们在开发中,会经常用到反向代理,它可以把一个网络请求转发到上游。比如你写了一个Go语言的API,那么就可以通过反向代理的方式,把API暴露给调用者。 Nginx支持反向代理,性能也不错,那么使用Caddy如何配置反向代理呢? 反向代理入门 我在前面的文章 Caddy实战(一)| 托管你的……

阅读全文

动手撸个Caddy(四)| 使用API管理Caddy

和Nginx不一样的是,Caddy还可以使用API来管理,通过这个能力,你可以在CI、CD的时候,对caddy做更多的事情,也更灵活。 查看配置 首先,我们启动一个caddy实例,然后通过caddy提供的/configAPI查看它的配置。 1 ➜ caddy run 启动后,caddy 的管理API会在20……

阅读全文

动手撸个Caddy(三)| Caddyfile 快速入门

虽然JSON配置很强大,但是配置繁琐,不容易理解。在caddy中,最常用的配置caddy的方式还是Caddyfile,这是caddy的配置文件,类似Nginx的config。它通俗易懂、配置简单,容易上手,如果你以前会用nginx,那么上手Caddyfile也会非常容易。 创建一个……

阅读全文

最近文章

分类

标签

其它