Golang 101(Go语言101 中文版) v1.21.a以后我们将学习到更多可以让一个协程进入到阻塞状态的操作。 协程的调度 并非所有处于运行状态的协程都在执行。在任一时刻,只能最多有和逻辑CPU 数目一样多的协程在同时执行。 我们可以调用runtime.NumCPU ? 函数来查询 当前程序可利用的逻辑CPU数目。 每个逻辑CPU在同一时刻只能最多执行一个 协程。Go运行时(runtime)必须让逻辑CPU频繁地在不同的处于运行状态的 协程之间切换,从而每个处于运行状态的协程都有机会得到执行。 当然,上面所示的结构体值的组合字面量也可以用来表示结构体类型的非零 值。 对于类型S的一个值v,我们可以用v.x和v.y来表示它的字段。 v.x(或v.y) 这种形式称为一个选择器(selector)。其中的v称为此选择器的属主。 今后, 我们称一个选择器中的句点.为属性选择操作符。 一个例子: 1| package main 2| 3| import ( 4| "fmt" 5| ) 6| 7| type Book{} 20 | // title字段空字符串"",pages字段为0。 21 | book = Book{author: "老貘"} 22 | 23 | // 使用选择器来访问和修改字段值。 24 | var book2 Book // <=> book2 := Book{} 25 | book2.author = "Tapir" 26 |0 码力 | 821 页 | 956.82 KB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a以后我们将学习到更多可以让一个协程进入到阻塞状态的操作。 协程的调度 并非所有处于运行状态的协程都在执行。在任一时刻,只能最多有和逻辑CPU 数目一样多的协程在同时执行。 我们可以调用runtime.NumCPU 函数来查询当 前程序可利用的逻辑CPU数目。 每个逻辑CPU在同一时刻只能最多执行一个协 程。Go运行时(runtime)必须让逻辑CPU频繁地在不同的处于运行状态的协程 之间切换,从而每个处于运行状态的协程都有机会得到执行。 当然,上面所示的结构体值的组合字面量也可以用来表示结构体类型的非零 值。 对于类型S的一个值v,我们可以用v.x和v.y来表示它的字段。 v.x(或v.y)这 种形式称为一个选择器(selector)。其中的v称为此选择器的属主。 今后,我 们称一个选择器中的句点.为属性选择操作符。 一个例子: package main import ( "fmt" ) type Book struct { title ages字段的值为0。 book = Book{} // title字段空字符串"",pages字段为0。 book = Book{author: "老貘"} // 使用选择器来访问和修改字段值。 var book2 Book // <=> book2 := Book{} book2.author = "Tapir" book2.pages = 3000 码力 | 608 页 | 1.08 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a只能最多有和逻辑CPU数目一 样多的协程在同时执行。 我们可以调用runtime.NumCPU (https://golang.google.cn/pkg/runtime/#NumCPU)函数来查询当前程序可利用 的逻辑CPU数目。 每个逻辑CPU在同一时刻只能最多执行一个协程。Go运行时 (runtime)必须让逻辑CPU频繁地在不同的处于运行状态的协程之间切换,从而每 个处于运行状态的协程都有机会得到执行。 当然,上面所示的结构体值的组合字面量也可以用来表示结构体类型的非零值。 对于类型S的一个值v,我们可以用v.x和v.y来表示它的字段。 v.x(或v.y) 这种形式称为一个选择器(selector)。其中的v称为此选择器的属主。 今后,我 们称一个选择器中的句点.为属性选择操作符。 一个例子: 1| package main 2| 3| import ( 4| "fmt" 5| ) // title字段空字符串"",pages字段为0。 第16章:结构体 130 21| book = Book{author: "老貘"} 22| 23| // 使用选择器来访问和修改字段值。 24| var book2 Book // <=> book2 := Book{} 25| book2.author = "Tapir" 26| book20 码力 | 591 页 | 21.40 MB | 1 年前3
Go 入门指南(The way to Go)unicode : 为 unicode 型的字符串提供特殊的功能。 regexp : 正则表达式功能。 bytes : 提供对字符型分片的操作。 index/suffixarray : 子字符串快速查询。 math - math/cmath - math/big - math/rand - sort : math : 基本的数学函数。 math/cmath : 对复数的操作。 math/rand 时,最好先查找下是否有些存在的第三方的包或者项目不能使用。大多数可以通过 go install 来进行安 装。 [Go Walker][https://gowalker.org] 支持根据包名在海量数据中查询。 目前已经有许多非常好的外部库,如: MySQL(GoMySQL), PostgreSQL(go-pgsql), MongoDB (mgo, gomongo), CouchDB (couch-go) fieldname = value 。 同样的,使用点号符可以获取结构体字段的值: structname.fieldname 。 在 Go 语言中这叫 选择器(selector)。无论变量是一个结构体类型还是一个结构体类型指针,都使用同 样的 选择器符(selector-notation) 来引用结构体的字段: type myStruct struct { i int } var v myStruct0 码力 | 380 页 | 2.97 MB | 1 年前3
Go 入门指南(The way to Go)unicode : 为 unicode 型的字符串提供特殊的功能。 regexp : 正则表达式功能。 bytes : 提供对字符型分片的操作。 index/suffixarray : 子字符串快速查询。 math - math/cmath - math/big - math/rand - sort : math : 基本的数学函数。 math/cmath : 对复数的操作。 项目时,最好先 查找下是否有些存在的第三方的包或者项目不能使用。大多数可以通过 go install 来进行安装。 [Go Walker][https://gowalker.org] 支持根据包名在海量数据中查询。 目前已经有许多非常好的外部库,如: MySQL(GoMySQL), PostgreSQL(go-pgsql), MongoDB (mgo, gomongo), CouchDB (couch-go) 给字段赋值: structname.fieldname = value 。 同样的,使用点号符可以获取结构体字段的值: structname.fieldname 。 在 Go 语言中这叫 选择器(selector)。无论变量是一个结构体类型还是一个结构体类型指针,都使用同样的 选 择器符(selector-notation) 来引用结构体的字段: 1. type myStruct struct0 码力 | 466 页 | 4.44 MB | 1 年前3
05. OpenKruise镜像预热实践_王思宇parallelism: 10 # [optional] 最大并发拉取的节点梳理, 默认为 1 selector: # [optional] 指定节点的 名字列表 或 标签选择器 (只能设置其中一种) names: - node-1 - node-2 matchLabels: node-type: xxx completionPolicy: type: Always0 码力 | 28 页 | 5.78 MB | 1 年前3
04. GraphQL in Chaos Mesh 2.0 - 李晨曦效 地获取各种状态则决定了故障诊断的效率。 集群状态大致可以分为两类,主要分类依据是能否通过 kubernetes API 直接查询。 k8s 可直接查询的状态 Kubernetes 和 Chaos Mesh 组件运行的状态均可直接通过 k8s API 查询。 cluster status Components Controller Daemon Dashboard Dns Server Event k8s 不可直接查询的状态 Chaos Mesh 注入的故障给目标 Pod 带来状态不可通过 k8s API 直接查询。 cluster status Target Pods Mounts Processes ipset iptables Pid Command Fds 状态查询的障碍1 对于可通过 kubernetes API 直接查询的状态,使用过程存在的一大障碍是噪音 直接查询的状态,使用过程存在的一大障碍是噪音 过多。很多情况下 需要配合文本查询工具一起使用才能找到想要的信息。 当然,kubectl 提供了 json path 功能以对查询结果进行筛选,但它存在命令行交互不友好、复 杂、 难以阅读等问题。 上图为 kubectl 的 json path 使用样例 状态查询的障碍2 对于不可通过 kubernetes API 直接查询的状态,往往要通过创建 pod/exec 子资源,运行自定义命0 码力 | 30 页 | 1.29 MB | 1 年前3
Go Web编程通过命令在命令行执行 godoc -http=:端口号 比如godoc -http=:8080。然后在浏览器中打开 127.0.0.1:8080,你将会看到一个golang.org的本地copy版本,通过它你可以查询pkg文档等其它内容。如果你设 置了GOPATH,在pkg分类下,不但会列出标准包的文档,还会列出你本地GOPATH中所有项目的相关文档,这对于经常 被墙的用户来说是一个不错的选择。 其它命令 其它命令 在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返 回解析结果给客户机,完成域名解析,此解析具有权威性。 4. 如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址 映射,完成域名解析,此解析不具有权威性。 5. 如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行 查询,如果未用转发模式,本地DNS就把请求发至 com域的服务器收到请求后,如果自己无法解析,它就会 找一个管理.com域的下一级DNS服务器地址(qq.com)给本地DNS服务器。当本地DNS服务器收到这个地址后,就 会找qq.com域服务器,重复上面的动作,进行查询,直至找到www.qq.com主机。 6. 如果用的是转发模式,此DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器进行解析,上一级 服务器如果不能解析,或找根DNS或把转请求转至上0 码力 | 295 页 | 5.91 MB | 1 年前3
2.1.1 Golang主动式内存缓存的优化探索之路如何优化? 解决了哪些技术难题? 主动式内存缓存 如何优化? 极致的性能 除了网络IO,与Redis有什么区别? 复杂的查询怎么办? 02. 传统的Cache很难实现多维度的查询,无法具备像SQL一样的灵活的查询模式 支持多种维度的查询 提供类似SQL的查询模式 支持灵活的信息过滤条件 内存不够用怎么办? 03. 冷热可交换、策略可定制、内存可扩展,多种冷数据淘汰组件,自由组合 04. 降低硬件成本,降低依赖,保证稳定性 同样的性能,需要更少的硬件资源,降低成本 01 核心数据在本地,依赖少,更稳定 02 • 千万级内存对象,GC严重耗时,如何解决? • 复杂的查询场景,内存数据如何高效组织? • 主动式内存缓存,如何保证数据实时性? • 数据太多,内存不够用,如何进行存储扩展? 通过本次分享,可以带来哪些收获? 难点攻克 第二部分 使用内存缓存 制日志binlog,并生成JSON格式的消 息,作为生产者发送给Kafka、 RabbitMQ、Redis、文件或其它平台的 应用程序 数据管理 如何像SQL一样灵活? 多维度查询 03. 业务数据的查询条件复杂,数据在内存中该如何组织 Q1:已开始的公益直播,且公开显示 直播1 Q2:2021-06-27 10:00:00之后 Q1 无数据 数据模型管理 04. 基于golang的struct0 码力 | 48 页 | 6.06 MB | 1 年前3
Hello 算法 1.1.0 Go版之间的映射,实现高效的元素查询。具体而 言,我们向哈希表中输入一个键 key ,则可以在 ?(1) 时间内获取对应的值 value 。 如图 6‑1 所示,给定 ? 个学生,每个学生都有“姓名”和“学号”两项数据。假如我们希望实现“输入一个 学号,返回对应的姓名”的查询功能,则可以采用图 6‑1 所示的哈希表来实现。 图 6‑1 哈希表的抽象表示 除哈希表外,数组和链表也可以实现查询功能,它们的效率对比如表 6‑1 所示。 ‧ 添加元素:仅需将元素添加至数组(链表)的尾部即可,使用 ?(1) 时间。 ‧ 查询元素:由于数组(链表)是乱序的,因此需要遍历其中的所有元素,使用 ?(?) 时间。 ‧ 删除元素:需要先查询到元素,再从数组(链表)中删除,使用 ?(?) 时间。 表 6‑1 元素查询效率对比 数组 链表 哈希表 查找元素 ?(?) ?(?) ?(1) 添加元素 ?(1) ?(1) (1) ?(1) 删除元素 ?(?) ?(?) ?(1) 观察发现,在哈希表中进行增删查改的时间复杂度都是 ?(1) ,非常高效。 6.1.1 哈希表常用操作 哈希表的常见操作包括:初始化、查询操作、添加键值对和删除键值对等,示例代码如下: 第 6 章 哈希表 hello‑algo.com 114 // === File: hash_map_test.go === /* 初始化哈希表 */0 码力 | 383 页 | 18.48 MB | 1 年前3
共 31 条
- 1
- 2
- 3
- 4













