一、Http动态负载均衡 什么是动态负载均衡 动态负载均衡实现方案 常用服务器注册与发现框架 二、Consul快速入门 Consul环境搭建 三、nginx-upsync-module nginx-upsync-module简介 nginx-upsync-module安装及配置整个流程 一、Http动态负载均衡什么是动态负载均衡传统的负载均衡,如果Upstream参数发生变化,每次都需要重新
1、rpc基本介绍RPC ( Remote Procedure Call) -远程过程调用,是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一台计算机的子程序,两个或多个应用程序分布不同的服务器上,而他们之间的调用就像调用本地方法一样常见的 RPC框架有:比较知名的如阿里的Dubbo、google的gRPC、Go语言的rpex、Apache的thrift,Spring的Spring C
转载 2024-10-05 16:59:45
51阅读
1. 什么是负载均衡?负载均衡是一种基础的网络服务,它的核心原理是按照指定的负载均衡算法,将请求分配到后端服务集群上,从而为系统提供并行处理高可用的能力。提到负载均衡,你可能想到nginx。对于负载均衡,一般分为服务端负载均衡客户端负载均衡服务端负载均衡:在消费者和服务提供方中间使用独立的代理方式进行负载,有硬件的负载均衡器,比如 F5,也有软件,比如 Nginx。客户端负载均衡:所谓客户端负
文章目录前言环境nginx模式nginx的http模式反向代理模式nginx基本使用下载安装nginx基本命令nginx配置文件Http配置文件nginx与Django部署静态文件转发django 反向代理django 代理 runserver代理 uwsgi在Linux当中 前言nginx 是啥我想都不要多说了,那么这里简单说说为什么要用这玩意,单单从django项目来说,那就是如果不使用ng
文章目录问题描述解决方案sub_filter方案使用重定向单独域名访问 问题描述现在的企业服务,往往不是单体的,同时可能涉及中间件的访问如dubbo、solr、mq等。对于中间件的监控页面访问,如果直接暴露在公网,肯定这安全。需发对中间件访问进行安全加固,方法主要有: (1)限制使用IP白名单访问。 (2)安全密码访问,不使用简单密码,对于没有密码的,可以使用basic认证,强密码访问。 (3)
与很多框架一样,Dubbo也存在拦截(过滤)机制,可以通过该机制在执行目标程序前后执行我们指定的代码。Dubbo中Filter只是Dubbo提供的可自定义扩展的扩展点之一。通过该扩展点地理解,可以触类旁通地理解其他类似自激活的扩展点。  那么什么是自激活?如果一个扩展点有多个实现,那么最后究竟使用哪个实现呢?根据不同的条件参数来动态选择可以使用的扩展时(可能需要同时使用多个扩展),就会使用到自激活
转载 2024-02-18 20:09:46
399阅读
语法规则location [=||*|^~] /uri/ { … }模式含义location = /uri= 表示精确匹配,只有完全匹配上才能生效location ^~ /uri^~ 开头对URL路径进行前缀匹配,并且在正则之前。location ~ pattern开头表示区分大小写的正则匹配location ~* pattern开头表示不区分大小写的正则匹配location /uri不带任何修饰
Nginx+uWSGI+Djangoi开发环境搭建Django简介,环境搭建uWSGI简介,安装与配置Nginx安装与配置Nginx+uWSGI+Django原理解析 1、django简介,环境搭建django简介Django 是用Python开发的一个免费开源的Web框架,可以用于快速搭建高性能,优雅的网站!Django 中提供了开发网站经常用到的模块,常见的代码都为你写好了,通过减少
转载 2024-08-16 18:29:31
36阅读
前言dubbo应该是现阶段最流行的rpc框架之一。其中spi的机制贯穿着dubbo的整个架构。SPISPI 全称为 Service Provider Interface,是一种服务发现机制。SPI 的本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。在 Dubbo 中,SPI 是一个非常重要的模块。基于 SPI,我们可以很容易
转载 2024-10-14 07:06:55
30阅读
一、前言环境:idea、jdk 1.8、tomcat 8、mysql 5.7准备:zookeeper安装完成、dubbo-admin管理平台搭建完成目的:dubbo入门,学会简单分布式项目搭建。 二、项目创建及配置整体目录结构如下:1. 创建DubboDemo(pom) 父工程使用maven-archetype-site骨架pom.xml配置依赖,导入公共依赖jar包(子工程引用时无需写版本号)&
dubboSPI(Service Provider Interface)本质是将接口实现类的全限定名配置在文件中,并由服务加载器读取配置文件,加载实现类。这样可以在运行时,动态为接口替换实现类。在Java中SPI是被用来设计给服务提供商做插件使用的。基于策略模式 来实现动态加载的机制 。我们在程序只定义一个接口,具体的实现交个不同的服务提供者;在程序启动的时候,读取配置文件,由配置确定要调用哪一个
理解dubbofilter的执行顺序dubbo filter执行顺序可以看下这篇。背景在处理网关泛化调用的异常时,需要在provider端将可读异常的message返回给调用方,方便展示。 现有工程中有处理异常的filter:@Activate(group = Constants.PROVIDER, order=Integer.MIN_VALUE) @Slf4j public class E
转载 2024-03-31 19:28:32
196阅读
文章目录一、前言二、Filter 分类三、代码解析1. CacheFilter2. ValidationFilter3. EchoFilter4. GenericFilter & GenericImplFilter5. TokenFilter6. AccessLogFilter7. ActiveLimitFilter & ExecuteLimitFilter7.1 ActiveL
转载 2024-08-05 21:16:41
105阅读
ListenerExporterListener: dubbo在服务暴露(exporter)以及销毁暴露(unexporter)服务的过程中提供了回调窗口,供用户做业务处理。ProtocolListenerWrapper在暴露过程中构建了监听器链public class ProtocolListenerWrapper implements Protocol { public <T&g
背景dubbo 项目需要配置日志信息,显示请求路径、入参、返回值。本来已经用spring的AoP实现了消费者端的日志,但是提供者处不知道如何弄。后来又查到dubbo有自己的方式,通过filter 的方式配置日志(有贴子说dubbo filter 的方式spring aop 方式冲突,我没有试过)。原生的总是最适合的,所以采用了dubbo的filter 方式。dubbo配置filterconsum
转载 2024-04-05 10:57:15
217阅读
Dubbo 是一个分布式服务框架,致力于提供高性能透明化的RPC远程服务调用方案,以及SOA服务治理方案。多余的介绍就不解释了,这里讲一个dubbo最基本的使用方法,发布服务暴露接口接收服务,非常简单的;要运行dubbo,需要安装zookeeper作为注册中心,用来注册服务进行负载均衡,首先我们来安装一个zookeeper,我使用的linux是centOS的,这里装的zookeeper是3.
转载 2024-03-30 09:10:10
43阅读
什么是CDNCDN全称是Content Delivery Network,即内容分发网络,也称为内容传送网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度命中率。简单理解了,CDN是利用缓存技术,解决如何将数据快速可靠从源站传递到用户的问题。用户获取数据时,不
转载 2024-05-15 05:04:24
116阅读
        刚开始使用Dubbo的人,可能对Dubbo的第一印象就是它是一个RPC框架,当然,所有的分布式框架都少不了相互通信的过程,何况Dubbo的任务就是帮助分布式业务系统完成服务的通讯、负载、注册、发现监控等功能。不得不承认,RPC是Dubbo提供服务的核心流程,为了兼容多种使用场景,Dubbo显然需要提供多种RPC方式(协议).&nb
此文章通过3个例子表示DOM方式解析XML的用法。 通过DOM解析XML必须要写的3行代码.step 1: 获得dom解析器工厂(工作的作用是用于创建具体的解析器)step 2:获得具体的dom解析器step 3: 解析一个xml文档,获得Document对象(根结点) 第一个例子通过简单的名称,取出对应元素的值。例子1:package com.text.tool; impo
转载 8月前
58阅读
前言Dubbo的Filter实现入口是在ProtocolFilterWrapper,因为ProtocolFilterWrapper是Protocol的包装类,所以会在加载的Extension的时候被自动包装进来,实现在ProtocolFilterWrapper.buildInvokerChain方法源码解析private static <T> Invoker<T> buil
  • 1
  • 2
  • 3
  • 4
  • 5