SOFAMOSN持续演进路径及实践分享## Service Mesh Meetup #5 广州站 # SOFAMOSN 持续演进路径及实践案例 陈逸凡 wugou.cyf@antfin.com 2019.1.6 ## Agenda ➢ 背景 & 概览 ➢ 持续演进路径 & 技术案例 ➢ 实践案例 ➢ 规划 & 展望 ➢ QA ## 背景 & 概览 ## 数据平面概览 SOFAMOSN数据流  ## 持续演进路径 & 技术案例 ## 能力 TCP代理/7层通用代理 简单匹配路由 集群管理 & 基本负载均衡(RR、RANDOM) SofaRpc及HTTP/1.1、HTTP/2.0支持 支持inspector探测 ➢ TLS扩展支持,支持自定义证书获取 RBAC 0.1.0 0.20 Access log Listener log、Default log IO、协议、前后端核心 metrics 0.3.0 0.4.0 平滑升级迁移支持metrics Tracing框架,已支持SOFA Tracer ➢ Metrics扩展,已支持prometheus0 码力 | 29 页 | 7.03 MB | 1 年前3
PyWebIO v0.3.0 使用手册ZILNILSHHGLHDQWHBQUR[S[WWSVJ @®Mo&RU >KWWSV HQI ZILNILS&HQWHWQW B ¥10 RYHU\BQHWZRUN @ ## 前端页面和后端接口的路径约定 3 \ : H ElpZ<]_,ë âf dúD !xL?D L R $ 3!iH±]sUä]²YG R #' ∅)ž 3 \ : H Ed2™3 Ž/šI9È $ % &0 码力 | 72 页 | 8.55 MB | 2 年前3
前终端统⼀一⽅方案Hippy-Vue 设计和实现## HIPPY 前终端统一方案 Hippy-Vue 设计和实现 ## 背景介绍 传统移动端开发模式,无法满足业务精细化运营需求,急需寻找一种高性能、跨平台、动态发布的开发解决方案。 Web Native 前终端一体化 开发效率高 开发效率低 开发效率高 支持多平台 无法跨平台 支持双平台 可动态发布 发布复杂 可动态发布 体验差 体验好 体验好 能力弱 能力强 x5 内核团队提供支持 ## 项目架构 Hippy SDK 采用三层设计,其中: - JavaScript 层:提供业务代码运行时的前端上下文环境; • Native Framework 层:负责前终端通讯与 JavaScript VM,并提供 Native 相关模块; • Portable UI 层:提供基础 UI 组件与布局计算框架,并负责渲染至目标平台;  ## 后端开发(Django+Rest Framework+MySQL): Django 负责处理 HTTP 请求和响应,以及 URL 路由的配置。它接收来自前端的 HTTP 请求,并根据 URL 将请求分发给相应的视图函数进行处理。 Rest Framework0 码力 | 61 页 | 6.84 MB | 2 年前3
企业云原生的探索与落地深圳沙龙-RacherLabs-20-11-14/小程序+容器:前端后端全链路敏捷化## 小程序 + 容器 前端后端全链路敏捷化 ——凡泰极客联合创始人杨涛 ## 移动应用开发现状 传统移动应用开发模式以及转型升级顾虑 ## 小程序发展趋势 为何小程序是当下流行且应用场景广泛的新一代技术生态 ## 移动应用如何利用小程序转型升级 通过打造小程序生态,企业的数字化创新能力将得到什么样的松绑、激活 ## 实战操作 如何基于Rancher容器云平台快速搭建小程序,扩大企业数字化系统生态0 码力 | 27 页 | 3.74 MB | 2 年前3
Keras: 基于 Python 的深度学习库安装指引 1.5 使用 TensorFlow 以外的后端 1.6 技术支持 1.7 为什么取名为 Keras? 2 为什么选择 Keras? 2.1 Keras 优先考虑开发人员的经验 2.2 Keras 被工业界和学术界广泛采用 2.3 Keras 可以轻松将模型转化为产品 2.4 Keras 支持多个后端引擎,并且不会将你锁定到一个生态系统中 2.5 Keras NASNet ..... 169 14 后端 Backend ..... 171 14.1 什么是「后端」? ..... 171 14.2 从一个后端切换到另一个后端 ..... 171 14.3 keras.json 详细配置 ..... 171 14.4 使用抽象 Keras 后端编写新代码 ..... 172 14.5 后端函数 ..... 173 15 初始化 Python 的深度学习库 ### 1.1 你恰好发现了 Keras Keras 是一个用 Python 编写的高级神经网络 API,它能够以 TensorFlow, CNTK, 或者 Theano 作为后端运行。Keras 的开发重点是支持快速的实验。能够以最小的时延把你的想法转换为实验结果,是做好研究的关键。 如果你在以下情况下需要深度学习库,请使用 Keras: - 允许简单而快速的原型设计(由于用户友好,高度模块化,可扩展性)。0 码力 | 257 页 | 1.19 MB | 2 年前3
Nacos架构&原理
已经被大量开发者和企业客户用于生产环境,本书详尽介绍了 Nacos 的架构设计、功能使用和最佳实践,推荐分布式应用的开发人员、运维人员和对该领域感兴趣的技术爱好者阅读。 ## Facebook 工程师 & CNCF 前 TOC 成员 - 李响 服务注册、发现与配置管理是构成大型分布式系统的基石。Nacos 是集成了这三种能力的现代化、开源开放的代表系统。本书系统化的介绍了 Nacos 诞生的历史背景以及其在阿里集 用户扩展性 在框架的设计中,扩展性是一个重要的设计原则。Spring、Dubbo、Ribbon 等框架都在用户扩展性上做了比较好的设计。这些框架的扩展性往往由面向接口及动态类加载等技术,来运行用户扩展约定的接口,实现用户自定义的逻辑。在 Server 的设计中,用户扩展是比较审慎的。因为用户扩展代码的引入,可能会影响原有 Server 服务的可用性,同时如果出问题,排查的难度也是比较大的。设计良好的 式。Zookeeper 和 Eureka 目前 Server 端都不支持用户扩展,一个支持用户扩展的服务发现产品是 CoreDNS。CoreDNS 整体架构就是通过插件来串联起来的,通过将插件代码以约定的方式放到 CoreDNS 工程下,重新构建就可以将插件添加到 CoreDNS 整体功能链路的一环中。 那么这样的扩展性是否是有必要的呢?举一个上文提到过的例子,假如要添加一种新的健康检查方式,连接数据库执行一条0 码力 | 326 页 | 12.83 MB | 1 年前3
PyWebIO v1.0.3 使用手册这个文档同时也提供 PDF 和 Epub 格式. ### 4.1 User's guide 如果你接触过 Web 开发,你可能对接下来描述的 PyWebIO 的用法感到不太习惯,不同于传统 Web 开发的后端实现接口、前端进行展示交互的模式,在 PyWebIO 中,所有的逻辑都通过编写 Python 代码实现。 你可以按照编写控制台程序的逻辑编写 PyWebIO 应用,只不过这里的终端变成了浏览器。通过 Flask、Tornado、Django 和 aiohttp Web 框架的集成。 与 Web 框架集成需要完成两部分配置:托管 PyWebIO 前端静态文件;暴露 PyWebIO 后端接口。这其中需要注意前端页面和后端接口的路径约定,以及前端静态文件与后端接口分开部署时因为跨域而需要的特别设置。 ## 集成方法 不同 Web 框架的集成方法如下: Tornado Flask Django aiohttp 需要在 WebSocketHandler,并将其绑定在/tool/io路径下;同时将PyWebIO的静态文件使用tornado.web.StaticFileHandler托管到/tool/(.*)路径下。启动Tornado服务器后,访问http://localhost/tool/即可打开PyWebIO应用 注意:当使用 Tornado 后端时,PyWebIO 使用 WebSocket 协议和浏览器进行通讯,如果你的0 码力 | 94 页 | 1.71 MB | 2 年前5
PyWebIO v1.0.3 使用手册com/wang0618/pywebio/issues]. ## User's guide 如果你接触过Web开发,你可能对接下来描述的PyWebIO的用法感到不太习惯,不同于传统Web开发的后端实现接口、前端进行展示交互的模式,在PyWebIO中,所有的逻辑都通过编写Python代码实现。 你可以按照编写控制台程序的逻辑编写PyWebIO应用,只不过这里的终端变成了浏览器。通过PyWeb ask、Tornado、Django和aiohttp Web框架的集成。 与Web框架集成需要完成两部分配置:托管PyWebIO前端静态文件;暴露PyWebIO后端接口。这其中需要注意前端页面和后端接口的路径约定,以及前端静态文件与后端接口分开部署时因为跨域而需要的特别设置。 ## 集成方法 不同Web框架的集成方法如下: 需要在Tornado应用中引入两个 RequestHandler,一个 /tool/io 路径下;同时将 PyWebIO 的静态文件使用 tornado.web.StaticFileHandler [https://www.tornadoweb.org/en/stable/web.html? highlight=StaticFileHandler#tornado.web.StaticFileHandler] 托管到 /tool/(.*) 路径下。启动Tornado服务器后,访问0 码力 | 106 页 | 7.34 MB | 2 年前3
PyWebIO v1.2.2 使用手册com/wang0618/pywebio/issues]. ## User's guide 如果你接触过Web开发,你可能对接下来描述的PyWebIO的用法感到不太习惯,不同于传统Web开发的后端实现接口、前端进行展示交互的模式,在PyWebIO中,所有的逻辑都通过编写Python代码实现。 你可以按照编写控制台程序的逻辑编写PyWebIO应用,只不过这里的终端变成了浏览器。通过PyWeb deploy(). 可以从一个路径中部署 PyWebIO 应用。位于该路径下的 python 文件需要包含名字为 main 的 PyWebIO 任务函数才能被视为 PyWebIO 应用程序。服务端会根据用户访问的 URL 来确定需要加载的文件并从中读取 PyWebIO 应用来运行。 例如,给定如下文件结构: A a.py B b.py c.py 如果使用以上路径调用 path_deploy() start() 以上代码调用 webio_handler(task_func) 来获得PyWebIO和浏览器进行通讯的Tornado WebSocketHandler ## 注意 当使用Tornado后端时,PyWebIO使用WebSocket协议和浏览器进行通讯,如果你的Tornado应用处在反向代理(比如Nginx)之后,可能需要特别配置反向代理来支持WebSocket协议,这里有一个Nginx配置WebSocket的例子。0 码力 | 119 页 | 7.41 MB | 2 年前3
共 1000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 100













