Hidden Overhead of a Function API
performance, we typically think about the function logic. We’ll see that a well designed function API can have an even larger impact.How will we compare performance? ● Benchmarks at this low level are advance(RandIter& iter, Diff n, random_access_iterator_tag) { iter += n; } ● Access token to make some API available only inside the library (like the default “package private” access modifier in Java) Empty0 码力 | 158 页 | 2.46 MB | 5 月前3Apache APISIX How to implement plugin orchestration in API Gateway
Apache APISIX: How to implement plugin orchestration in API Gateway wenming@apache.org Apache APISIX VP Ming Wen 温铭 • Co-founder @ api7.ai • VP and PMC member, Apache APISIX • committer, Apache Apache APISIX • Custom plugin development in API Gateway • Generate APISIX plugins automatically • The future of API Gateway Apache APISIX • Cloud Native API Gateway (https://github.com/apache/apisix) Zero-Trust gateway Technology Architecture Custom plugin development in API Gateway Difficulties of gateway implementation • API Gateway is not an out-of-the-box infra project, which is different from0 码力 | 28 页 | 1.19 MB | 5 月前3GraphBLAS: Building a C++ Matrix API for Graph Algorithms
the important data structures and concepts? Prior work in the GraphBLAS community, C API Overview of our draft C++ API How might this interoperate with standard C++, graph library proposal? 4[DISTRIBUTION the important data structures and concepts? Prior work in the GraphBLAS community, C API Overview of our draft C++ API How might this interoperate with standard C++, graph library proposal? 5[DISTRIBUTION the important data structures and concepts? Prior work in the GraphBLAS community, C API Overview of our draft C++ API How might this interoperate with standard C++, graph library proposal? 6[DISTRIBUTION0 码力 | 172 页 | 7.40 MB | 5 月前3蚂蚁金服 API Gateway Mesh 思考与实践
蚂蚁金服 API Gateway Mesh 思考与实践 靳文祥(花名:贾岛) 蚂蚁金服 高级技术专家1/21 /01 /02 /03 API Gateway Mesh 的定义 蚂蚁金服 API Gateway Mesh 实践 云原生 API Gateway 的思考2/21 API Gateway Mesh 的定义 /013/21 LB\Ingress API Gateway App POD Sidecar App POD Traffic Control Plane K8S Cluster API Gateway in Service Mesh4/21 API Gateway Service Mesh vs 南北流量(内外) API Gateway vs Service Mesh A infrastructure to decouple the Service Mesh is Patterns SofaRPC API Gateway MQ Client Service Code6/21 LB\Ingress API Gateway Sidecar App POD Sidecar App POD Traffic Control Plane Cluster API Gateway Mesh An infrastructure0 码力 | 22 页 | 1.72 MB | 5 月前303-基于Apache APISIX的全流量API网关-温铭
APACHE APISIX的全流量API网关 温铭, 来自一家在远程工作方式下商业化开源项目的创业公司(支流科技), 担任CEO&联合创始人, Apache 顶级项目APISIX的PMC主席, Skywalking开源项目的贡献者(commiter)。在创业之前, 在360做企业安全, 360开源委员会的发起人, 腾讯的TVP, TARS基金会的TOC成员, 在安全领域有四十多个专利, 最近三年全 加速了技术落地。新的时代中每个公司的技术都是非常重要的组成部分, 在一个商业竞争激烈的 时代, 公司愈早的占据技术顶峰愈是能够占据商业顶峰。网关作为云原生入口, 是掌握云原生的一个必经 之地, 是开启"财富"的密钥。 微服务和 API 网关的演进 从2014-2015年, 谷歌搜索引擎上"微服务"关键字的搜索趋势直线上 升 在单体架构上, 任一请求都会负载到整个的单体服务集群上 在微服务架构上, 对应请求会负载到对应的微服务子服务集群上 间隔离、降低故障率 但是同样的带来的一些问题: 接口之间通用的功能重复开发、膨胀的 服务数量、难以管理 使用API网关模式 使用API网关进行API聚合 使用API网关实现灰度发布 使用API网关实现服务熔断 与传统API网关的功能 • 让 API 请求更安全、更高效的得到处理 • 覆盖 Nginx 的所有功能:反向代理、负载均衡 • 动态上游、动态 SSL 证书、动态限流限速0 码力 | 11 页 | 6.56 MB | 5 月前302 TiDB Operator 架构与实现 付业成
PingCAP.com Cloud Native Era: Portable, Scalable, Automated Full lifecycle management of TiDB cluster - Deployment - Upgrading - Scaling - Handle network, hardware failures, etc. - Backup/Restore/Data 用户描述自己的期望,提交给 Kubernetes API Server - Kubernetes 根据用户的期望以及当前的状态,协调各方达成用户的期望 PingCAP.com - Kubernetes has pod, deployment, statefulset, etc. - But it does not know how to operate a TiDB cluster... Kubernetes Pattern operate TiDB cluster… - Until we implemented TiDB Operator Kubernetes Pattern - Declarative Model PingCAP.com Operator Pattern - Extending Kubernetes TiDB Operator TiDB PD API Kubernetes API PingCAP0 码力 | 47 页 | 1.73 MB | 5 月前3宋净超 从开源 Istio 到企业级服务:如何在企业中落地服务网格
Tetrate’s product build on top of the upstream Istio ● Why not Istio OSS? ● Problems unsolved ○ Multi-cluster and VM (lower onboarding cost) ○ Enterprise team structure gap (Workspace, Tenants, etc) ○ UI&UX (Service) POD Workload (Service) POD Workload (Service) VM Workload (Service) VM Workload (Service) VM API Gateway Ingress & Egress Mesh can include VMs ● Multi tenancy ● Traffic shaping and canary controls Cross cluster security policies & access control ● Unified telemetry and availability reporting ● Service discovery across multiple clusters ● Fine-grained ingress & egress controls ● API GW is part0 码力 | 30 页 | 4.79 MB | 5 月前3TiDB中文技术文档
精度数学 SQL 语句语法 数据定义语句 (DDL) 数据操作语句 (DML) 事务语句 数据库管理语句 Prepared SQL 语句语法 实用工具语句 JSON 支持 Connectors 和 API TiDB 事务隔离级别 错误码与故障诊断 与 MySQL 兼容性对比 TiDB 内存控制文档 Bit-value Literals Boolean Literals Date 和 Time 字面值 部署方案 Docker Compose 部署方案 跨机房部署方案 配置集群 参数解释 TiDB 配置项解释 开启 TLS 验证 生成自签名证书 监控集群 整体监控框架概述 重要监控指标详解 组件状态 API & 监控 扩容缩容 集群扩容缩容方案 使用 Ansible 扩容缩容 升级 升级组件版本 TiDB 2.0 升级操作指南 性能调优 备份与迁移 备份与恢复 数据迁移 数据迁移概述 数据迁移 故障诊断 数据定义语句 (DDL) 数据操作语句 (DML) 事务语句 数据库管理语句 Prepared SQL 语句语法 实用工具语句 TiDB SQL 语法图 JSON 支持 Connectors 和 API TiDB 事务隔离级别 错误码与故障诊断 与 MySQL 兼容性对比 TiDB 内存控制 高级功能 历史数据回溯 垃圾回收 (GC) TiDB 运维文档 软硬件环境需求 部署集群 Ansible 部署方案(强烈推荐)0 码力 | 444 页 | 4.89 MB | 5 月前3大规模微服务架构下的Service Mesh探索之路
• 可扩展性有限,dtab不易理解和使用 • 功能不能满足蚂蚁的需求,没法做到 类似envoy xds那样的扩展性 • 未来发展前景黯淡 Envoy • 安心做数据平面, 提供XDS API • 设计优秀,性能和稳定性表现良好 • C++编写,和蚂蚁的技术栈差异大 • 蚂蚁有大量的扩展和定制化需求 • 我们非常认可envoy在数据平面上的表现开源方案选择之第二代Service Mesh 去掉Mixer和Auth • 定制Pilot,实现ETCD Adapter • 脱离k8s运行Sofa Mesh在技术选型时考虑 Envoy • 数据平面:Envoy最符合要求 • XDS API的设计更是令人称道 • C++带来的技术栈选择问题 • 我们有太多的扩展和定制 • 而且,proxy不仅仅用于mesh Istio • 控制平面:Istio是目前做的最好的 • 认可Istio的设计理念和产品方向 Architect2Golang版Sidecar Pilot Auth Golang Sidecar Mixer XDS API Mixer Service HTTP/1.1 HTTP/2 Sofa RPC ü 参照Envoy的设计 ü 实现XDS API ü 兼容Istio ü 支持HTTP/1.1和HTTP/2 ü 扩展Sofa/Dubbo/HSF Dubbo RPC0 码力 | 37 页 | 7.99 MB | 5 月前3蚂蚁金服Service Mesh渐进式迁移方案
168.1.104:12220 instances:[”192.168.1.104:12220”] SOFA Registry CoreDNS RPC Controller Kube API server Discovery services renew RPC services Watch services renew RPC DNS b.svc -> 10.0.3.100 ServiceName=userservice • ClusterIP=10.254.162.44 • Domain=userservice.default.svc.cluster.local 2. 生成DNS记录 • userservice.default.svc.cluster.local -> 10.254.162.44 kube-proxy 3. 发送请求 GET http://userservice/id/1000221 1000221 4. 域名解析 • 补全userservice -> userservice.default.svc.cluster.local • 解析域名 userservice.default.svc.cluster.local • 得到Cluster IP (10.254.162.44) 5. kube-proxy拦截到10.254.162.44的请求 • 修改目标地址为Pod IP=1920 码力 | 40 页 | 11.13 MB | 5 月前3
共 236 条
- 1
- 2
- 3
- 4
- 5
- 6
- 24