积分充值
 首页
前端开发
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文库
  • 综合
  • 文档
  • 文章

无数据

分类

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

语言

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

格式

全部PDF文档 PDF(63)其他文档 其他(2)
 
本次搜索耗时 0.059 秒,为您找到相关结果约 65 个.
  • 全部
  • 后端开发
  • Go
  • 全部
  • 中文(简体)
  • 英语
  • 中文(繁体)
  • 全部
  • PDF文档 PDF
  • 其他文档 其他
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • pdf文档 Golang在接入层长连接服务中的实践-黄欣

    Golang 在接入层长连接服务中的实践 黄欣 基础平台-架构部 目录 • 背景 • 架构 • 心得 目录 • 架构 • 心得 背景—why 长连接? • 业务场景 – 大量实时计算 • 司机乘客撮合 • 实时计价 – 高频度的数据交互 • 坐标数据 • 计价数据 – App和服务端双向可达 • 上行(抢单) • 下行(派单) 背景—why golang? • 开发效率 整体架构图 架构—接口设计 • 原则 – 扩展性 – 稳定性(最好不用升级) • 解决方法 – Protobuf(golang) – 接口设计分层 • 框架层:模块间通信协议(类似tcp/udp) • 业务层:bytes(类似应用层)留给业务自己定义就好了 架构—性能 • conn svr 架构—集群扩展 • Proxy本身无限扩容(无状态) • 依赖的存储可无限扩容(状态交给存储)
    0 码力 | 31 页 | 1.67 MB | 1 年前
    3
  • pdf文档 GoFrame框架介绍及设计

    框架介绍-框架架构 • 发布方式:Docker、二级制、源码模块 • 模块管理: • 核心模块、社区模块、三方模块 • Go Modules管理方式 • 开发工具链 • 设计模式:MVC、三层架构、工具集 • 应用接口:HTTP/TCP/UDP/RPC Server、终端应用、源码接口 • 数据库类型:通过标准库驱动接口支持多种数据库类型 • 跨平台性:基于Golang开发语言强大跨平台特性 模块化设计 什么是模块? 模块化的目标? 模块也称作组件,是软件系统中可复用的功能逻辑封装单位。 在不同的软件架构层次,模块的概念会有些不太一样。 在开发框架层面,模块是某一类功能逻辑的最小封装单位。 在Golang代码层面中,我们也可以将package称作模块。 软件进行模块化设计的目的, 是为了使得软件功能逻辑尽可能的解耦和复用, 终极目标也是为了保证软件开发维护的效率和质量。 模块化设计-复用原则 本都会上升。 CRP 共同复用原则 (Common Reuse Principle) 不要强迫一个模块依赖它不需要的东西。 模块复用原则竞争关系张力图 模块化设计-单仓包设计 痛点: • 实现相同功能逻辑的模块百花齐放,选择成本过高 • 项目依赖的模块过多,项目整体的稳定性会受到影响 • 项目依赖的模块过多,无从下手是否应当升级模块版本 • 各个模块孤立设计,单独看待每个模块可替换性很高,
    0 码力 | 37 页 | 8.84 MB | 1 年前
    3
  • pdf文档 Go Web编程

    o fmt <文件名>.go,你的代码就被修改成 了标准格式,但是我平常很少用到这个命令,因为开发工具里面一般都带了保存时候自动格式化功能,这个功能其实 在底层就是调用了go fmt。接下来的一节我将讲述两个工具,这两个工具都自带了保存文件时自动化go fmt功能。 使用go fmt命令,更多时候是用gofmt,而且需要参数-w,否则格式化结果不会写入文件。gofmt -w src,可以格式 化整个项目。 Subversion) Launchpad (Bazaar) 所以为了go get 能正常工作,你必须确保安装了合适的源码管理工具,并同时把这些命令加入你的PATH中。其实 go get支持自定义域名的功能,具体参见go help remote。 go install go install 这个命令在内部实际上分成了两步操作:第一步是生成结果文件(可执行文件或者.a包),第二步会把编译好的结果移 links 目录 上一节: GOPATH与工作空间 下一节: Go开发工具 17 1.4 Go开发工具 1.4 Go开发工具 本节我将介绍几个开发工具,它们都具有自动化提示,自动化fmt功能。因为它们都是跨平台的,所以安装步骤之类 的都是通用的。 LiteIDE LiteIDE LiteIDE是一款专门为Go语言开发的跨平台轻量级集成开发环境(IDE),由visualfc编写。
    0 码力 | 295 页 | 5.91 MB | 1 年前
    3
  • pdf文档 2.2.2 深入理解BFE

    深入理解BFE 章淼 百度智能云 架构师 什么是BFE? • 百度统一的七层流量转发平台 • HTTP, HTTPS, HTTP/2, QUIC • 2012年开始建设 • 每日转发请求约1万亿,日峰值超过1KW QPS • 2019年,核心转发引擎对外开源 • BFE => Beyond Front End • https://github.com/bfenetworks/bfe BFE涉及的相关技术原理 01 BFE的设计思想 02 BFE的实现机制 03 为什么需要BFE? • 没有统一七层接入的问题 • 功能重复开发 • 运维成本高 • 流量统一控制能力低 • 引入BFE后 • 功能统一开发 • 运维统一管理 • 流量控制能力增强 • BFE平台的主要功能 • 接入和转发,流量调度,安全防攻击,数据分析 BFE部署前 BFE部署后 L4LB 业务A 集群 且涉及升级的问题。 总体流量规模较大; 应用场景对流量控 制要求低;无法使 用负载均衡器的场 景。 负载均衡器 • 负载均衡的趋势 • 硬件 => 软件 • 四层和七层负载均衡器分离 • 四层负载均衡 • LVS,DPVS,… • 七层负载均衡 • HAProxy,Nginx,Envoy,Traefik, BFE,… BFE为什么基于Go语言 • 研发效率 • 远高于C语言 • 稳定性
    0 码力 | 26 页 | 1.78 MB | 1 年前
    3
  • pdf文档 Hello 算法 1.0.0b4 Golang版

    省略所有系数。例如,循环 2? 次、5? + 1 次等,都可以简化记为 ? 次,因为 ? 前面的系数对时间复 杂度没有影响。 3. 循环嵌套时使用乘法。总操作数量等于外层循环和内层循环操作数量之积,每一层循环依然可以分别 套用上述 1. 和 2. 技巧。 以下示例展示了使用上述技巧前、后的统计结果。 ?(?) = 2?(? + 1) + (5? + 1) + 2 完整统计 (‑.‑|||) = float64) int { if n <= 1 { return 0 } return logRecur(n/2) + 1 } 线性对数阶 ?(? log ?) 线性对数阶常出现于嵌套循环中,两层循环的时间复杂度分别为 ?(log ?) 和 ?(?) 。 主流排序算法的时间复杂度通常为 ?(? log ?) ,例如快速排序、归并排序、堆排序等。 2. 复杂度 hello‑algo.com 25 个互不重复的元素,求其所有可能的排列方案,方案数量为: ?! = ? × (? − 1) × (? − 2) × ⋯ × 2 × 1 阶乘通常使用递归实现。例如以下代码,第一层分裂出 ? 个,第二层分裂出 ? − 1 个,以此类推,直至第 ? 层时终止分裂。 // === File: time_complexity.go === /* 阶乘阶(递归实现) */ 2. 复杂度 hello‑algo.com
    0 码力 | 347 页 | 27.40 MB | 1 年前
    3
  • pdf文档 6.从 0 到 1 搭建十亿级包裹 API Versioning

    的重要性 API 也是产品的一部分,而不仅仅是技术。对于 SaaS 产品,提供 API 服务几乎是与企业级用户合作的必须项,特别是在海外。 - 自动化 - 通过 API,企业可以利用 SaaS 产品的功能来构建自动 化流程和工作流程。 - 定制化 - 通过 API,企业可以开发自己的应用程序、插件或集成 其他工具,以满足特定的业务需求。 - 数据集成 - 通过 API,企业可以灵活地与 SaaS 保持对现有功能的支持,以防止影响已部署的应用程序或客户端。 1.3 API 变更面临的挑战 挑战二、新功能缺少调试环境 What Part 2/4 1. 本质 2. 实现效果 2.1 本质 我们以为的 API Versioning v1, v2, v3 就是版本化.. 2.1 本质 向后兼容 - API 的稳定性要求避免破坏性的更改。在进行更新或修改时,应保 持对现有功能的支持,以防止影响已部署的应用程序或客户端。 对于生命周期以及兼容性可以有更加清晰的定义。 3.3 Webhook version 3.4 公开文档 3.5.1 系统架构概览 3.5.2 系统设计的 trade-off 我们只在应用层做版本化, 每个版本维护的业务逻辑实 际上是对能力层的兼容。 3.6 版本维护 Takeaway Part 4/4 Takeaway 1. API 不仅仅是技术,也是一款产品。如果想要和企业用户合作,API 是必
    0 码力 | 28 页 | 2.26 MB | 1 年前
    3
  • pdf文档 Hello 算法 1.1.0 Go版

    ”。 2. 归:触发“终止条件”后,程序从最深层的递归函数开始逐层返回,汇聚每一层的结果。 而从实现的角度看,递归代码主要包含三个要素。 1. 终止条件:用于决定什么时候由“递”转“归”。 2. 递归调用:对应“递”,函数调用自身,通常输入更小或更简化的参数。 3. 返回结果:对应“归”,将当前递归层级的结果返回至上一层。 观察以下代码,我们只需调用函数 recur(n) ,就可以完成 间效率上与迭代相当。这种情况被称为尾递归(tail recursion)。 ‧ 普通递归:当函数返回到上一层级的函数后,需要继续执行代码,因此系统需要保存上一层调用的上下 文。 ‧ 尾递归:递归调用是函数返回前的最后一个操作,这意味着函数返回到上一层级后,无须继续执行其他 操作,因此系统无须保存上一层函数的上下文。 以计算 1 + 2 + ⋯ + ? 为例,我们可以将结果变量 res 设为函数参数,从而实现尾递归: 省略所有系数。例如,循环 2? 次、5? + 1 次等,都可以简化记为 ? 次,因为 ? 前面的系数对时间复 杂度没有影响。 3. 循环嵌套时使用乘法。总操作数量等于外层循环和内层循环操作数量之积,每一层循环依然可以分别 套用第 1. 点和第 2. 点的技巧。 给定一个函数,我们可以用上述技巧来统计操作数量: func algorithm(n int) { a := 1 // +0(技巧 1)
    0 码力 | 383 页 | 18.48 MB | 1 年前
    3
  • pdf文档 Hello 算法 1.0.0 Golang版

    ”。 2. 归:触发“终止条件”后,程序从最深层的递归函数开始逐层返回,汇聚每一层的结果。 而从实现的角度看,递归代码主要包含三个要素。 1. 终止条件:用于决定什么时候由“递”转“归”。 2. 递归调用:对应“递”,函数调用自身,通常输入更小或更简化的参数。 3. 返回结果:对应“归”,将当前递归层级的结果返回至上一层。 观察以下代码,我们只需调用函数 recur(n) ,就可以完成 间效率上与迭代相当。这种情况被称为「尾递归 tail recursion」。 ‧ 普通递归:当函数返回到上一层级的函数后,需要继续执行代码,因此系统需要保存上一层调用的上下 文。 ‧ 尾递归:递归调用是函数返回前的最后一个操作,这意味着函数返回到上一层级后,无须继续执行其他 操作,因此系统无须保存上一层函数的上下文。 以计算 1 + 2 + ⋯ + ? 为例,我们可以将结果变量 res 设为函数参数,从而实现尾递归: 省略所有系数。例如,循环 2? 次、5? + 1 次等,都可以简化记为 ? 次,因为 ? 前面的系数对时间复 杂度没有影响。 3. 循环嵌套时使用乘法。总操作数量等于外层循环和内层循环操作数量之积,每一层循环依然可以分别 套用第 1. 点和第 2. 点的技巧。 给定一个函数,我们可以用上述技巧来统计操作数量: func algorithm(n int) { a := 1 // +0(技巧 1)
    0 码力 | 382 页 | 17.60 MB | 1 年前
    3
  • pdf文档 2.3 用golang写一个操作系统

    ⼤大道⾄至简 l ⽆无⽤用的都会被舍弃 l 互动和映照 l 迭代中前⾏行 结缘Golang:上帝的⼿手法 监控在线系统所有请求的性能,并通过⺴⽹网⻚页进⾏行提供查询功能 简介 功能 模拟ssh登录各server, 采集所有请求的数据 根据服务器、⽇日期、请求,显⽰示所选请求的性能⾛走势图,包括平均和最⼤大响应时间。 选定时期,显⽰示这⼀一天所有请求的请求数⺫⽬目,平均响应时间中,最⼤大响应时间。 ⽣生态操作系统 在原有操作系统内核基础上,构建新的应⽤用体系及应⽤用⽣生态 ios、android l 云操作系统 chrome os和阿⾥里云os。在上⼀一层操作系统基础之上和⾃自家的云系统进⾏行整合 l 去中⼼心化的云操作系统 Leither 架构基本和chrome os类似,只是将后端的云系统去中⼼心化,使之脱离巨头的控制 来。 可以构造视频⺴⽹网站、微博、微信、IM。。。。。 所有这些应⽤用,⽤用户体验基本不变的情况下 不需要中⼼心服务器存在 Leither是什么? 数 据 层 底 层 ⺴⽹网 络 层 应 ⽤用 层 数 据 库 系 统 接 ⼝口 邮 件 模 块 前 端 架 构 WEB Server RPC 邮件⼿手机接⼝口 ⽤用户信息 ⾃自 ⼰己 好 友 节
    0 码力 | 33 页 | 1014.12 KB | 1 年前
    3
  • pdf文档 Hello 算法 1.0.0b5 Golang版

    ”。 2. 归:触发“终止条件”后,程序从最深层的递归函数开始逐层返回,汇聚每一层的结果。 而从实现的角度看,递归代码主要包含三个要素。 1. 终止条件:用于决定什么时候由“递”转“归”。 2. 递归调用:对应“递”,函数调用自身,通常输入更小或更简化的参数。 3. 返回结果:对应“归”,将当前递归层级的结果返回至上一层。 观察以下代码,我们只需调用函数 recur(n) ,就可以完成 间效率上与迭代相当。这种情况被称为「尾递归 tail recursion」。 ‧ 普通递归:当函数返回到上一层级的函数后,需要继续执行代码,因此系统需要保存上一层调用的上下 文。 ‧ 尾递归:递归调用是函数返回前的最后一个操作,这意味着函数返回到上一层级后,无需继续执行其他 操作,因此系统无需保存上一层函数的上下文。 以计算 1 + 2 + ⋯ + ? 为例,我们可以将结果变量 res 设为函数参数,从而实现尾递归。 省略所有系数。例如,循环 2? 次、5? + 1 次等,都可以简化记为 ? 次,因为 ? 前面的系数对时间复 杂度没有影响。 3. 循环嵌套时使用乘法。总操作数量等于外层循环和内层循环操作数量之积,每一层循环依然可以分别 套用第 1. 点和第 2. 点的技巧。 给定一个函数,我们可以用上述技巧来统计操作数量。 func algorithm(n int) { a := 1 // +0(技巧 1)
    0 码力 | 379 页 | 30.70 MB | 1 年前
    3
共 65 条
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
前往
页
相关搜索词
Golang接入层长连接服务实践黄欣GoFrame框架介绍设计GoWeb编程2.2深入理解BFEHello算法1.00b4搭建十亿包裹APIVersioning1.12.3golang一个操作系统操作系统0b5
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩