08 2020 档案
摘要:package main import ( "fmt" "unsafe" ) func main() { empStruct() } //空结构体的实例和作用 func empStruct(){ //空结构体的特点:1、不占用内存;2、地址不变 var s struct{} var s1 struc
阅读全文
摘要:前文:5种常用IO模型/IO多路复用 React线程模型是一种事件驱动模型 Reactor线程模型=Reactor(IO多路复用)+线程池 Reactor主要用来负责监听和分配事件,线程池负责处理事件 根据Reactor的数量和线程池的数量,又可以将Reactor分为三种模型 单Reactor单线程
阅读全文
摘要:1.mysql -u root -p net stop mysql 2、net start mysql 2.数据库列创建时间和更新时间自动更新 join_time timestamp NULL DEFAULT current_timestamp(), update_time timestamp NU
阅读全文
摘要:1.runtime error: invalid memory address or nil pointer dereference 这个错误源于对空指针取值,用到指针的地方要判断是否为nil 2.import cycle not allowed 循环导入包 3.今天导入一个之前导入正常的项目一直报
阅读全文
摘要:降级: 服务降级,服务器压力激增时为了保证核心服务可用性,可以选择一些降低部分功能可用性或者直接关闭部分功能,例如一个一个社区软件,在服务器压力激增时,可以关闭评论,话题等服务,保证帖子服务正常,用户可以正常浏览内容。 另外一种是核心服务崩溃,例如推荐服务,会专门为这种服务留一个推荐降级服务,推荐降
阅读全文
摘要:context(上下文)作用 golang中的context主要为了处理单个请求域与多个goroutine之间的数据共享,取消信号,截止时间等问题,在一个网络请求中,创建多个goroutine,就可以通过context去追踪所有的goroutine, context结构 type Context i
阅读全文
摘要:占位符的具体使用 golang 图片处理,剪切,base64数据转换,文件存储 简单易错点
阅读全文
摘要:业务逻辑中,Golang通过返回error捕获错误,但当遇到一些触发程序的异常时,会导致程序崩溃,这时就是需要recover这种捕获异常方式了,recover通常与defer同时出现 Defer defer语句函数放入栈中,执行defer的顺序满足先进后出原则,严格按照这个顺序,不会因为return
阅读全文
摘要:MongoDB 提供多粒度锁 Global (MongoD 实例) – 所有的数据库上加锁 Database – 锁定某个数据库 Collection – 锁定某个集合 Document – 锁定某个文档 MongoDB 提供了四种锁 意向共享锁(IS)表示事务意图在表中的单个行上设置共享锁。 意向
阅读全文
摘要:归并排序 package main import ( "fmt" ) func mergeSort(low, high int, a *[]int) { if low >= high { return } mid := (low + high) / 2 mergeSort(low, mid, a)
阅读全文
摘要:1.TypeError: ‘list’ object is not callable 不要用与系统内置同名的字段 2.operatorlist:<tornado.concurrent.Future object at 0x7f03a41d7190> 查mongo数据库返回Future对象需要用yie
阅读全文
摘要:Golang通过通信来实现共享内存,而不是通过共享内存而实现通信,通信实际就是借用channel来实现的 channel底层数据结构 type hchan struct { qcount uint dataqsiz uint buf unsafe.Pointer #是有缓冲的channel所特有的结
阅读全文