积分充值
 首页
前端开发
AngularDartElectronFlutterHTML/CSSJavaScriptReactSvelteTypeScriptVue.js构建工具
后端开发
.NetC#C++C语言DenoffmpegGoIdrisJavaJuliaKotlinLeanMakefilenimNode.jsPascalPHPPythonRISC-VRubyRustSwiftUML其它语言区块链开发测试微服务敏捷开发架构设计汇编语言
数据库
Apache DorisApache HBaseCassandraClickHouseFirebirdGreenplumMongoDBMySQLPieCloudDBPostgreSQLRedisSQLSQLiteTiDBVitess数据库中间件数据库工具数据库设计
系统运维
AndroidDevOpshttpdJenkinsLinuxPrometheusTraefikZabbix存储网络与安全
云计算&大数据
Apache APISIXApache FlinkApache KarafApache KyuubiApache OzonedaprDockerHadoopHarborIstioKubernetesOpenShiftPandasrancherRocketMQServerlessService MeshVirtualBoxVMWare云原生CNCF机器学习边缘计算
综合其他
BlenderGIMPKiCadKritaWeblate产品与服务人工智能亿图数据可视化版本控制笔试面试
文库资料
前端
AngularAnt DesignBabelBootstrapChart.jsCSS3EchartsElectronHighchartsHTML/CSSHTML5JavaScriptJerryScriptJestReactSassTypeScriptVue前端工具小程序
后端
.NETApacheC/C++C#CMakeCrystalDartDenoDjangoDubboErlangFastifyFlaskGinGoGoFrameGuzzleIrisJavaJuliaLispLLVMLuaMatplotlibMicronautnimNode.jsPerlPHPPythonQtRPCRubyRustR语言ScalaShellVlangwasmYewZephirZig算法
移动端
AndroidAPP工具FlutterFramework7HarmonyHippyIoniciOSkotlinNativeObject-CPWAReactSwiftuni-appWeex
数据库
ApacheArangoDBCassandraClickHouseCouchDBCrateDBDB2DocumentDBDorisDragonflyDBEdgeDBetcdFirebirdGaussDBGraphGreenPlumHStreamDBHugeGraphimmudbIndexedDBInfluxDBIoTDBKey-ValueKitDBLevelDBM3DBMatrixOneMilvusMongoDBMySQLNavicatNebulaNewSQLNoSQLOceanBaseOpenTSDBOracleOrientDBPostgreSQLPrestoDBQuestDBRedisRocksDBSequoiaDBServerSkytableSQLSQLiteTiDBTiKVTimescaleDBYugabyteDB关系型数据库数据库数据库ORM数据库中间件数据库工具时序数据库
云计算&大数据
ActiveMQAerakiAgentAlluxioAntreaApacheApache APISIXAPISIXBFEBitBookKeeperChaosChoerodonCiliumCloudStackConsulDaprDataEaseDC/OSDockerDrillDruidElasticJobElasticSearchEnvoyErdaFlinkFluentGrafanaHadoopHarborHelmHudiInLongKafkaKnativeKongKubeCubeKubeEdgeKubeflowKubeOperatorKubernetesKubeSphereKubeVelaKumaKylinLibcloudLinkerdLonghornMeiliSearchMeshNacosNATSOKDOpenOpenEBSOpenKruiseOpenPitrixOpenSearchOpenStackOpenTracingOzonePaddlePaddlePolicyPulsarPyTorchRainbondRancherRediSearchScikit-learnServerlessShardingSphereShenYuSparkStormSupersetXuperChainZadig云原生CNCF人工智能区块链数据挖掘机器学习深度学习算法工程边缘计算
UI&美工&设计
BlenderKritaSketchUI设计
网络&系统&运维
AnsibleApacheAWKCeleryCephCI/CDCurveDevOpsGoCDHAProxyIstioJenkinsJumpServerLinuxMacNginxOpenRestyPrometheusServertraefikTrafficUnixWindowsZabbixZipkin安全防护系统内核网络运维监控
综合其它
文章资讯
 上传文档  发布文章  登录账户
IT文库
  • 综合
  • 文档
  • 文章

无数据

分类

全部后端开发(64)Go(64)

语言

全部中文(简体)(63)中文(繁体)(1)

格式

全部PDF文档 PDF(62)其他文档 其他(2)
 
本次搜索耗时 0.153 秒,为您找到相关结果约 64 个.
  • 全部
  • 后端开发
  • Go
  • 全部
  • 中文(简体)
  • 中文(繁体)
  • 全部
  • PDF文档 PDF
  • 其他文档 其他
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • pdf文档 用Go语言实现推送服务器

    用Go语言实现推送服务器 陈叶皓 chen.yh@ctrip.com 议程 • 推送服务器介绍 • Golang特点 • 推送服务架构 • 部分代码 • 上线效果 议程 • 推送服务器介绍 • 推送服务架构 • 部分代码 • 上线效果 什么是推送服务器 • 推送业务信息到手机端 • 始终保持连接 推送服务器要求 • 高并发 • 可靠性 • 高性能 • 支持水平扩展 • 无单点故障 无单点故障 Go语言特性 • 静态的、编译的 • 自动内存回收 • 命令式编程 • 函数可以作为值 • 面向并发 • 内置RPC支持 推送服务器要求的应对 • 高并发 – goroutine • 可靠性 – 使用Redis暂存消息 • 高性能 – 静态编译语言 • 支持水平扩展 – 使用RPC组成集群 • 无单点故障 – 使用Redis实现数据共享 Go语言的并发模型 • 事件驱动,共享线程池 含一 个获取返回值的channel 议程 • 推送服务器介绍 • 推送服务架构 • 部分代码 • 上线效果 逻辑架构 去中心化设计 • 客户端随机连接 • Redis集中存储地址表 • 信息发送2跳到达 消息缓存设计 • 消息预存(Redis) • 尝试发送 • 发送成功后删除 客户端注册时序图 议程 • 推送服务器介绍 • 推送服务架构 • 部分代码 • 上线效果 串行场景-Socket
    0 码力 | 25 页 | 260.04 KB | 1 年前
    3
  • pdf文档 Go 2 Generics? A (P)review

    // 编译时不检查,运行时找不到实现,崩溃 参数化多态(Parametric Polymorphism)根据实参类型生成不同的版本 ,支持任意数量的 调用。即泛型 func Add(a, b T) T{ return a+b } Add(1, 2) // 编译器生成 T = int 的 Add Add(float64(1.0), 2.0) // 编译器生成 T = float64 float64 的 Add Add("1", "2") // 编译器生成 T = string 的 Add 2020 © Changkun Ou · Go 夜读 · Go 2 Generics? A (P)review 泛型做到了什么接口做不到的事情? 5 当使用 interface{} 时,a、b、返回值都可以在运行时表现为不同类型,取决于内部 实现如何对参数进行断言: 16 } 17 return b 18 } 19 ... 动机 ● Max 是一个看似简单,实则复杂的例子 ● 能否将类型作为参数进行传递? ● 如何对类型参数的行为进行检查? ● 如何支持多个相同 类型的参数? ● 如何支持多个不同 类型的参数? ● …… 2020 © Changkun Ou · Go 夜读 · Go 2 Generics? A (P)review
    0 码力 | 41 页 | 770.62 KB | 1 年前
    3
  • pdf文档 Golang 101(Go语言101 中文版) v1.21.a

    第31章:详解panic/recover原理 - 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 目录 2 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 反直觉,甚至自相矛盾。 Go 语法和语义设计中有很多折衷和权衡。一个Go程序员需要相当的Go编程经验和感悟 才能理解这些权衡。 Go提供了几种基本但非必需的类型,比如切片,接口和通道。 Go编译器和运行时在 实现这些类型的时候,进行了必要的封装。 一方面,这些封装为Go编程带来了许多 便利,使我们不用从头实现这些类型。 但另一方面,这些封装隐藏了这些类型的内 部结构, 从而对我们更深入地理解这些类型的值的行为带来了一些障碍。 这些类型 的值。 我认为知道一些可能的底层实现对于清除某些Go编程中的困惑非常有 帮助。 3. 详细地解释了内存块(memory block)。 了解Go值和内存块之间的关系对于 理解垃圾收集器是如何工作的以及如何避免内存泄漏非常有帮助。 4. 将接口值视为用于包裹非接口值的盒子。 我发现将接口值视为用于包裹非接 口值的盒子对于清除很多和接口相关的困惑非常有帮助。 5. 澄清了Go白皮
    0 码力 | 591 页 | 21.40 MB | 1 年前
    3
  • epub文档 Golang 101(Go语言101 中文版) v1.21.a

    第30章:一些恐慌/恢复用例 第31章:详解panic/recover原理 - 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 微反直觉,甚至 自相矛盾。 Go语法和语义设计中有很多折衷和权衡。一个Go程序员需要相当 的Go编程经验和感悟才能理解这些权衡。 Go提供了几种基本但非必需的类型,比如切片,接口和通道。 Go编译器和运 行时在实现这些类型的时候,进行了必要的封装。 一方面,这些封装为Go编 程带来了许多便利,使我们不用从头实现这些类型。 但另一方面,这些封装 隐藏了这些类型的内部结构, 从而对我们更深入地理解这些类型的值的行为 解 这些类型的值。 我认为知道一些可能的底层实现对于清除某些Go编程中 的困惑非常有帮助。 3. 详细地解释了内存块(memory block)。 了解Go值和内存块之间的关系 对于理解垃圾收集器是如何工作的以及如何避免内存泄漏非常有帮助。 4. 将接口值视为用于包裹非接口值的盒子。 我发现将接口值视为用于包裹 非接口值的盒子对于清除很多和接口相关的困惑非常有帮助。 5. 澄清了Go白皮
    0 码力 | 821 页 | 956.82 KB | 1 年前
    3
  • mobi文档 Golang 101(Go语言101 中文版) v1.21.a

    第30章:一些恐慌/恢复用例 第31章:详解panic/recover原理 - 也解释了什么是“函数退出阶段” 第32章:代码块和标识符作用域 第33章:表达式估值顺序规则 第34章:值复制成本 第35章:边界检查消除 并发编程 第36章:并发同步概述 第37章:通道用例大全 第38章:如何优雅地关闭通道 第39章:其它并发同步技术 - 如何使用sync标准库包 第40章:原子操作 - 如何使用sync/atomic标准库包 微反直觉,甚至自 相矛盾。 Go语法和语义设计中有很多折衷和权衡。一个Go程序员需要相当的 Go编程经验和感悟才能理解这些权衡。 Go提供了几种基本但非必需的类型,比如切片,接口和通道。 Go编译器和运 行时在实现这些类型的时候,进行了必要的封装。 一方面,这些封装为Go编程 带来了许多便利,使我们不用从头实现这些类型。 但另一方面,这些封装隐藏 了这些类型的内部结构, 从而对我们更深入地理解这些类型的值的行为带来了 解这些 类型的值。 我认为知道一些可能的底层实现对于清除某些Go编程中的困惑 非常有帮助。 3. 详细地解释了内存块(memory block)。 了解Go值和内存块之间的关系对 于理解垃圾收集器是如何工作的以及如何避免内存泄漏非常有帮助。 4. 将接口值视为用于包裹非接口值的盒子。 我发现将接口值视为用于包裹非 接口值的盒子对于清除很多和接口相关的困惑非常有帮助。 5. 澄清了Go白皮
    0 码力 | 608 页 | 1.08 MB | 1 年前
    3
  • pdf文档 Go 入门指南(The way to Go)

    Go 2.5 在 Windows 上安装 Go 2.6 安装目录清单 2.7 Go 运行时(runtime) 2.8 Go 解释器 第3章:编辑器、集成开发环境与其它工具 3.1 Go 开发环境的基本要求 3.2 编辑器和集成开发环境 3.3 调试器 3.4 构建并运行 Go 程序 3.5 格式化代码 3.6 生成代码文档 3.7 其它工具 3.8 Go 性能说明 3.9 4 使用 select 切换协程 14.5 通道、超时和计时器(Ticker) 14.6 协程和恢复(recover) 14.7 新旧模型对比:任务和worker 14.8 惰性生成器的实现 14.9 实现 Futures 模式 第 15 章 网络,模板和网页应用 15.1 tcp服务器 15.2 一个简单的网页服务器 15.3 访问并读取页面 15.4 写一个简单的网页应用 就开始研发一款以 C 语言为目标结果的编译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队,他们对系统编程语言,操作系统和并行都有着非常深刻的见 解 图 1.1 Go 语言设计者:Griesemer、Thompson 和 Pike 在 2008 年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器和运行实现 上。Ian Lance
    0 码力 | 466 页 | 4.44 MB | 1 年前
    3
  • pdf文档 Go 入门指南(The way to Go)

    欢迎来到 Go 语言开发的奇妙世界! Go入门指南 - 3 - 本文档使用 看云 构建 第一部分:学习 Go 语言 第1章:Go 语言的起源,发展与普及 第2章:安装与运行环境 第3章:编辑器、集成开发环境与其它工具 第1章:Go 语言的起源,发展与普及 1.1 起源与发展 Go 语言起源 2007 年,并于 2009 年正式对外发布。它从 2009 年 9 月 21 日开始作为谷歌公司 语言、Unix 和 Plan 9 的创始人之一,与 Rob Pike 共同开 发了 UTF-8 字符集规范。自 2008 年 1 月起,Ken Thompson 就开始研发一款以 C 语言为目标结果的编 译器来拓展 Go 语言的设计思想。 这是一个由计算机领域 “发明之父” 所组成的黄金团队,他们对系统编程语言,操作系统和并行都有着非 常深刻的见解 图 1.1 Go 语言设计者:Griesemer、Thompson 语言设计者:Griesemer、Thompson 和 Pike Go入门指南 - 4 - 本文档使用 看云 构建 在 2008 年年中,Go 语言的设计工作接近尾声,一些员工开始以全职工作状态投入到这个项目的编译器 和运行实现上。Ian Lance Taylor 也加入到了开发团队中,并于 2008 年 5 月创建了一个 gcc 前端。 Russ Cox 加入开发团队后着手语言和类库方面的开发,也就是 Go 语言的标准包。在
    0 码力 | 380 页 | 2.97 MB | 1 年前
    3
  • pdf文档 Go Web编程

    12.部署与维护 12.1 应用日志 12.2 网站错误处理 12.3 应用部署 12.4 备份和恢复 12.5 小结 13.如何设计一个Web框架 13.1 项目规划 13.2 自定义路由器设计 13.3 controller设计 13.4 日志和配置设计 13.5 实现博客的增删改 13.6 小结 14.扩展Web框架 14.1 静态文件支持 14.2 Session支持 14 bash 运行all.bash后出现"ALL TESTS PASSED"字样时才算安装成功。 上面是Unix风格的命令,Windows下的安装方式类似,只不过是运行all.bat,调用的编译器是MinGW的gcc。 然后设置几个环境变量, export GOROOT=$HOME/go export GOBIN=$GOROOT/bin export PATH=$PATH:$GOBIN PATH=$PATH:$GOBIN 看到如下图片即说明你已经安装成功 7 图1.1 源码安装之后执行Go命令的图 如果出现Go的Usage信息,那么说明Go已经安装成功了;如果出现该命令不存在,那么可以检查一下自己的PATH环境 变中是否包含了Go的安装目录。 Go标准包安装 Go标准包安装 Go提供了每个平台打好包的一键安装,这些包默认会安装到如下目录:/usr/local/go (Windows系统:c:\Go),当然
    0 码力 | 295 页 | 5.91 MB | 1 年前
    3
  • pdf文档 2.1.3 如何用Go模拟CPU

    计算机的演化历史 – 硬件计算到冯诺伊曼架构 • 构建虚拟世界 – MOS 6502 • 控制单元(control unit) • 运算逻辑单元(arithmetic logic unit) • 6502汇编器与链接器 • 未来目标 1970年程序员 CPU 80KHz 单核 内存 64KB 手编磁芯 老娘把你送上月球 2021年程序员 CPU 2,400,000KHz 4核 内存 8,000,000KB 000KB DDR3 呜呜 App内存不足 外卖下不了单 计算机的演化历史 • 一部偷懒的历史 • 硬件“计算机”时代 • 不擅长计算和记忆的人使用工具帮助计算:算盘,计算尺,手摇计算器 • 硬件计算机改进支持的算法,需要变更或重新发明整个硬件,比如让算 盘支持对数 计算机的演化历史 • 改硬件太麻烦了,还慢 • 继电器计算机 • 1937年贝尔实验室:model k • 计算一次复数速度30-40s,手摇计算机15分 简单、容易实现的现代CPU MOS 6502简介 • 8位,变长ISA(CISC) • 中断(NMI,IRQ) • 寄存器 • 1个累加寄存器(Accumulator) • 2个地址索引寄存器(X,Y) • 1个状态寄存器(PS) • 1个16位程序指针寄存器(PC) • 1个栈寄存器(SP) Go模拟内存 • 内存空间 [65536]Byte • 每个块是一个page (256Byte) ZeroPage
    0 码力 | 42 页 | 7.10 MB | 1 年前
    3
  • pdf文档 Golang大规模云原生应用管理实践

    云原生生态(CNCF) 云原生应用 云原生是以容器技术为基础围绕着Kubernetes进行的一场技术标准化演进。通过标准可扩展的调度,网络, 存储,容器运行时接口来提供基础设施;通过标准可扩展的声明式资源和控制器来提供运维能力。两层标 准化推进了细化的社会分工,各领域进一步提升规模化和专业化,全面达到成本,效率,稳定性的优化。 4 6 7 2 3 5 1 1 Kubectl plugins 2 Apiserver • 策略与机制随着层次的变化而变化; 应用管理的策略与机制 应用 版本 工作负载 负载均衡 标签 流量 组件 日志 指标 容量 服务 依赖 路由规则 持久卷 部署策略 健康检查 … 灰度 发布 定时弹性 事件 指标弹性 分批发布 重启 回滚 日志管理 事件中心 指标监控 存储挂载 服务绑定 手动弹性 回退历史 负载均衡 报警 诊断 组件管理 云原生应用 4 6 7 2 3 5 1 云原生PaaS平台 8 9 8 9 向下设计平台策略与机制融入云原生生态 向上提供应用管理策略与机制使用平台 插入:K8s核心机制-声明式资源与控制器 控制器 期望状态 被控制系统 管控动作 监控状态 apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment
    0 码力 | 23 页 | 7.70 MB | 1 年前
    3
共 64 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
前往
页
相关搜索词
Go语言实现推送服务务器服务器GenericsreviewGolang101中文文版中文版v121入门指南ThewaytoWeb编程2.1如何模拟CPU大规规模大规模原生应用管理实践
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩