m1 mac 配置 vscode go 开发环境
m1 mac 配置 vscode go 开发环境安装 gogo下载链接:https://go.dev/dl/
下载之后本地安装就可以了。
安装之后,go root 目录一般在系统的 /usr/local/go。
配置 go path# 这里用zsh举例vim ~/.zshrc# go path 配置export GOROOT=/usr/local/goexport GOPATH=$HOME/goexport PATH=$PATH:$GOROOT/bin:$GOPATH/bin# 生效配置source ~/.zshrc# 执行go env 查看配置是否生效go env
安装 go 组件# 配置 go 加速go env -w GO111MODULE=ongo env -w GOPROXY=https://goproxy.cn,direct# 配置 go sumdbgo env -w GOSUMDB="sum.golang.org"# 安装组件go install -v golang.org/x/tools/gopls@latestgo install -v gi ...
mac os 安装 mysql 苹果M1芯片
mac os 安装 mysql 苹果M1芯片一、服务端安装1、下载 网址 http://mysql.com选择 下载
选择社区版本
选择server端
选择对应的版本点击下载
下载完安装包之后,点击安装即可
安装过程中,会让输入root自定义密码。该密码为mysql的管理员密码。
安装完之后,打开设置可以搜索到 mysql 并进行启停和配置
配置系统 pathvim ~/.zshrcexport PATH="/usr/local/mysql/bin/:$PATH"
RESTful API 设计指南
RESTful API 设计指南网络应用程序,分为前端和后端两个部分。当前的发展趋势,就是前端设备层出不穷(手机、平板、桌面电脑、其他专用设备……)。
因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现“API First”的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论。我以前写过一篇《理解RESTful架构》,探讨如何理解这个概念。
今天,我将介绍RESTful API的设计细节,探讨如何设计一套合理、好用的API。我的主要参考了两篇文章(1,2)。
一、协议API与用户的通信协议,总是使用HTTPs协议。
二、域名应该尽量将API部署在专用域名之下。
https://api.example.com
如果确定API很简单,不会有进一步扩展,可以考虑放在主域名下。
https://example.org/api/
三、版本(Versioning)应该将API的版本号放入URL。
https://api.example.com/v1/
另一种做法是,将版本号放在HTTP头信息中,但不如放入UR ...
hexo-abbrlink生成的文章链接undefind.html问题解决
hexo-abbrlink生成的文章链接undefind.html问题解决使用Hexo博客的过程中,为了生成简洁且唯一链接不变的URL链接,我使用了hexo-abbrlink插件:
npm install hexo-abbrlink --save
然后再Hexo根目录下_config.yml里增加如下配置:
# 修改原链接格式:permalink: :year/:month/:day/:title/permalink: posts/:year/:month/:abbrlink.htmlabbrlink: alg: crc32 # 算法:crc16(default) and crc32 rep: hex # 进制:dec(default) and hexpermalink_defaults:pretty_urls: trailing_index: true # Set to false to remove trailing 'index.html' from permalinks trailing_html: true # Set to false ...
理解RESTful架构
理解 RESTfull架构越来越多的人开始意识到,网站即软件,而且是一种新型的软件。
这种”互联网软件”采用客户端/服务器模式,建立在分布式体系上,通过互联网通信,具有高延时(high latency)、高并发等特点。
网站开发,完全可以采用软件开发的模式。但是传统上,软件和网络是两个不同的领域,很少有交集;软件开发主要针对单机环境,网络则主要研究系统之间的通信。互联网的兴起,使得这两个领域开始融合,现在我们必须考虑,如何开发在互联网环境中使用的软件。
RESTful架构,就是目前最流行的一种互联网软件架构。它结构清晰、符合标准、易于理解、扩展方便,所以正得到越来越多网站的采用。
但是,到底什么是RESTful架构,并不是一个容易说清楚的问题。下面,我就谈谈我理解的RESTful架构。
一、起源
REST这个词,是Roy Thomas Fielding在他2000年的博士论文中提出的。
Fielding是一个非常重要的人,他是HTTP协议(1.0版和1.1版)的主要设计者、Apache服务器软件的作者之一、Apache基金会的第一任主席。所以,他的这篇论文一经发表,就引起 ...
pod配置内核参数
介绍为 Pod 设置内核参数的几种方式。
在 securityContext 中指定 sysctl自 k8s 1.12 起,sysctls 特性 beta 并默认开启,允许用户在 pod 的 securityContext 中设置内核参数,用法示例:
apiVersion: apps/v1kind: Deploymentmetadata: name: nginxspec: replicas: 1 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: securityContext: sysctls: - name: net.core.somaxconn value: "1024" - name: net.core.somaxconn value: "1024" contai ...
docker删除none镜像
问题通过 docker images 命令查询本地镜像列表,有可能看到 repository 和 tag 均为 none 的镜像,这种镜像在 Docker 官方文档中被称作 dangling images 。
原因根据官方解释,该镜像的产生是由于通过 docker build -t [image_name:image_version] . -f dockerfile 构造新镜像时, [image_name:image_version] 与本地已有镜像重名导致的。新生成镜像的 名称+版本号 与本地原有镜像相同时, docker 引擎会自动将名称和版本号分配给新镜像,则原来的镜像会变成 none:none 形式。
解决方法方法一官方给出,执行命令 docker image prune 来清理,如果镜像被容器使用则报错。
docker image prune [OPTIONS]
<选项>--all , -a Remove all unused images, not just dangling ones -----删除所有未使用的映像,而不仅仅是悬空映像--filter Pr ...
hexo新建文章到指定目录
# hexo new post <title># -p 参数可以指定文章的路径hexo new post -p hello/hello-world # 注意里面的title为post# 此时里面的title为hello-world# hexo new post title -p dir/filenamehexo new post hello-world -p hello/hello-world## 当然了手动将文章放到指定的文件夹中也可以
keepalived+nginx高可用
Keepalived + Nginx 实现高可用原理如果杀掉 MASTER(主)节点的 nginx如果nginx进程不存在脚本返回1,nginx进程存在脚本返回0
脚本返回0,表示nginx进程存在,由于上面配置的weight为负数,priority 不会改变。
脚本返回1,表示nginx进程不存在,由于上面配置的weight为负数,priority 会减少,减少后的值 priority = priority+weight失败一次,将自己的优先级-20,我这里MASTER的priority=100,BACKUP的priority=99那么MASTER要失败1次后变为80,低于BACKUP的99,MASTER节点会降级为BACKUP,而BACKUP节点升级为MASTER
#!/bin/bash# keepalived会定时执行脚本并对脚本执行的结果进行分析,动态调整vrrp_instance的优先级。# 如果脚本执行结果为0,并且weight配置的值大于0,则优先级相应的增加。# 如果脚本执行结果非0,并且weight配置的值小于 0,则优先级相应的减少。# ...
nginx编译及常用配置
title: Nginx 1.26 编译安装与高级配置
nginx编译安装下载源码包
wget http://nginx.org/download/nginx-1.24.0.tar.gz
下载依赖包
yum install gcc pcre-devel zlib-devel openssl-devel -y
创建一个不可以远程登录的没有家目录的用户
useradd -s /sbin/nologin -M nginx
解压安装包
tar zxf nginx-1.24.0.tar.gz
关闭debug
cd nginx-1.24.0/vim auto/cc/gcc
编译安装的程序
./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_v2_module --with-http_realip_module --with-http_stub_status_module --with-http_gzip_static_module - ...