最近利用闲暇时间边学边写把依赖注入、中间件编写的功能基础版本搞定了(边写边吃,好像胖了^_^).今天周日打算在发一篇文章,把路由和上下文处理这块梳理一下,逻辑可能不太通顺,希望各位大神不吝赐教。晓亮嘚吧嘚系列,今日继续哈代码我已上传到github,有兴趣的可以clone,别忘记给个小赞star哈,万分感谢 地址:https://github.com/zl8762385/koala回顾上回我们对写a
    由于最近的工作涉及到PG的LDAP认证登录,以前没有接触过LDAP方面的内容,于是将LDAP服务器的搭建以及如何实现PG的LDAP认证登录记录下来。一来是为了将来使用能有所参考,二来是为了增加自己对LDAP的理解。本文记载了两种方式实现PG的LDAP认证,其中的主要差别在于服务器安装方式的不一样和管理工具的不一样。方法一:本地服务器安装与管理一:LDAP服务器的搭建参考文章: 的安装配置其
转载 6月前
21阅读
整型整型使用细节golang各整数类型分:有符号和无符号,int和uint的大小和系统有关。golang的整数默认声明为int型。如何在程序中查看某个变量的字节大小和数据类型(使用较多)package main // import "fmt" // import "unsafe" // 可改写为以下形式 import ( "fmt" "unsafe" ) //golang中整数类型的使用 fu
转载 2024-04-05 10:56:14
169阅读
连接首先得在admin数据库中创建角色import ( "context" "fmt" "go.mongodb.org/mongo-driver/mongo" "go.mongodb.org/mongo-driver/mongo/options" ) func GetMongo() (*mongo.Database, error) { credential := options.Cr
目录一、viper简介二、viper 的基本方法2.1 安装2.2 读取配置文件2.3 viper取值的函数三、 viper使用举例3.1 yaml配置文件3.2 本地配置文件读取方式3.3 将配置信息序列化为结构体对象3.4 配置读取参考文件:https://github.com/spf13/viper一、viper简介viper是一个go 开发工具,主要是用于处理各种格式的配置文件,简化程序配
转载 2024-10-09 20:04:16
38阅读
  a) 使用规则实现外网不能访问本机,但是本机主动发起的连接正常进行。sudo iptables -A input -p tcp --syn -j DROPb) 使用规则限制对icmp echo request的回复为一分钟5次,从而降低攻击风险。sudo iptables -A input -p icmp --icmp-type echo request -m limit
转载 2024-03-06 22:59:30
5阅读
基于环形缓冲区的双端队列实现代码:package main const minCapacity = 16 type Deque struct { buf []interface{} head int tail int count int minCap int } func NewDeque() *Deque { return &Deque{ buf: make(
转载 2024-04-06 20:58:37
56阅读
如果有使用内存存一些简单数据的功能,可以实现下面这样的带有过期时间的内存类 内存中存储k\
原创 2022-07-23 00:53:27
240阅读
【代码】【golanggolang实现冒泡排序。
原创 2月前
51阅读
1、概述经常在开源库中看到rune关键字,从golang源码中看出,它是int32的别名(-231~231-1),对比byte(-128~127),可表示的字符更多。2、使用由于rune可表示的范围更大,所以能处理一切字符,当然也包括中文字符。在平时计算中文字符,可用rune。查询官方的解释如下:// rune is an alias for int32 and is equivalent to
转载 2024-04-25 16:45:47
75阅读
文章目录了解防火墙管理工具用于管理防火墙的规则策略规则链与策略基本命令参数snat与dnat端口转发与流量均衡firewalld防火墙特点区域概念与作用字符管理工具:`fireall-cmd`服务的访问控制列表 防火墙管理命令fierwall-cmd图形化工具firewall-config数据包过滤、SNAT/SDAT技术、端口转发以及负载均衡等Tcp_wrappers防火墙服务了解防火墙管理工
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtm
原创 2022-11-11 10:59:32
515阅读
内网扫描监测 v2 iptables版环境准备1、centos7操作系统2、配置多个ip,两种用途:服务器添加多块网卡,可以同时监测多个网络 单网卡配置多个ip,增加被黑客扫描的几率 我这里配置了一块网卡 ens160,上面配置了四个IP地址 10.12.28.99、10.12.29.99、10.12.30.99、10.12.31.993、加固sshd服务,防止服务器被黑客黑掉配置完监控后,直接关
转载 2024-10-11 05:24:59
70阅读
将客户的访问请求转发到另外一台主机  iptables  -t  nat  PREROUTING   -d  1.2.3.4  --dport  80  -j  DNAT &nbs
原创 2014-02-27 01:38:58
1173阅读
  文章目录方法定义1.前言2.方法定义3.普通函数与方法的区别  方法定义1.前言Golang 方法总是绑定对象实例,并隐式将实例作为第一实参 (receiver)。•只能为当前包内命名类型定义方法。 • 参数 receiver 可任意命名。如方法中未曾使用 ,可省略参数名。 • 参数 receiver 类型可以是 T 或 *T。基类型 T 不能是接口或指针。 • 不支持方法
上篇介绍了golang这门新的语言的一些语法。那么我们能用golang简单地写些什么代码出来呢?一、猜数字这个游戏的逻辑很简单。系统随机给你生成一个数,然后读取你猜的数字,再根据你猜的数字 跟系统生成的数字比较。告诉你结果这样。(1)随机生成一个数随机生成一个区间在1~100之间的数。 import math/rand import time package main import
golang实现urlencode函数、 urldecode函数,url加解密函数 func UrlEncode(str string) string { return url.QueryEscape(str) } func UrlDecode(str string) string { res, e
原创 2022-08-24 22:17:30
245阅读
fmt结构体占位符在Golang中有原生的 fmt 格式化工具去打印结构体,可以通过占位符%v、%+v、%#v去实现,这3种的区别如下所示:type User struct { Name string Age int } func main() { user := User{ Name: "张三", Age: 95, } fmt.Printf("%v\n", user)
转载 2024-07-01 07:44:35
39阅读
摘要在之前的几篇文章中,我们从如何实现最简单的HTTP服务器,到如何对路由进行改进,到如何增加中间件。总的来讲,我们已经把Web服务器相关的内容大概梳理了一遍了。在这一篇文章中,我们将从最简单的一个main函数开始,慢慢重构,来研究如何把API设计的更加规范和具有扩展性。1 构建一个Web应用我们从最简单的开始,利用gin框架实现一个小应用。在这这篇文章中,我先不使用MySQL和Redis,缓存和
转载 2024-05-17 15:42:25
106阅读
文章目录前言:Liunx包过滤防火墙概述:iptables的表,链结构默认包括5种规则链默认包括4个规则表数据包过滤的匹配流程:iptables安装:iptables的基本语法:iptables的管理选项:规则的匹配条件:SNAT策略概述:SNAT策略实验DNAT策略概述:DNAT策略实验防火墙规则的备份和还原: 前言:iptables是组成Linux平台下的包过滤防火墙,与大多数的Linux软
转载 2024-04-16 16:11:49
86阅读
  • 1
  • 2
  • 3
  • 4
  • 5