- 大Kb和小kb有啥区别?: https://zhidao.baidu.com/question/344188038.html
- Golang 默认所有任务都运行在一个 cpu 核里,如果要在 goroutine 中使用多核,可以使用 runtime.GOMAXPROCS 函数修改,当参数小于 1 时使用默认值(Go1.8后不用自己设置)
- 没事不要用这个东西-> 设置核数
![img](https://box.kancloud.cn/a06f64667d15ee987f5a0711785e4785_666x477.jpg)
- print是一个阻塞调用,只有阻塞才能引发协程调度
- 又因为你设置了单线程,所以单线程上,阻塞了才会执行到<-ch,不阻塞就会一直死循环下去
------
- 用 go build -race 做竞态的检测
- 你那个如果是多个服务的,就要考虑用分布式锁,如果是单服务的,直接加锁或者用chan
- slice的值:包括一个指针指向底层数组的某处,一个整数表示长度,一个整数表示容量。这三个都是“可变”的,在扩容的时候会发生变化,所以两个 slice 值就分道扬镳了。
- map的值:只包括一个指针,指向一个 hmap 数据块,所以 map 的值本身是“不可变”的。发生扩容的时候只是 hmap 那个数据块在变,所以两个 map 值看到的总是一样的。
- 引用类型:特指slice、map、channel这三种预定义类型
- 建议不要创建一个无法停止和控制数量的协程
- 生成唯一Id : snow-flake
- 【string 底层就是一个byte的slice】,只能说类似,并不完全是。(可以取区间, 但不能修改指定索引)
------
- JS的防抖,节流,柯里化和反柯里化(Q:网络抖动问题)
: https://www.cnblogs.com/suihang/p/10087946.html
2016全球最强数据库大盘点 : https://yq.aliyun.com/articles/68548
- MySQL 和 PostgreSQL : https://juejin.im/entry/5b14f3476fb9a01e49293bb1
- Go中国 下周三 : https://mp.weixin.qq.com/s/BbZcp5OJSQHNi6nlnu3_eA
- 程序员英语单词 : https://www.kancloud.cn/haixu926611/study-english/112096
- CSRF的防御实例(PHP): http://www.moonsec.com/post-627.html
- syncthing : https://github.com/syncthing/syncthing
开源的文件同步系统,它使用了其独有的对等自由块交换协议,速度很快,据说可以替换BitTorrent Sync。
- 博客 : https://www.502435.com/archives/279/
- 运行后会生成 文件: ./root/.config/syncthing/config.xml
- MySQL一主多从 https://my.oschina.net/u/2399373/blog/2878650
- PHP + Vue : https://blog.csdn.net/qq_41246454/article/details/79863675
- XSHELL下直接下载文件到本地(Windows) : https://www.cnblogs.com/davytitan/p/3966606.html
------
浅表复制和深表复制(浅表复制:指向同一个地址, 深表复制:复制值到新地址)
------
## TODO : golang 热更新 (热更新是指生产环境)
Golang 题目 : https://www.jianshu.com/p/90b5be35ad3b
Go 是一种编译型语言,它结合了解释型语言的游刃有余,动态类型语言的开发效率,以及静态类型的安全性。它也打算成为现代的,支持网络与多核计算的语言。要满足这些目标,需要解决一些语言上的问题:一个富有表达能力但轻量级的类型系统,并发与垃圾回收机制,严格的依赖规范等等。这些无法通过库或工具解决好,因此Go也就应运而生了。
了不让该代码包的使用者产生困惑,我们总是应该让声明的包名与其...
没错,通过这种类型推断,你可以体验到动态类型编程语言所带来的一部分优势,即程序灵活性的明显提升。但在那些编程语言中,这种提升可以说是用程序的可维护性和运行效率换来的
也正因为如此,Go 语言的切片类型属于引用类型,同属引用类型的还有字典类型、通道类型、函数类型等;而 Go 语言的数组类型则属于值类型,同属值类型的有基础数据类型以及结构体类型。
关键在于它的“延迟初始化”机制。
延迟初始化:你可以理解为把初始化操作延后,仅在实际需要的时候才进行。延迟初始化的优点在于“延后”,它可以分散初始化操作带来的计算量和存储空间消耗。
环形链表 -> 最后一个块的指针指向第一个块 (链表的变种)
链表适合频繁增加或删除元素场景
通过sleep函数执行sql注入攻击 : https://blog.csdn.net/hurricane_0x01/article/details/49329139
Golang微服务部署在kubernetes
go的指针和runtime包有待了解
go调度器处理死循环 : https://gocn.vip/question/2116
我们可以为 Go程序编写三类测试,即:功能测试(test)、基准测试(benchmark,也称性能测试),以及示例测试(example)。
数据库中间键
通过对互斥锁的合理使用,我们可以使一个 goroutine 在执行临界区中的代码时,不被其他的 goroutine 打扰。不过,虽然不会被打扰,但是它仍然可能会被中断(interruption)。
对于一个未包含任何元素值的通道来说,它的关闭会使任何针对它的接收操作立即结束
## IPC(Inter-Process Communication)进程间通信,提供了各种进程间通信的方法。在Linux C编程中有几种方法 (1) 半双工Unix管道 (2) FIFOs(命名管道) (3) 消息队列 (4) 信号量 (5) 共享内存 (6) 网络Socket 这些方法主要包括:系统信号(signal)、管道(pipe)、套接字 (socket)、文件锁(file lock)、消息队列(message queue)、信号灯(semaphore,有的地方也称之为信号量)等。现存的主流操作系统大都对 IPC 提供了强有力的支持,尤其是 socket。
BattleServer
mmorpg
gate
内网穿透
redis连接池
- supervisor 管理多实例不方便, 要改名称
- 我是分配置的,你把这些实例放到不同的目录下,修改每个配置文件的端口不就可以啦
------
游戏架构
- 有两种架构,一种是同客户端只和网关通信,网关负责消息分发给服务器,再回传给客户端
- 另一种,就是客户端直接和服务器连,这里网关功能就很薄弱,可以有网关也可以没有
------
- Json比较xml优势 : http://www.cnblogs.com/wenzhengs/p/8052001.html
- map : https://github.com/maq128/gosnake
------
- https://github.com/pingcap/tidb golang 打造的很牛逼的数据库
- https://github.com/lni/dragonboat
golang 打造的比etcd快100倍的raft分布式一致性库
------
> ### 实现接口的方法名区分大小写吗?
- 区分大写外部可以访问, 小写仅供内部访问
- 111
- 日记
- 工具11
- 20200723
- 20200724
- 20201019
- 更多阅读
- 回收站
- kafka 消费失败和重复消费问题
- ABC
- 20200127
- MySQL从删库到跑路
- PHP从放弃到入门
- help
- 我的日志
- 博客验证码
- 项目版本管理
- C++ Json序列化
- 20190425
- 图片
- 关键字
- 链接
- 分布式, 分库, 分表
- 游戏开发
- goLand 编辑器
- 区块链
- A-计划
- B-计划
- gin框架
- 锁
- 力扣-答题
- 数据库
- mysql 索引优化
- 挖矿
- 分布式锁
- 跨域问题
- kafka
- 长连接
- 面向对象 面向过程 函数式编程
- websocket
- 其它问题
- zeroMq
- 工具
- linux - systemctl
- gitbook 部署
- Ubantu 基础配置
- 备注服务
- 更换身份证(身份证到期了)
- 资源05
- 备注服务2
- 分布式
- TODO
- 资料准备
- 文章阅读
- mysql 高可用
- 日志1
- 日记2 - 区块链
- centos7 系统服务脚本
- copy_service 服务替换
- go kafka 孤人自嘲 - 偏移量 - kafka
- go vendor
- golang 显示git工具栏
- 图片资源
- 资讯01
- 资源01
- 资源02
- 资源03-数据库
- 资源04
- php历史数据
- golang 数据
- 文件1
- 文件2
- 文件3
- 文件4
- 文件5
- 文件6
- 文件7
- 文件8
- 文件9
- 文件10
- Flutter
- 管理后台系统
- 重装系统