mesh

架构师成长系列 | 从 2019 到 2020,Apache Dubbo 年度回顾与总结

我们两清 提交于 2020-03-03 15:27:49
导读 :Apache Dubbo 是一款开源的 RPC 框架,其提供了简单易用、高性能的 RPC 能力、灵活可控的扩展、强大的服务治理,目前已有 Java、Go、JS、Python 等多个语言支持;并且已经悄然衍进为 Cloud Native 基础设施。这一切成就都离不开 Dubbo 社区的建设,本文将由 Apache Dubbo PMC 刘军来介绍 Dubbo 社区在过去的一年取得的成绩及未来 Dubbo 社区的发展新规划。 非常感谢大家对 Dubbo 社区的关注,通过这篇文章我们将: 总结过去一年 Dubbo 社区取得的成绩,包括社区和框架演进两个方面; 展望未来 Dubbo 社区和框架的新的规划(roadmap)。 社区建设是推动 Dubbo 健康持续发展的一个非常重要的环节,我们需要与社区保持良性的互动、有活跃的贡献者、有积极的富有建设性的讨论,而整个 Dubbo 社区过去一年在这方面都做的不错;在框架演进上,我们主要发布了 2.7.0 - 2.7.5 共 6 个特性版本,功能层面涵盖编程模型、协议、服务治理、性能优化等多个方面;除了已经发布的功能外,我们在 Dubbo 3.0 协议、服务自省和云原生等方向上也做了深入的探索,对这些方向的支持将是 Dubbo 接下来的重要工作方向,希望能通过这篇文章将其中更详细的思考和计划同步给大家。 社区回顾 回顾 Dubbo

NGUI 渲染流程深入研究 (UIDrawCall UIGeometry UIPanel UIWidget)

喜你入骨 提交于 2020-03-02 21:15:16
上图是一个简要的 NGUI 的图形工作流程, UIG eometry被UIWidget实例化之后,通过 UIW idget的子类,也就是UISprit,UILabel等,在 OnFill() 函数里算出所需的Geometry缓存(顶点数, UV , Color ,法线,切线 )。PS:之所以要生成这些数据,是为了之后生成mesh来渲染 而 UIP anel,通过遍历自己子类下所有的 UIW idget组件(已经按深度排序),先创建一个 UID rawCall,然后把该Widget的material,texture,shader对象以及Geometry的缓存传给UIDrawCall,如此反复循环搜索该UIPanel下的每一个Widget,只要是material,texture,shader都和上一个 Widget 一样的 Widget,他们的缓存都传给同一个 UID rawCall,直到循环结束或者碰到一个材质球,贴图,shader对象任一不相同的Widget。当遇到这种 W idget,循环会再创建一个新的 UID rawCall,然后传递material,texture,shader,缓存,如此这般,直到循环完全结束。 每次有新的 UID rawCall产生,UIPanel就会调用上一个 UID rawCall的UpdateGeometry()函数,来创建渲染所需的对象

Navigation Mesh与Line-of-Sight Test

匆匆过客 提交于 2020-03-01 20:38:50
上图是一个由任意凸多边形构成的导航网格,白线包围区域代表着不可进入的障碍区域,红线包围区域则可以进入或穿越。网格中所有多边形的顶点存储次序均为顺时钟序。在下面的讨论中,我们的运算一概采用左手系进行。 假设当前所处的位置为p0,视线方向矢量为n0,p0位于多边形A中,我们知道每一条边的两侧的多边形的编号,现在的问题是:如果求得该视线途经了哪些多边形?与这些多边形的哪些边相交于何处(即Way point)?该视线终结于哪条边的何处? 首先让我们来解决一个子问题,即判断射线r与某凸多边形p之间的关系。不难想象,r只可能与p不相交、相交于1点或2点(只有穿出、或先射入后穿出)。这里我们最关心的是:(1) r究竟与p相交否?(2) 如果相交,那么r穿出p时,其交点在哪条边上?在哪里? 以A和射线r=(p0,n0)为例,先来判断A与r是否相交,这个太容易了,只需判断A有没有边与r相交即可。遍历A的每一条边e,然后得到每一条边的起点和终点(注意,时刻牢记顶点顺序是顺时钟的)。然后,分别获得起点矢量from和终点矢量to,然后计算test_a=from×n0和test_b=to×n0,再来检查test_a和test_b的Z分量符号:如果相同,则from、to均位于n0的同一侧,e与r不相交;如果test_a.Z>0且test_b.Z<0,则e为射线r在A中的穿出线;如果test_a.Z

从零开始写一个武侠冒险游戏-6-用GPU提升性能(2)

亡梦爱人 提交于 2020-03-01 09:56:16
从零开始写一个武侠冒险游戏-6-用GPU提升性能(2) 概述 用 mesh 改写地图类, 带来的一大好处是控制逻辑可以变得非常简单, 作为一个地图类, 最基本的控制逻辑就是显示哪一部分和地图如何卷动, 而这两点可以通过 mesh 的纹理贴图非常容易地解决, 因为在 OpenGL ES 2.0/3.0 中, 可以通过设置纹理坐标来决定如何在地图上显示纹理贴图, 而这些控制逻辑如果不用 mesh , 自己去写, 就有些繁琐了, 不信你可以试试. 另外我们之前实现的地图类的地图绘制是极其简陋的, 比如地面就是一些单色的矩形块, 本章我们将会把很小的纹理贴图素材拼接起来生成更具表现力和真实感的地面. 基于 OpenGL ES 2.0/3.0 的纹理贴图特性, 我们既可以使用一块很小的纹理, 然后用拼图的方式把大屏幕铺满, 也可以使用一块很大的超出屏幕范围的图片做纹理, 然后选择其中一个尺寸跟屏幕尺寸相当的区域来显示. 在本章中, 这两种方法都会用到, 前者用来生成一张大大的地图, 后者用来显示这块大地图的局部区域. 用 mesh 改写地图类 整体思路 地图类的处理相对来说复杂一些, 正如我们在 概述 中提到的, 要在两个层面使用 mesh , 第一层是用小素材纹理通过拼图的方式生成一张超过屏幕尺寸的大地图图片, 第二层是把这张大地图图片作为纹理素材,

架构师成长系列 | 从 2019 到 2020,Apache Dubbo 年度回顾与总结

馋奶兔 提交于 2020-02-28 18:42:02
作者 | 刘军(陆龟)Apache Dubbo PMC 本文整理自架构师成长系列 2 月 18 日直播课程。 关注“阿里巴巴云原生”公众号,回复 “218” ,即可获取对应直播回放链接及 PPT 下载链接。 导读 :Apache Dubbo 是一款开源的 RPC 框架,其提供了简单易用、高性能的 RPC 能力、灵活可控的扩展、强大的服务治理,目前已有 Java、Go、JS、Python 等多个语言支持;并且已经悄然衍进为 Cloud Native 基础设施。这一切成就都离不开 Dubbo 社区的建设,本文将由 Apache Dubbo PMC 刘军来介绍 Dubbo 社区在过去的一年取得的成绩及未来 Dubbo 社区的发展新规划。 非常感谢大家对 Dubbo 社区的关注,通过这篇文章我们将: 总结过去一年 Dubbo 社区取得的成绩,包括社区和框架演进两个方面; 展望未来 Dubbo 社区和框架的新的规划(roadmap)。 社区建设是推动 Dubbo 健康持续发展的一个非常重要的环节,我们需要与社区保持良性的互动、有活跃的贡献者、有积极的富有建设性的讨论,而整个 Dubbo 社区过去一年在这方面都做的不错;在框架演进上,我们主要发布了 2.7.0 - 2.7.5 共 6 个特性版本,功能层面涵盖编程模型、协议、服务治理、性能优化等多个方面;除了已经发布的功能外,我们在 Dubbo

架构师成长系列 | 从 2019 到 2020,Apache Dubbo 年度回顾与总结

夙愿已清 提交于 2020-02-28 14:10:03
作者 | 刘军(陆龟)Apache Dubbo PMC 本文整理自架构师成长系列 2 月 18 日直播课程。 关注“阿里巴巴云原生”公众号,回复 “218” ,即可获取对应直播回放链接及 PPT 下载链接。 导读 :Apache Dubbo 是一款开源的 RPC 框架,其提供了简单易用、高性能的 RPC 能力、灵活可控的扩展、强大的服务治理,目前已有 Java、Go、JS、Python 等多个语言支持;并且已经悄然衍进为 Cloud Native 基础设施。这一切成就都离不开 Dubbo 社区的建设,本文将由 Apache Dubbo PMC 刘军来介绍 Dubbo 社区在过去的一年取得的成绩及未来 Dubbo 社区的发展新规划。 非常感谢大家对 Dubbo 社区的关注,通过这篇文章我们将: 总结过去一年 Dubbo 社区取得的成绩,包括社区和框架演进两个方面; 展望未来 Dubbo 社区和框架的新的规划(roadmap)。 社区建设是推动 Dubbo 健康持续发展的一个非常重要的环节,我们需要与社区保持良性的互动、有活跃的贡献者、有积极的富有建设性的讨论,而整个 Dubbo 社区过去一年在这方面都做的不错;在框架演进上,我们主要发布了 2.7.0 - 2.7.5 共 6 个特性版本,功能层面涵盖编程模型、协议、服务治理、性能优化等多个方面;除了已经发布的功能外,我们在 Dubbo

蚂蚁金服 API Gateway Mesh 思考与实践

故事扮演 提交于 2020-02-28 09:34:45
本文整理自蚂蚁金服高级技术专家贾岛在 12 月 28 日 Service Mesh Meetup 杭州站现场分享。 MOSN 完成孵化, 启用独立 Group 2020.2019.12.18,MOSN 项目负责人、蚂蚁金服应用网络组负责人涵畅宣布 MOSN 完成从 SOFAStack 的孵化,将启用独立 Group 进行后续运作,欢迎大家共同建设社区。 MOSN 是一款使用 Go 语言开发的网络代理软件,作为云原生的网络数据平面,旨在为服务提供多协议,模块化,智能化,安全的代理能力。MOSN 是 Modular Open Smart Network-proxy 的简称,可以与任何支持 xDS API 的 Service Mesh 集成,亦可以作为独立的四、七层负载均衡,API Gateway,云原生 Ingress 等使用。 项目地址: https://github.com/mosn/mosn 导语 在 Service Mesh 微服务架构中,我们常常会听到东西流量和南北流量两个术语。蚂蚁金服开源的 Service Mesh Sidecar:MOSN(Modular Observable Smart Network)已经多次与大家见面交流,以往的议题重点在东西流量的服务发现与路由,那么蚂蚁金服在南北流量上的思考是怎样的? 本次分享,将从蚂蚁金服 API 网关发展历程来看,Mesh

前端也需要了解的 API 网关

时间秒杀一切 提交于 2020-02-28 07:00:59
网关(Gateway),简单地说就是请求的入口。如果你接触过微服务,应该经常听到“网关”这个词。 虽然 API 网关并不是微服务所独有的,但它的流行是在微服务兴起之后才开始的。那么到底什么是 API 网关呢? 基本概念 API 网关是位于客户端和它所依赖的服务之间的一层。有时称为“反向代理”,它们充当从客户端到其服务的单一入口点。 API 网关就像一座大楼的服务台:转接电话,访客登记,快递收发等。 如果你曾经用过第三方 API,你可能就是在跟网关通信,而网关又与服务的内部API 通信。 网关的好处后面会讨论,主要是让服务提供方向外部公开 API 的一部分,并集中处理版本管理、安全、本地化等工作。 API 网关最常见的用途是请求路由。大致过程如下: 客户端向网关发起请求 网关处理这些请求并转发到相关服务 服务向网关发送响应 网关处理响应并发送到客户端 这里的 客户端 可以是各种身份。上面流程提到的原始实现中,客户端是 API 的消费者,但是 API 网关也可以向客户端暴露内部 API。对许多 web 应用来说,客户端就是单页应用(SPA),但也可以是web应用的后端服务器、手机原生应用,甚至是智能电视、媒体播放器和 IoT 设备等。 服务 通常是你的应用控制的内部服务,比如数据库或微服务。网关也可以位于客户端和第三方 API 之间。这样你的用户就可以用统一的方式访问第三方数据了。

在一起 10 年了,这封信你一定要收下

╄→гoц情女王★ 提交于 2020-02-28 02:39:51
回顾过去 10 年,感谢有你一路同行。 “ 阿里巴巴云原生 关注微服务、Serverless、容器、Service Mesh 等技术领域、聚焦云原生流行技术趋势、云原生大规模的落地实践,做最懂云原生开发者的技术圈。” 来源: oschina 链接: https://my.oschina.net/u/3874284/blog/3158484

直播报名 | Service Mesh技术实践分享

ⅰ亾dé卋堺 提交于 2020-02-27 21:18:24
近年来,云原生(Cloud Native)逐渐成为一个技术领域内的流行语,热度居高不下。企业正在加速拥抱云原生架构,以此缩短产品发布周期、敏捷响应市场需求,继而从云计算服务中提炼新的价值和技术创新。 随着云原生热度的提高,Service Mesh 技术也因此受到越来越多开发者关注。为了帮助开发者深入地了解Service Mesh 技术,邀请到了百度高级研发工程师罗广明与大家分享《走进微服务新时代:服务网格》。 直播时间: 第一场:2月27日 走进微服务新时代:服务网格 第二场:3月9日 Service Mesh在百度网盘数万后端的实践落地 分享形式: 视频直播+社群交流 直播地址 : http://abcxueyuan.cloud.baidu.com/#/live_detail?liveId=162&linkToken=6Z0YH 获取方式: 关注“百度开发者中心”微信公众号,获取更多直播信息。 如果你对Service Mesh技术感兴趣,想深入了解并尽快上手学习Service Mesh技术。千万不要错过本期视频直播喔。 来源: oschina 链接: https://my.oschina.net/u/4299156/blog/3175582