02. Service Mesh落地之后_为sidecar注入灵魂 - 周群力ABC of Lock-In》 2012 年 2 月,一篇文章讲了一个有趣的故事 • 企业上了 A 云,用了 A 云的专有服务 • 被 A 云锁定 • 供应商 C 找上门 B 云也很好,你通过我的服务可以无缝 使用 A 云和 B 云 • 被 C 锁定 POD container App container container Dapr • 缺失 Service Mesh 能力 • /270 57 总结 总结 58 • Multi Runtime: 所有中间件下沉: 业务逻辑和基础设施分离 多语言治理 同一套代码移植到不同组件 • Runtime API:真正的供应商解绑 • WebAssembly in sidecar:让业务逻辑跑在 sidecar 里 • Service Mesh : 通信中间件下沉,sidecar 实现组织架构上 的解耦 • Multi0 码力 | 63 页 | 880.85 KB | 1 年前3
2.7 Golang与高性能DSP竞价系统专业DSP解决⽅方案供应商 Golang与⾼高性能DSP竞价系统 By @QLeelulu 专业DSP解决⽅方案 © ⼲⼴广州舜⻜飞信息科技有限公司 All Right ReservedAll Right Reserved • RTB: Real-time Bidding,实时竞价,允许⼲⼴广告买家根据 活动⺫⽬目标、⺫⽬目标⼈人群以及费⽤用⻔门槛等因素对每⼀一个⼲⼴广告 及每次⼲⼴广告展⽰示的费⽤用进⾏行竞价。 专业DSP解决⽅方案 © ⼲⼴广州舜⻜飞信息科技有限公司 All Right ReservedAll Right Reserved 回馈社区 • 第三⽅方包会有⼀一些⼩小坑 ⺴⽹网络运营全流程解决⽅方案供应商 Q&A Thanks! 欢迎加⼊入我们!0 码力 | 51 页 | 5.09 MB | 1 年前3
Go可观测性实践系统就具备可观测性。 什么是可观测性? 可观测性开源产品 每种方案都有特定的、自定义的 步骤来生产和转移符合后端存储 的遥测(Telemetry)数据,这就带 来了工具或者厂商的绑定性。 为了解决“厂商锁定问题”,监控和可观测性社区过去创建了很多开源项 目,比如OpenTracing和OpenCensus,这些标准允许用户实时收集遥测 数据并传输到所选择的后端,最终在2019年,两个组织共同组建OTel项目,0 码力 | 35 页 | 2.88 MB | 1 年前3
03. Golang 在隐私计算平台建设中的实践 - 刘敬的重要地位。 国内外纷纷出台了了围绕数据使⽤用和保护的公共政策 2021年年6⽉月10⽇日,《中华⼈人⺠民共和国数据安全法》在⼗十三届全国⼈人⼤大常委会正式颁布。 明确指出坚持安全与发展并重,锁定⽀支持促进数据安全与发展的措施;建⽴立保障政务数 据安全和推动政务数据开放的制度措施。该法⾃自2021年年9⽉月1⽇日起施⾏行行。 2021年年8⽉月20⽇日,⼗十三届全国⼈人⼤大常委会表决通过《个⼈人信息保护法》,规定任何组0 码力 | 37 页 | 6.20 MB | 1 年前3
对 Go 程序进行可靠的性能测试对 Go 程序进行可靠的性能测试 使用 perflock 的注意事项 26 ● 不要在执行性能测试时强制 kill perflock daemon,否则 cpufreq 参数将不会恢复 ● 只锁定了系统的 CPU 频率,并没有限制与系统中其他资源的占用情况,该被打断的依然会被打断 ● 使用前检查 cpufreq 是否能够被修改,不能在虚拟机上使用、不能在容器内使用 ○ 无法获取 /sys0 码力 | 37 页 | 1.23 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a下面的修改必须在cond.L被锁定的时候执行 24 | values[i] = string('a' + i) 25 | cond.Broadcast() // 可以在cond.L被解锁后发出通知 26 | cond.L.Unlock() 27 | // 上面的通知也可以在cond.L未锁定的时候发出。 28 | //cond.Broadcast() // 上面的调用也可以放在这里 29 | }(i) 30 | } 31 | 32 | // 此函数必须在cond.L被锁定的时候调用。 33 | checkCondition := func() bool { 34 | fmt.Println(values) 35 | for i | defer cond.L.Unlock() 45 | for !checkCondition() { 46 | cond.Wait() // 必须在cond.L被锁定的时候调用 47 | } 48 | } 一个可能的输出: [ ] [ f ] [ c f ] [ c f h ] [ b0 码力 | 821 页 | 956.82 KB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a// 下面的修改必须在cond.L被锁定的时候执行 values[i] = string('a' + i) cond.Broadcast() // 可以在cond.L被解锁后发出通知 cond.L.Unlock() // 上面的通知也可以在cond.L未锁定的时候发出。 //cond.Broadcast() Broadcast() // 上面的调用也可以放在这里 }(i) } // 此函数必须在cond.L被锁定的时候调用。 checkCondition := func() bool { fmt.Println(values) for i := 0; i < N; i++ { if values[i] == "" { cond.L.Lock() defer cond.L.Unlock() for !checkCondition() { cond.Wait() // 必须在cond.L被锁定的时候调用 } } 一个可能的输出: [ ] [ f ] [ c f ] [ c f h ] [ b c f h ] [a b0 码力 | 608 页 | 1.08 MB | 1 年前3
Golang 101(Go语言101 中文版) v1.21.a下面的修改必须在cond.L被锁定的时候执行 24| values[i] = string('a' + i) 25| cond.Broadcast() // 可以在cond.L被解锁后发出通知 26| cond.L.Unlock() 27| // 上面的通知也可以在cond.L未锁定的时候发出。 28| //cond.Broadcast() // 上面的调用也可以放在这里 29| }(i) 30| } 31| 32| // 此函数必须在cond.L被锁定的时候调用。 33| checkCondition := func() bool { 34| fmt.Println(values) 35| for i := 0; 44| defer cond.L.Unlock() 45| for !checkCondition() { 46| cond.Wait() // 必须在cond.L被锁定的时候调用 47| } 48| } 一个可能的输出: [ ] [ f ] [ c f ] [ c f h ] [ b0 码力 | 591 页 | 21.40 MB | 1 年前3
Hello 算法 1.1.0 Go版按照顶 点值大小的顺序等,这样有助于快速查找“带有某种极值”的顶点。 208 第 10 章 搜索 Abstract 搜索是一场未知的冒险,我们或许需要走遍神秘空间的每个角落,又或许可以快速锁定目标。 在这场寻觅之旅中,每一次探索都可能得到一个未曾料想的答案。 第 10 章 搜索 hello‑algo.com 209 10.1 二分查找 二分查找(binary search)是一种0 码力 | 383 页 | 18.48 MB | 1 年前3
Hello 算法 1.0.0 Golang版加的次序,或者按照顶 点值大小的顺序等,这样有助于快速查找“带有某种极值”的顶点。 209 第 10 章 搜索 � 搜索是一场未知的冒险,我们或许需要走遍神秘空间的每个角落,又或许可以快速锁定目标。 在这场寻觅之旅中,每一次探索都可能得到一个未曾料想的答案。 第 10 章 搜索 hello‑algo.com 210 10.1 二分查找 「二分查找 binary search」是一0 码力 | 382 页 | 17.60 MB | 1 年前3
共 13 条
- 1
- 2













