IT书架 本次搜索耗时 0.076 秒,为您找到 752 个相关结果.
  • 198.怎么做服务注册发现的

    怎么做服务注册发现的 怎么做服务注册发现的 题目来源: 腾讯 答案: 服务发现是指服务实例向服务注册与发现中心获取其他服务实例信息,用于进行随后的远程调用。 服务发现是针对调用端的,一般分为两类问题: 1.存量获取 :当sevice A启动时,需要从service Registry 获取service B的已有的节点列表;se...
  • 568.golang 字符串拼接有哪几种方式 哪种效率高

    golang 为什么 strings.Builder 效率高 小红书 在Go语言中,字符串拼接有多种方式,包括使用+号、sprintf、join函数、buffer.WriteString等。根据性能分析,最高效的字符串拼接方式是使用strings.Builder,因为它适用于大量字符串的拼接,并且官方推荐使用此方法。其他常用的方法如strings...
  • 501.插入写屏障

    插入写屏障 插入写屏障 Go GC 在混合写屏障之前,一直是插入写屏障,由于栈赋值没有 hook 的原 因,栈中没有启用写屏障,所以有 STW。Golang 的解决方法是:只是需要在结 束时启动 STW 来重新扫描栈。这个自然就会导致整个进程的赋值器卡顿。
  • 6. 应用构建:Go 应用如何优雅地读取配置?

    如何选择配置读取功能? 如何编码实现配置读取功能? 学习已有配置文件读取代码示例 迁移 Demo 代码 二次开发示例代码 使用 viper 读取配置文件内容 测试配置读取功能 小结 提示:本节课最终代码为:feature/s05 。 上一节,我们 使用 cobra 创建了一个可以打印 Hello MiniBlog! 的程序,本节...
  • 5 Go小二的两大绝招--切片和数组

    2164 2022-11-29 《漫画Go语言》
    数组与切片 数组的概念 数组的声明 数组的创建 数组的遍历 多维数组 声明二维数组 切片Slice 如何声明一个切片 切片追加元素append() make()与new() 的区别 切片是如何扩容的 总结一下 值传递与引用传递 深拷贝和浅拷贝 浅拷贝 深拷贝 1,使用range循环获取元素中的值 进行拷贝 2,使用深拷贝数据函...
  • 59.Kratos 框架的特性

    Kratos 框架的特性 Kratos 框架的特性 **题目来源:**好未来 答案1: Kratos 是一套轻量级的微服务框架,包含了大量微服务相关框架以及工具,它就像一个工具箱,目前已加入 CNCF 协会进行孵化。Kratos 框架最重要的特性就是可插拔,它并没有像字节的 go 微服务框架一样打造一套属于自己的生态,而是选择依赖开源社区...
  • 19. 删除链表的倒数第 N 个结点

    📑 题目:19. 删除链表的倒数第 N 个结点 📑 题目:19. 删除链表的倒数第 N 个结点 🚀 本题 LeetCode 传送门 题目大意 删除链表中倒数第 n 个结点。 解题思路 这道题比较简单,先循环一次拿到链表的总长度,然后循环到要删除的结点的前一个结点开始删除操作。需要注意的一个特例是,有可能要删除头结点,要单独处理。 这道...
  • 简单工厂模式

    简单工厂模式 1.1 模式动机 1.2 模式定义 1.3 模式结构 1.4 时序图 1.5 模式分析 1.6 简单工厂模式的优点 1.7 简单工厂模式的缺点 1.8 适用环境 1.9 Go语言实现 simple.go代码 simple_test.go代码 1.10 总结 简单工厂模式 1.1 模式动机 考虑一个简单的软件应...
  • 133.结构体创建优化

    结构体创建优化 结构体创建优化 题目来源: 映客 答案1: 这道题考察对结构体占用的空间的理解, 需要了解几个概念 go 结构体内存占用 go中一个结构体实例所占据的空间等于各字段占据空间之和,再加上内存对齐的空间大小。tips: 可使用unsafe.Sizeof 查看struct占用的内存空间大小unsafe.Alignof 方法...
  • 43.获取不到锁会一直等待吗?

    获取不到锁会一直等待吗? 获取不到锁会一直等待吗? **题目来源:**网易 答案1: 会。 在 2016 年 Go 1.9 中 Mutex 增加了饥饿模式,让锁变得更公平,不公平的等待时间限制在 1 毫秒,并且修复了一个大 Bug:总是把唤醒的 goroutine 放在等待队列的尾部,会导致出现不公平的等待时间。那什么时候会进入饥饿...