工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.wdlinux.cn 注册 | 登陆
浏览模式: 标准 | 列表全部文章

mysql中set autocommit=0与start transaction区别

 set autocommit=0指事务非自动提交,自此句执行以后,每个SQL语句或者语句块所在的事务都需要显示"commit"才能提交事务。

 

 

1、不管autocommit 是1还是0 
     START TRANSACTION 后,只有当commit数据才会生效,ROLLBACK后就会回滚。

 

2、当autocommit 为 0 时
    不管有没有START TRANSACTION。
    只有当commit数据才会生效,ROLLBACK后就会回滚。

 

3、如果autocommit 为1 ,并且没有START TRANSACTION 。
    调用ROLLBACK是没有用的。即便设置了SAVEPOINT。

redigo的redis.Pool 配置参数调优

 

配置场景

再来看下主要参数

  • MaxIdle 
    • 表示连接池空闲连接列表的长度限制
    • 空闲列表是一个栈式的结构,先进后出
  • MaxActive 
    • 表示连接池中最大连接数限制
    • 主要考虑到服务端支持的连接数上限,以及应用之间”瓜分”连接数
  • IdleTimeout 
    • 空闲连接的超时设置,一旦超时,将会从空闲列表中摘除
    • 该超时时间时间应该小于服务端的连接超时设置

区分两种使用场景:

  1. 高频调用的场景,需要尽量压榨redis的性能: 
    • 调高MaxIdle的大小,该数目小于maxActive,由于作为一个缓冲区一样的存在,扩大缓冲区自然没有问题
    • 调高MaxActive,考虑到服务端的支持上限,尽量调高
    • IdleTimeout由于是高频使用场景,设置短一点也无所谓,需要注意的一点是MaxIdle设置的长了,队列中的过期连接可能会增多,这个时候IdleTimeout也要相应变化
  2. 低频调用的场景,调用量远未达到redis的负载,稳定性为重: 
    • MaxIdle可以设置的小一些
    • IdleTimeout相应地设置小一些
    • MaxActive随意,够用就好,容易检测到异常
  3. https://blog.csdn.net/xiaohu50/article/details/51606349

golang web xss攻击预防

 从上面访问的结果发现。我们这边的< 之类的符号已经被转义成html 特殊符

上面的方法也是可以进行简化的

 

package main  import ( 	"fmt" 	"html/template" 	"log" 	"net/http" )  func main() { 	//绑定路由 讲访问 / 绑定给  Handler 方法进行处理 	http.HandleFunc("/", Handler) 	http.ListenAndServe(":8080", nil) }  func Handler(w http.ResponseWriter, req *http.Request) { 	err := req.ParseForm() 	//如果解析失败 直接退出 输出对应的错误原因 	if err != nil { 		log.Fatal(nil) 	} 	//获取 传递的name 参数 	user_pro := req.FormValue("name") 	fmt.Fprintf(w, "%s", xss_hander(user_pro))  } func xss_hander(s string) string { 	return template.HTMLEscapeString(s) }https://blog.csdn.net/liangguangchuan/article/details/54617685

beego orm 调用多次sql的事物同步

 https://blog.csdn.net/easternunbeaten/article/details/72456240

 
https://beego.me/docs/mvc/model/transaction.md

Redis 5种主要数据类型和命令

 https://www.cnblogs.com/mingtianct/p/6291593.html

https://www.cnblogs.com/youxin/p/3833817.html

golang中map并发读写问题及解决方法

 https://blog.csdn.net/qq_17612199/article/details/79601222

 
https://blog.csdn.net/skh2015java/article/details/60334091

map按key和按value排序

 https://studygolang.com/articles/10530

 

--------------

可以把k,v组织为一个struct的成员,把其用slice存放后,按照自己的排序方式对slice进行排序。

这种思想可以实现你想要的任意排序。

golang基础-排序、二分查找、map、map排序反转

 https://blog.csdn.net/u013210620/article/details/78344771

Records:107112345678910»