golang基础-高级特性概述
协程 协程是golang最重要的一个特性。在协程出现之前,线程被作为调度的最小单位。协程可以理解是一种用户态,逻辑层面的线程。 通过协程,我们将很容易地实现高并发。 加入你要做三件事,假设要执行a,b,c三个方法。代码该怎么写?平常我们的写...
协程 协程是golang最重要的一个特性。在协程出现之前,线程被作为调度的最小单位。协程可以理解是一种用户态,逻辑层面的线程。 通过协程,我们将很容易地实现高并发。 加入你要做三件事,假设要执行a,b,c三个方法。代码该怎么写?平常我们的写...
背景 golang 不像c++,已经有stl这种通用的高级数据结构。所以如果想要栈,队列,链表等数据结构需要自己实现。 下面介绍下常用的几种数据结构 链表 单链表是一种链式存取的数据结构,一个链表由一个或者多个节点组成,每个节点有一个指针指...
获取 IDEA 激活码、PyCharm 激活码、WebStorm 激活码和 DataGrip 激活码,提供详细破解教程与永久激活方法。支持 IDEA 永久激活与破解,免费获取注册码与激活码,解决 2024/2025 版本激活问题,轻松实现所有 JetBrains 工具的激活。
从一个问题说起 五年前在tx的时候,发现分页场景下,mysql请求速度非常慢。数据量只有10w的情况下,select xx from 单机大概2,3秒。 我就问我导师为什么,他反问“索引场景,mysql中获得第n大的数,时间复杂度是多少?”...
gin介绍 gin是一个 Web应用框架,拥有良好的性能和简单明了的接口。同时支持中间件,类型绑定等实用功能。 为什么要用gin 在实际开发中,很少会直接实用http.Server。而自己搭建框架有一定成本,同时没有经过系统的校验,容易出现...
概要 本章介绍golang基本的语法。golang语法相对来说比较简单,掌握本章内容即可满足语法方面的基本开发需要。 局部变量定义 func test1() { var a int // 定义临时变量a } 全局变量定义 var a int...
概述 内置数据结构是一门语言的核心基石之一,了解了基本语法,内置数据结构,便可以胜任简单的开发。golang内置的数据结构比较少,有整形,浮点型,字符串,数组,切片(slice),map这几种。 内置数据结构 整形 整形是指整数数据,gol...
背景 缓存是软件开发中一个非常有用的概念,数据库缓存更是在项目中必然会遇到的场景。而缓存一致性的保证,更是在面试中被反复问到,这里进行一下总结,针对不同的要求,选择恰到好处的一致性方案。 缓存是什么 存储的速度是有区别的。缓存就是把低速存储...
golang实现一个简单的http server 如果搜索golang http server,会发现网上有很多不同的写法,本节将介绍多种写法,并把他们的关系捋清楚。 写法1 直接传入函数 func SayHello(w http.Resp...
golang 简介 golang是一门强类型,高并发,易上手的编程语言。 为什么选择 golang golang被称为云时代的c++,其极高的开发效率,天然的高并发能力,入门容易但天花板又很高。近几年来,golang在中国的火热程度极具上升...
背景 微服务场景下需要同步信息的场景。 还是前文的栗子: 如下微服务 支付服务:负责完成支付操作,其中有支付流水数据。 账单服务:指定时间生成账单给用户,其中有账单流水数据。 此时产品上有个需求,在支付管理端根据是否出账搜索支付流水,而出账...