包含标签 go 的文章

动手撸个Caddy(十四)| 插件开发之自定义全局配置

在开发Caddy插件的时候,很多现成的配置可以为我们所用,这样我们插件中的某些配置就可以遵循整个Caddyfile的全局统一配置,用户体验会更好,比如使用统一的debug来控制自己开发插件的日志输出等等。 什么是全局配置 Caddyfile的全局配置和整个Caddy有关,并不局限于某……

阅读全文

给Jaeger提交了个PR,已Merged

最近需要对NodeJS中的调用进行链路跟踪,所以需要使用Jaeger进行跟踪,这里我们选用的是阿里云ARMS中的Jaeger链路跟踪,但是在Golang项目中使用没问题的链路跟踪,却在NodeJS踩了个大坑。 什么是Jaeger Jaeger 是用于追踪分布式服务之间事务的开源软件。它用来监控复……

阅读全文

研究开源项目发现的一个人性化的Go语言库

前段时间Info约稿,在文章中我提到了一个可以提升自己能力的办法:就是研究开源项目,这也是我一直实践的。 夜深人静的时候,我会打开电脑,研究一些开源项目,这不最近在研究的时候发现一个开源项目使用到了一个很不错的Go语言库:go-humanize。 这是一个「人性化」的Go语言库,人性……

阅读全文

必须要掌握的几个 Go 语言技巧

​Go是一种非常不错的编程语言。它是一种让你真正的关注自己的业务,不必为程序本身操心太多的语言,因此您可以尽快编写应用程序。比如它有比较完整的生态系统,可为你提供入门所需的一切。 ​但是呢,它也不是万能的,有一些需要我们注意。我写这篇文章主要是为了提醒我自己,也是一些观察和总结。当……

阅读全文

动手撸个Caddy(十三)| 插件开发之Caddyfile参数

好了,通过上篇文章文章 动手撸个Caddy(十二)| 插件开发之HelloWorld 你已经学会了开发Caddy插件,可以按自己的需求来定制Caddy了,Caddy没有的功能我们也可以自己做出来。 不过相信你也发现,上个例子中浏览网页只会显示 Hello 世界 ,我们能不能改变显示的内容呢?那么这篇文……

阅读全文

动手撸个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个链接: 客……

阅读全文

最近文章

分类

标签

其它