00:00
好,同学们,通过上一讲,我们已经成功的在我们的8001前面做了一些配置和替换,只要符合路由转发规则,9527可以。成功的通过9527访问到我们的8001,那这是我们的访问说明来9527,这是我们的8001,大家请看,那么相当于说9527。套在最外面,现在按照我们的路由规则,第一个路由有没有通过9527,有没有可能访问到一个地址叫8001可以,那么下面predict断言,我判断8001下面应该有这么一个payment get。星星这样一个通配符的地址,那么这个是不就是我们的8001的payment controller下面这样一个地址匹配,如果路由上predict为访问成功为false访问失败,OK,就这么简单,8001外面套了个9527,然后根据我们的路由和断言规则找到并且找到判断为错,直接获得访问地址,可以进行端口的适配,那么慢慢的就是不是不再暴露我们真实的微服务的8001的真实端口转成统一网关9527?
01:14
好,那同学们。完成这个以后,我们再来回到我们这get OK了,那么一样,我们第二个路由,注意这个名字啊,ID就像数据库的主件一样,你随便叫什么都成啊,那么尽量不要重复就行了,那么呢,我们的LBO不OK呢?那么payment LB,那么同学们请看我们在这儿,我们LB大家请看8001能够得到我们的这个。端口说明我们九百二七现在找的是8001,没问题吧,那它的业务逻辑也非常非常的简单,那么可以看一下我们的LB是payment LB,有这个地址吧,那么跟我们的这个配置payment LB,那么是不是吻合,就返回一个端口号,OK,所以说通过到这我们的。
02:03
路由和断言配置就给大家介绍到这儿,那接下来我们来说一下它跌位的配置功能还是比较强大。第一种支持我们这样的配置啊,那么兄弟们这个不用去记对不对,你扎就行了,第二种你觉得要是这个配置文件越来越庞大,那么他也给你提供了第二种方法。这是。亚母配置啊,第二种方法硬编码好,那么看看首先位的网关配置呢?有两种方法,网关是通过你网关我可以找到后面的真实服务对吧?过来第一种在配置文件要么中配置,第二种代码中注入路由定位的一个病好,那么下面这一节我们就要讲的是如何用编码方式来进行我们网关的路由配置。好,首先我们来看一个官网的案例。
03:01
来怎么写这个代码就这么写。你告诉我。恶不恶心?我给你抓出来。Get配置的一个Java代码,你看吧,倒不是这点拉姆达表达式,这函数是编程接口,他自己都写一些省略号,我第一次看是懵逼的,那么过来吧,我们呢,选择一个百度的国内新闻网址,需要什么上外网哈,那么大家看我现在呢,NEWS100度点com国内,那么来同学们我随便粘一个。能访问到吧,百度新闻的国内新闻,那么有国际新闻,有什么军事新闻,这个不再废话,那么假设我现在直接访问的,相当于说我们是不是通过这个外网过来了,就跟我们平时上网一样,那么下面我们想试试啊,就以外网更真实的案例,我选了百度的这个国内和国际新闻啊,这个随便你啊,假设叫游戏,你自己下个game,叫国内就叫国内,OK,这个是一个呃栏目,随便你选,那么我们现在想干一件什么事呢?我们自己按照官网的案例,我们自己来写一个百度新闻,我们的业务要求通过9527的这个网关访问到外网的百度性能地址,那么。
04:18
相当于说我们在9527。那么不在样本里面配置的全代码手写就跟这个官网证一样,听到那么下面呢,我们要实现我们的一个配置类,好,那么因为不停的去写的话,Getway会不停的重启,我先把getway关闭,那我们来吧,跑到这。我们那直。那么我们新建一个package啊,不应该不是package啊,应该是。嗯,我们直接就过来进我们的类,那么下面呢,就是看点。Getway can,好,同学们只要是con的话,先养成习惯,那么这个时候是不是?
05:04
先要有这些动作方法。后面再说,那也就是说我们现在呢,就是不再用这个亚模配置了哈,用我们的编码,那么这个编码呢,这个呢是官网上写的一个案例,很模糊,那么打开了我们的这个官网,找到请看它有一个对象叫路由定位器,那么是不是先要转发路由,然后再构建路由,你看这是路由吧,过滤器。等等等等,最后是构建,也就是说如果你学配置麻烦,你就用编码,不过我可以保证,等我写完以后,你肯定会说我们还是用编码这种方式呢,就算了,我们还是用配置的方式吧,好,那么至少我们这先得到一个路由loc,那么这块呢,照着官网写哈,那么这个路由的断言工厂啊什么等等,有兴趣你翻一下,没兴趣你照着杨哥的DEMO来写,那么public。那么路由lo,那么这块呢,是customer。
06:01
我们自定义的这么说没问题吧,那么你这儿呢,它有一个对象叫。Build,那么这个也是可以找到的哈,那么路由构建器,那么路由构建器了以后由它。我们的这个路由location build,那么我们直接过来,它这有个。这个动作,那我们可以先获得我们的对象啊,省得他整天报错,我先反馈一个,那先不报错,那么这块它会才会有这个出来,那么搁到这儿,那么大家请看。也就是说现在我先构成路由S啊,这个就有点相当于我们的这个S啊,类似可以参考着来理解啊,那么这样我们就要完成了,就是通过路由器访问百度的网站,那么这个路由S啊它呢。路遥,那么这一块,那么兄弟们东西就多了那么两个。
07:01
这个能看得懂吧,一个是ID,一个是我们的一个function函数,没问题吧,应用型函数,那么这个ID。兄弟们随便。整一个,那么就是pass,比方说叫。路遥,然后这块就艾特。硅谷,那么假设第一个后续我们这个教这一波没问题吧,那么一我就不审写了,这个ID相当于我们的这个自己命名的一个IDOK,那么接下来那么写什么呢?这个就是我们的R,那么由于我们是function,听懂了吧,应用性函数有输入有返回,那么呢,拉姆达表达式。斜死右箭头走起来,那么r.pass这一波没问题吧,那么我们这个pass呢,是反问什么呢?我们这个就是我们的国内。同学们这一波能不能理解什么叫国内啊,就是这个啊,我现在是不是点国内,它后面屁股后面的这个链接是不是叫国内这一波能跟上好。
08:04
你就把这个网址拷贝吧,那后面反正也用得到。过了这那么完了以后,我的路径是映射国内点uri,那么来吧,那么同学们这个就是我们的百度的这个地址国内。好,那么这一块同学们能不能看得懂,能不能跟上,我先把它写完啊,那么在这块完了以后,我们再。六道构建。最终我们要把我们的路由S啊,多个路由地址返回,那么返回给我们的前面路由S点这一块就是我们的build的方法,那么请同学们看一下这一块能不能看得懂,我写了一个什么样的东东,好,我先暂停一下录屏,那么同学们不要懵逼啊,我再讲一下这个路由现在它是不是传两个方法,一个叫其中ID,一个是传我们的JAVA8里面的新特性,是不是Java u function function那个。
09:07
四大函数。应用型的,所谓的应用型的函数是不是要有输入和输出啊,那么现在的话呢,我们这块输入和输出啊,那么相当于说做的一个映射规矩,配合着我们这儿来说的话,就是这个地址啊,然后映射predict这么一个地址啊,那么兄弟们他的意思就是说,你现在访问local host 9527国内将会转发到我们的news,点百度点com国内的这个新闻外网的这个链接地址里面。能跟上好,那么同学们这块构建完成以后,我们把我们的9527启动,那么这个时候9527网关启动来验证一下好。那么在这块我们的配置实际上实现了就是配置一个ID为路由内幕的一个路由规则,当访问这个地址的时候,国内我们会把。
10:04
我们的网网关做一个转发路由转发,转发到这么一个地址,访问到我们的百度的国内新闻,好,那么同学们我们呢,看一眼,现在我们的9527已经start成功启动,好啊,这个是我们直接访问,那么现在不废话。大家请看这个是不是我们的LOCAL9527啊,我们是不是加了一堆前缀,你现在一回车,同学们请看,是不是可以从我们的957跳转到我们的百度,凭什么?因为我们做了新的路由规则,ID叫这个,这个的意思就是我们的local host9527。然后国内可以直接跳转到我们的这个里面,这么说能跟上,那么好,同学们举一反三,杨哥做了国内,你们能不能做国际当然别没有配的,是不是会报错啊,9527什么军事啊就没有,那么这个是不是国际也是报错,能跟上,那么怎么做呢?
11:03
笔记给大家准备好,还是这样一个规则。路由你看路由S啊,那么这个路由S是不是就是我们配置里面的这个路由S啊,那么ID只要你取一个A。不重名的ID相当于数据库的主件。然后uri和我们的断言,只要。端口地址匹配就能够映射。那么。杨哥带你们做了一个。国内新闻你们能不能自已去做一个国际新闻会了吧?OK,那么这个就是我们的一个用编码的方式来实现我们的getway网关进行路由映射配置的方法,那么同学们你们自己觉得配置文件里面配置方便还是代码注入用这个对象做的方便,那么看你自己喜欢,我个人是偏向于样M配置好,那么同学们我们的getway的网关路由的两种配置啊,样M和编码,我就为大家介绍到这。
我来说两句