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

无数据

分类

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

语言

全部中文(简体)(19)

格式

全部PDF文档 PDF(17)其他文档 其他(2)
 
本次搜索耗时 0.071 秒,为您找到相关结果约 19 个.
  • 全部
  • 后端开发
  • Go
  • 全部
  • 中文(简体)
  • 全部
  • PDF文档 PDF
  • 其他文档 其他
  • 默认排序
  • 最新排序
  • 页数排序
  • 大小排序
  • 全部时间
  • 最近一天
  • 最近一周
  • 最近一个月
  • 最近三个月
  • 最近半年
  • 最近一年
  • pdf文档 1.5 Go 语言构建高并发分布式系统实践

    、⼀一定量级下服务稳定 、性能满⾜足 需要 ⼀一定量级下服务稳定: 50+内部产品,万款开发平台app 实时⻓长连接数亿量级,⽇日独数⼗十亿量级 1分钟内亿量级⼲⼴广播,⽇日下发峰值百亿量级 400台物理机,9个独⽴立集群,国内外近10个IDC 运维管理的go语⾔言编写的常驻service服务实例接近3000个。 业务场景多样: ⽀支持聊天场景业务,稳定⽀支持多款聊天业务app 30GHz 64G内存 ) qps在2~5w(取决于协议版本,业务逻辑,接⼊入端⺴⽹网络状况) 测试环境,可以通过300w⻓长连接压测(⺴⽹网络,连接稳定,⽆无带宽限制,实际可以更⾼高 ,决定于⼲⼴广播时候业务内存开销的cpu消耗带来的⼼心跳或者业务延时能否接受) 以360消息推送系统为例 ⾼高并发、通信交互复杂 Dispatcher Service Room Service 阻塞解除,超时出错 对于所有io操作建⽴立的fd映射到指定loop,同 时记录上下⽂文关系进⾏行回调设置,超时控制 使⽤用timefd 通过channel与其他⽤用户通信 使⽤用eventfd事件通知的⽅方式,根据epoll获取 的fd绑定的回调函数和参数进⾏行回调操作 对外的通信采取阻io或者也可以go出去,不 阻塞主循环 对外通信信全局消息list,在映射到的 eventloop上开连接池进⾏行消耗
    0 码力 | 39 页 | 5.23 MB | 1 年前
    3
  • epub文档 Golang 101(Go语言101 中文版) v1.21.a

    10 | } 11 | ... 一个*sync.WaitGroup值的Wait方法可以在多个协程中调用。 当对应的 sync.WaitGroup值维护的计数降为0,这些协程都将得到一个(广播)通知而 结束阻塞状态。 1| func main() { 2| rand.Seed(time.Now().UnixNano()) // Go 1.20之前需要 3| 4| const for i := 0; i < N; i++ { 12 | i := i 13 | go func() { 14 | wgB.Wait() // 等待广播通知 15 | log.Printf("values[%v]=%v \n", i, values[i]) 16 | wgA.Done() 17 | i < N; i++ { 23 | values[i] = 50 + rand.Int31n(50) 24 | } 25 | wgB.Done() // 发出一个广播通知 26 | wgA.Wait() 27 | } 一个WaitGroup可以在它的一个Wait方法返回之后被重用。 但是请注意,当一 个WaitGroup值维护的基数为零时,它的带有正整数实参的Add方法调用不能和
    0 码力 | 821 页 | 956.82 KB | 1 年前
    3
  • mobi文档 Golang 101(Go语言101 中文版) v1.21.a

    一 个 *sync.WaitGroup 值 的 Wait 方 法 可 以 在 多 个 协 程 中 调 用 。 当 对 应 的 sync.WaitGroup值维护的计数降为0,这些协程都将得到一个(广播)通知而结 束阻塞状态。 func main() { rand.Seed(time.Now().UnixNano()) // Go 1.20之前需要 const N = 5 var wgB.Add(1) for i := 0; i < N; i++ { i := i go func() { wgB.Wait() // 等待广播通知 log.Printf("values[%v]=%v \n", i, values[i]) wgA.Done() }() } // Wait调用结束之前执行。 for i := 0; i < N; i++ { values[i] = 50 + rand.Int31n(50) } wgB.Done() // 发出一个广播通知 wgA.Wait() } 一个WaitGroup可以在它的一个Wait方法返回之后被重用。 但是请注意,当一个 WaitGroup值维护的基数为零时,它的带有正整数实参的Add方法调用不能和它
    0 码力 | 608 页 | 1.08 MB | 1 年前
    3
  • pdf文档 Golang 101(Go语言101 中文版) v1.21.a

    10| } 11| ... 一个*sync.WaitGroup值的Wait方法可以在多个协程中调用。 当对应的 sync.WaitGroup值维护的计数降为0,这些协程都将得到一个(广播)通知而结束 阻塞状态。 1| func main() { 2| rand.Seed(time.Now().UnixNano()) // Go 1.20之前需要 3| 4| for i := 0; i < N; i++ { 12| i := i 13| go func() { 14| wgB.Wait() // 等待广播通知 15| log.Printf("values[%v]=%v \n", i, values[i]) 16| wgA.Done() 17| := 0; i < N; i++ { 23| values[i] = 50 + rand.Int31n(50) 24| } 25| wgB.Done() // 发出一个广播通知 26| wgA.Wait() 27| } 第39章:sync标准库包中提供的并发同步技术 420 一个WaitGroup可以在它的一个Wait方法返回之后被重用。 但是请注意,当一个
    0 码力 | 591 页 | 21.40 MB | 1 年前
    3
  • pdf文档 2.1.1 Golang主动式内存缓存的优化探索之路

    缓存过期  定期同步  主动方式  监听数据变化 数据加载,更新 02. 全量数据加载,增量数据监听 • 每个应用服务分别消费数据变更消息 • 一个应用服务消费数据变更,应用服务集群内广播 Maxwell是一个能实时读取MySQL二进 制日志binlog,并生成JSON格式的消 息,作为生产者发送给Kafka、 RabbitMQ、Redis、文件或其它平台的 应用程序 数据管理
    0 码力 | 48 页 | 6.06 MB | 1 年前
    3
  • pdf文档 如何消除程序中的数据竞争-周光远

    顺序3 非 预 期 状 态 goroutine 1 goroutine 2 Happens Before Happens Before关系是一种保证,如果a事件Happens Before b事件,那么b事件一定能观察到a事件的结果; In computer science, the happened-before is a relation between the result of two in reality executed out of order. a b b c a c 传递性: 对于任意的事件a,b,c,如果a → b, 同时,b → c,则有: a → c. (后续用→ 代表happens before) • 观察意味着b事件对a事件的结果存在依赖; • Happens Before关系不代表代码真实执行的时间; • 真实执行的时间不影响Happens https://golang.org/ref/mem https://go101.org/article/memory-model.html 消除数据竞争的原理 消除数据竞争,实质就是利用go提供的保证和传递性来建立事件之间的happens before关系。 a b c d go1 go2 data race a b c d go1 go2 no data race 利用通道的happens
    0 码力 | 30 页 | 1.92 MB | 1 年前
    3
  • pdf文档 Golang大规模云原生应用管理实践

    版本 工作负载 负载均衡 标签 流量 组件 日志 指标 容量 服务 依赖 路由规则 持久卷 部署策略 健康检查 … 灰度 发布 定时弹性 事件 指标弹性 分批发布 重启 回滚 日志管理 事件中心 指标监控 存储挂载 服务绑定 手动弹性 回退历史 负载均衡 报警 诊断 组件管理 服务治理 … 权限 K8s Istio Envoy Tekton Type: return dc.rolloutRolling(d, rsList) } ... } • 使用声明式K8s资源 作为期望终态 • 循环控制器 • Label是一等公民 • 事件触发闭环反馈 • 多控制器组合 基于控制论原理 EDAS-阿里云云原生PaaS平台 ApiServer Kube Controller manager Cloud controller Static • Measurable • Relevant • Attainable • Timebound • 控制器设计(做什么) • 基于“可重构”状态机,开放的世界 • 不要修改资源声明 • 事件驱动+主动轮询 • 重试 + 幂等 • 自愈 • e2e测试 • Ginkgo BDD • Kind本地K8s集群 新的复杂度-最终一致性 status: … phase: succeed
    0 码力 | 23 页 | 7.70 MB | 1 年前
    3
  • pdf文档 IPC性能极致优化方案-RPAL落地实践

    com/cloudwego/shmipc-go 方案诞生的背景 方案诞生的背景 IPC 的性能瓶颈有哪些: 1. 系统特权级切换; 2. 异步线程唤醒/休眠(事件通知); 3. 数据拷贝(序列化/反序列化); 方案诞生的背景 能不能把库函数调用的高性能优势做到 IPC 里面,降低进程间的事件通知和数据拷贝开销? 以go-go微服务 RPC 通信场景为例,该问题可以抽象为,如何高效地在两个 go runtime 间进行函数调用? RPAL(Run Process As Library) 方案,基于跨进程虚拟地址 共享,复用 epoll 网络模型,实现了纯用户态的事件轮询和无拷贝的指针读写接口。 从性能瓶颈的两点分析: 1. 异步线程唤醒: 关键在于如何最低限度降低线程唤醒的开销,非必要不通知事件。 2. 数据序列化/反序列化 需要做到跨进程的虚拟地址空间共享,通过传递指针来传递一切数据。 全进程地址空间共享与保护 第二部分
    0 码力 | 39 页 | 2.98 MB | 1 年前
    3
  • pdf文档 基于 mesos 的容器调度框架

    8/36 订阅 通过 SUBSCRIBE 消息, 开启一个长链接来订阅事件 (Event), 常用事件类型: 2017/8/3 基于 mesos 的容器调度框架 http://go-talks.appspot.com/github.com/huangnauh/slides/upone.slide#3 9/36 OFFERS 事件处理 ACCEPT 消息: 接受此 o�er, 包括启动任务,预留资源等调度操作 mesos 的容器调度框架 http://go-talks.appspot.com/github.com/huangnauh/slides/upone.slide#3 10/36 UPDATE 事件处理 Image generated by Mesos web interface 状态更新与 upone 的联动, 例如: - Running 状态, upone 更新负载均衡 - Lost
    0 码力 | 36 页 | 2.49 MB | 1 年前
    3
  • pdf文档 2.游戏战中陪伴助手微服务架构设计与应用

    战中陪伴助手介绍——和平精英最佳第五人 • 游戏战斗中指导 / 建议 • 闲聊、鼓励、攻略 • 取得战绩,赞赏一波 毫不留情! 三杀收下! 早期探索 第二部分 需求思考 • 我们的输入是什么? • 游戏对局事件 • Snapshot • Diffs • 玩家位置 • 安全区 • 航线 • …… • 掉血10点 • 开枪3发 • 敌人方位 • …… • 我们要怎么做? • 我们的输出是什么? 扩展 - 没有考虑扩展 功能 - 难以实现战略推荐 - 早期:先考虑有无 - 引入推荐系统 系统思考——如何评判方案的好坏? 需要定义几个维度来评判一个方案的好坏 - 响应性能: 获取事件到输出策略的延迟 - 服务器成本: 每服务千人成本越低越好 - 运营简易度: 设计新运营策略的难度 - 开发迭代: 如需开发介入,那么功能迭代的速度 - 可解释性: 理由是否能否说服玩家遵从建议 项目各角色成员密切配合,深度参与 - Token / 策略的设计开发可并行 - 运营可闭环策略设计,开发无需介入 方案详述——完整架构 先对整个架构有一个大概的认识 - 消息队列消费:解耦 MQ - Token 清洗:事件翻译和 token 计算 - 推荐系统:策略召回和推荐 - 数据分析:离线策略挖掘和模型训练 - 管理平台:开发、运营、运维辅助 实现方案——Token 清洗 Token 清洗服务完整流程
    0 码力 | 47 页 | 11.10 MB | 1 年前
    3
共 19 条
  • 1
  • 2
前往
页
相关搜索词
1.5Go语言构建并发分布布式系统分布式分布式系统实践Golang101中文文版中文版v1212.1主动动式主动式内存缓存优化探索如何消除程序数据竞争周光远大规规模大规模原生应用管理IPC性能极致方案RPAL落地基于mesos容器调度框架游戏战中陪伴助手服务架构构设设计架构设计
IT文库
关于我们 文库协议 联系我们 意见反馈 免责声明
本站文档数据由用户上传或本站整理自互联网,不以营利为目的,供所有人免费下载和学习使用。如侵犯您的权益,请联系我们进行删除。
IT文库 ©1024 - 2025 | 站点地图
Powered By MOREDOC AI v3.3.0-beta.70
  • 关注我们的公众号【刻舟求荐】,给您不一样的精彩
    关注我们的公众号【刻舟求荐】,给您不一样的精彩