05-MoonBit 编程语言(WASM 技术)服务端应用展望以及对Kubernetes生态的影响MoonBit 编程语言(WASM 技术) 服务端应用展望 以及对Kubernetes生态的影响 沙渺(MoonBit 语言社区开发者) 本分享包含大量目前尚处在早期开发阶段甚至概念阶段, 尚未获得广泛应用的技术。 仅为前景展望,不推荐用于当前立项开发的实际工程。 敬请注意 内容 • WASM 技术栈现状和 WASM 后端应用的构想 • MoonBit 语言介绍 • MoonBit0 码力 | 30 页 | 3.41 MB | 9 月前3
Nacos架构&原理
。 3. SDK 通过 GRPC 长连接监听配置变更,Server 端对比 Client 端配置的 MD5 和本地 MD5 是否相等,不相等推送配置变更。 4. SDK 会保存配置的快照,当服务端出现问题的时候从本地获取。 配置资源模型 Namespace 的设计就是用来进行资源隔离的,我们在进行配置资源的时候可以从以下两个角度来 看: 从单个租户的角度来看,我们要配置多套环境的配置,可以根据不同的环境来创建 例续约)。而对于 Nacos 服务发现注册中的持久化服务,因为所有的数据都是直接使用调用 Nacos 服务端直接创建,因此需要由 Nacos 保障数据在各个节点之间的强⼀致性,故而针对此类型的服务 数据,选择了强⼀致性共识算法来保障数据的⼀致性。 从配置管理来看 配置数据,是直接在 Nacos 服务端进行创建并进行管理的,必须保证大部分的节点都保存了此配 置数据才能认为配置被成功保存了,否则就会 上下文清 理。 Server 之间通信 ○ 单个 Server 需要获取到集群的所有 Server 间的列表,并且为每⼀个 Server 创建独立的长链 接;连接断开时,需要进行重连,服务端列表发生变更时,需要创建新节点的长链接,销毁下 线的节点长链接。 ○ Server 间需要进行数据同步,包括配置变更信息同步,当前连接数信息,系统负载信息同步, 负载调节信息同步等。 Nacos0 码力 | 326 页 | 12.83 MB | 10 月前3
跟我学Shiro - 张开涛loginUrl:https://localhost:8443/chapter15-server/login 表示服务端端登录地址,登录成功后跳 转到?service 参数对于的地址进行客户端验证及登录; “/cas=cas”:即/cas 地址是服务器端回调地址,使用 CasFilter 获取 Ticket 进行登录。 http://tools.ietf.org/html/rfc6749。 服务器端 本文把授权服务器和资源服务器整合在一起实现。 POM 依赖 此处我们使用 apache oltu oauth2 服务端实现,需要引入 authzserver(授权服务器依赖)和 resourceserver(资源服务器依赖)。 其他的请参考 pom.xml。 数据字典 http://open.weibo.com/wiki/授权机制说明 http://open.weibo.com/wiki/微博 API 客户端 客户端流程:如果需要登录首先跳到 oauth2 服务端进行登录授权,成功后服务端返回 auth code,然后客户端使用 auth code 去服务器端换取 access token,最好根据 access token 获取 用户信息进行客户端的登录绑定。这个可0 码力 | 219 页 | 4.16 MB | 10 月前3
TiDB中文技术文档而存在,有些第三方软件会查询里面的信息。在目前 TiDB 的实现中,里面大部分只是一些空表。 提供字符集相关的信息,其实数据是假的。TiDB 默认支持并且只支持 utf8mb4 。 TiDB 系统数据库 权限系统表 服务端帮助信息系统表 统计信息相关系统表 GC Worker 相关系统表 其它系统表 INFORMATION_SCHEMA 里面的表 CHARACTER_SETS Table TiDB 系统数据库 - 32 书栈(BookStack.CN) 构建 使用加密连接 TiDB 服务端默认采用非加密连接,因而具备监视信道流量能力的第三方可以知悉 TiDB 服务端与客户端之间发送和 接受的数据,包括但不限于查询语句内容、查询结果等。若信道是不可信的,例如客户端是通过公网连接到 TiDB 服 务端的,则非加密连接容易造成信息泄露,建议使用加密连接确保安全性。 TiDB 服务端支持启用基于 TLS(传输层安全)协议的加密连接,协议与 身份验证(可选):客户端和服务端能验证双方身份,避免中间人攻击。 TiDB 的加密连接支持默认是关闭的,必须在 TiDB 服务端通过配置开启加密连接的支持后,才能在客户端中使用加 密连接。另外,与 MySQL 一致,TiDB 加密连接是以单个连接为单位的,并且是可选的,因而对于开启了加密连接 支持的 TiDB 服务端,客户端既可以选择通过加密连接安全地连接到该 TiDB 服务端,也可以选择使用普通的非加0 码力 | 444 页 | 4.89 MB | 6 月前3
Service Mesh的实践分享Thrift over TCP Thrift over TCP JSON over HTTP JSON over HTTP多语言服务端接入 • Registry Agent • sidecar • 注册代理 • 健康检查 • 服务端受限于Proxy支持的协 议(目前只支持HTTP 1.1) Local Proxy Web Server Service Registry Proxy已经增加了一跳,server再增加一跳会加剧 性能压力 • 部署考虑 • 服务端agent成为必选项会增加运维压力 • OSP server默认没有agent,web server只带一个 服务注册agent • 服务端的一些治理、trace、鉴权功能通过代码插 件的方式实现 • 治理效果考虑 • 服务端嵌入治理功能可以让治理效果更好,如提 供主动GC、线程池隔离等 • 因为是内部项目,优雅性和治理效果之间,选择0 码力 | 30 页 | 4.80 MB | 6 月前3
Rust 程序设计语言 简体中文版 1.85.0一个高级主题大杂烩,包括不安全 Rust(unsafe Rust)、宏(macro)和更多关于生命周期、 Trait、类型、函数和闭包的内容。 第二十一章我们将会完成一个项目,实现一个底层多线程的 Web 服务端! 最后的附录包含了一些关于该语言的实用信息,其格式更像是参考资料。附录 A 涵盖了 Rust 的关键字,附录 B 涵盖了 Rust 的运算符和符号,附录 C 涵盖了标准库提供的可派生 trait,附 一起编译, 我们会在接下来的章节中遇到。 crate 有两种形式:二进制 crate 和库 crate。二进制 crate(Binary crates)可以被编译为可 执行程序,比如命令行程序或者服务端。它们必须有一个名为 main 函数来定义当程序被执行 的时候所需要做的事情。目前我们所创建的 crate 都是二进制 crate。 库 crate(Library crates)并没有 main 在大部分现代操作系统中,已执行程序的代码在一个进程(process)中运行,操作系统则会 负责管理多个进程。在程序内部,也可以拥有多个同时运行的独立部分。这些运行这些独立部 分的功能被称为线程(threads)。例如,web 服务端可以有多个线程以便可以同时响应多个请 求。 将程序中的计算拆分进多个线程可以改善性能,因为程序可以同时进行多个任务,不过这也会 增加复杂性。因为线程是同时运行的,所以无法预先保证不同线程中的代码的执行顺序。这会0 码力 | 562 页 | 3.23 MB | 1 月前3
36-云原生监控体系建设-秦晓辉Kubernetes架构 l 服务端组件,控制面:API Server、Scheduler、 Controller-Manager、ETCD l 工作负载节点,最核心就是监控Pod容器和节点本 身,也要关注 kubelet 和 kube-proxy l 业务程序,即部署在容器中的业务程序的监控,这 个其实是最重要的 随着 Kubernetes 越来越流行,几乎所有云厂商都提供 了托管服务,这就意味着,服务端组件的可用性保障交 的 sdk,截获请求之后通过 UDP 推送给兼容 statsd 协议的 agent(比如telegraf、datadog-agent),这些 agent 在内存里做指标计算聚 合,然后把结果数据推给服务端。因为是 UDP 协议,fire-and-forget,即使 agent 挂了,对业务也没啥影响 • prometheus sdk 作为另一种埋点方式,聚合计算逻辑是在 sdk 里完成,即在业务进程的内存里完成,对此介意 statsd 数据流向 • 推荐做法:如果是容器环境,Pod 内 sidecar 的方式部署 statsd;如果是物理机虚拟机环境,每个机器上部署一 个 statsd 的 agent,接收到数据之后统一推给服务端 Pod-001 业务 容器 agent Pod-002 业务 容器 agent 监控服 务端 VM-001 业务 进程 agent 监控服 务端 业务 进程0 码力 | 32 页 | 3.27 MB | 6 月前3
TiDB v8.2 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 647 8.1.2 为 TiDB 客户端服务端间通信开启加密传输· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 652 8.1.3 为 TiDB JDBC API 进行开发,注意选择使用 Prepare API。 另外需要注意 MySQL Connector/J 实现中默认只会做客户端的语句预处理,会将 ? 在客户端替换后以文本形式 发送到服务端,所以除了要使用 Prepare API,还需要在 JDBC 连接参数中配置 useServerPrepStmts = true,才 能在 TiDB 服务器端进行语句预处理(下面参数配置章节有详细介绍)。 COM_STMT_EXECUTE 或 COM_STMT_PREPARE 代替即生效。 231 • cachePrepStmts 虽然 useServerPrepStmts = true 能让服务端执行预处理语句,但默认情况下客户端每次执行完后会 close 预处理语句,并不会复用,这样预处理的效率甚至不如文本执行。所以建议开启 useServerPrepStmts �→ = true 后同时配置0 码力 | 4987 页 | 102.91 MB | 10 月前3
TiDB v8.4 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 705 8.1.2 为 TiDB 客户端服务端间通信开启加密传输· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 710 8.1.3 为 TiDB JDBC API 进行开发,注意选择使用 Prepare API。 另外需要注意 MySQL Connector/J 实现中默认只会做客户端的语句预处理,会将 ? 在客户端替换后以文本形式 发送到服务端,所以除了要使用 Prepare API,还需要在 JDBC 连接参数中配置 useServerPrepStmts = true,才 能在 TiDB 服务器端进行语句预处理(下面参数配置章节有详细介绍)。 COM_QUERY 被 COM_STMT_EXECUTE 或 COM_STMT_PREPARE 代替即生效。 • cachePrepStmts 虽然 useServerPrepStmts = true 能让服务端执行预处理语句,但默认情况下客户端每次执行完后会 close 预处理语句,并不会复用,这样预处理的效率甚至不如文本执行。所以建议开启 useServerPrepStmts �→ = true 后同时配置0 码力 | 5072 页 | 104.05 MB | 10 月前3
TiDB v8.5 中文手册· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 959 8.1.2 为 TiDB 客户端服务端间通信开启加密传输· · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · 964 8.1.3 为 TiDB JDBC API 进行开发,注意选择使用 Prepare API。 另外需要注意 MySQL Connector/J 实现中默认只会做客户端的语句预处理,会将 ? 在客户端替换后以文本形式 发送到服务端,所以除了要使用 Prepare API,还需要在 JDBC 连接参数中配置 useServerPrepStmts = true,才 能在 TiDB 服务器端进行语句预处理(下面参数配置章节有详细介绍)。 COM_QUERY 被 COM_STMT_EXECUTE 或 COM_STMT_PREPARE 代替即生效。 • cachePrepStmts 虽然 useServerPrepStmts = true 能让服务端执行预处理语句,但默认情况下客户端每次执行完后会 close 预处理语句,并不会复用,这样预处理的效率甚至不如文本执行。所以建议开启 useServerPrepStmts �→ = true 后同时配置0 码力 | 5095 页 | 104.54 MB | 10 月前3
共 41 条
- 1
- 2
- 3
- 4
- 5













