GVKun编程网logo

keycloak apache服务器configuration与“混合内容”的问题

15

最近很多小伙伴都在问keycloakapache服务器configuration与“混合内容”的问题这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展AH01630:客户端被服务器c

最近很多小伙伴都在问keycloak apache服务器configuration与“混合内容”的问题这两个问题,那么本篇文章就来给大家详细解答一下,同时本文还将给你拓展AH01630:客户端被服务器configurationApache拒绝、Apache solrconfiguration与tomcat 6.0、keycloak(Nginx)的反向代理configuration、org.apache.commons.configuration.AbstractConfiguration的实例源码等相关知识,下面开始了哦!

本文目录一览:

keycloak apache服务器configuration与“混合内容”的问题

keycloak apache服务器configuration与“混合内容”的问题

configuration我的apache服务器后面的keycloak有问题,

混合内容: https ://dev.mydomain.com/auth/admin/master/console/上的页面通过HTTPS加载,但请求了一个不安全的脚本“ http://dev.mydomain.com/auth/resources /1.7.0.final/admin/keycloak/js/controllers/groups.js ''。 此请求已被阻止; 内容必须通过HTTPS提供。

我的apacheconfiguration是,

ServerName dev.mydomain.com ServerAdmin dev@mydomain.com SSLEngine on SSLCertificateFile /opt/mydomain/domains/dev.mydomain.com/apache/dev.mydomain.com.crt SSLCertificateKeyFile /opt/mydomain/domains/dev.mydomain.com/apache/dev.mydomain.com.key SSLCertificateChainFile /opt/mydomain/domains/dev.mydomain.com/apache/dev.mydomain.com.ca-bundle DocumentRoot /opt/mydomain/domains/dev.mydomain.com/apache/htdocs <Directory /opt/mydomain/domains/dev.mydomain.com/apache/htdocs> Options Indexes FollowSymLinks AllowOverride None Order allow,deny Allow from all Require all granted </Directory> ProxyRequests Off ProxyPreserveHost On RequestHeader set X-Forwarded-Proto "https" RequestHeader set X-Forwarded-Port "443" <Proxy https://dev.mydomain.com/* > Order deny,allow Deny from all Allow from all </Proxy> ProxyPass /auth http://localhost:10082/auth nocanon ProxyPassReverse /auth http://localhost:10082/auth

任何想法有什么不对?

Nginx的proxy_cache_key $ request_body是为大的请求主体

以编程方式将节点添加到像Haproxy一样的负载均衡器?

Nginx反向代理:如何实现?

Nginx作为反向代理

避免Nginx转义proxy_pass上的查询参数

Nginx反向代理安装程序在执行CORS请求时不会保留会话标识

需要帮助build立:Apache反向代理

在Nginx上redirect时出现502错误的网关

ProxyHTML重写URL

Apache端口转发

您还需要更新Wildfly配置,如反向代理上的启用SSL – >配置WildFly所述

如果您查找Wildfly CLI配置,请查看此处 :

$ jboss-cli.sh -standalone --file=batch.cli # batch.cli embed-server --std-out=echo batch /subsystem=undertow/server=default-server/http-listener=default:write-attribute(name=proxy-address-forwarding,value=true) /subsystem=undertow/server=default-server/http-listener=default:write-attribute(name=redirect-socket,value=proxy-https) /socket-binding-group=standard-sockets/socket-binding=proxy-https:add(port=443) run-batch stop-embedded-server

总结

以上是小编为你收集整理的keycloak apache服务器configuration与“混合内容”的问题全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

AH01630:客户端被服务器configurationApache拒绝

AH01630:客户端被服务器configurationApache拒绝

尝试通过浏览器访问本地主机时出现此错误。

403禁止

我使用Ubuntu 14.04 LTS

这是我的configuration文件:

没有Last 标志的一系列重写

如果某个urlvariables存在或者包含一个使用htaccess的不需要的值,如何将站点redirect到403

我如何得到mod_rewrite在Heroku上工作?

ForceType / htaccess文件扩展名的问题 – 扩展名的文件?

htaccess 301redirect与查询

等/ apache2.conf

#这是主要的Apache服务器configuration文件。 它包含了

#configuration指令,给服务器的指示。

有关详细信息,请参见http://httpd.apache.org/docs/2.4/

#关于Debian特定的指令和/usr/share/doc/apache2/README.Debian

#提示。

#Debian中Apache 2configuration的工作摘要:

#Debian中的Apache 2 Web服务器configuration与以前完全不同

#上游build议的方式来configurationWeb服务器。 这是因为Debian的A

#默认的Apache2安装尝试添加和删除模块,

#虚拟主机,以及额外的configuration指令尽可能灵活,

#为了使自动化的变化和pipe理服务器一样简单

#可能。

它被分成几个文件,形成configuration层次概述

#位于/ etc / apache2 /目录下:

#/ etc / apache2 /

#| - apache2.conf

#| ` - ports.conf

#| - mods启用

#| | - * .load

#| ` - * .conf

#| - 启用conf

#| ` - * .conf

#` - 启用网站

#` - * .conf

#* apache2.conf是主要的configuration文件(这个文件)。 它把碎片

#启动时包含所有剩余的configuration文件

# networking服务器。

#* ports.conf始终包含在主configuration文件中。 它是

#应该确定监听端口的传入连接,可以

#随时定制。

#* mods-enabled /,conf-enabled /和sites-enabled /

#目录包含pipe理模块的特定configuration片段,

#全局configuration片段或虚拟主机configuration,

# 分别。

#它们是通过从它们的可用configuration文件进行symlinking来激活的

#相应的* - 可用/对应。 这些应该通过使用我们的pipe理

#助手a2enmod / a2dismod,a2ensite / a2dissite和a2enconf / a2disconf。 看到

#他们各自的手册页的详细信息。

#*二进制文件被称为apache2。 由于使用环境variables,在

#默认configuration,apache2需要启动/停止

#/etc/init.d/apache2或apache2ctl。 直接调用/ usr / bin / apache2不会

#使用默认configuration。

#全局configuration

#ServerRoot:服务器所在目录树的顶部

保存#configuration,错误和日志文件。

# 注意! 如果你打算把它放在一个NFS(或其他networking)

#挂载文件系统,然后请阅读Mutex文档(可用

# 在 );

#你会救自己很多麻烦。

#不要在目录path末尾添加斜杠。

#ServerRoot“/ etc / apache2”

#接受序列化locking文件必须保存在本地磁盘上。

互斥文件:$ {APACHE_LOCK_DIR}默认

#PidFile:服务器应该logging其进程的文件

#开始时的识别号码。

#这需要在/ etc / apache2 / envvars中设置

PidFile $ {APACHE_PID_FILE}

#超时:接收和发送超时之前的秒数。

超时300

KeepAlive:是否允许持久连接(多于

#每个连接一个请求)。 设置为“关”以禁用。

保持活跃

#MaxKeepAliveRequests:允许的最大请求数

#在持续连接期间。 设置为0允许无限量。

#我们build议您保持这个数字高,以获得最佳performance。

MaxKeepAliveRequests 100

#KeepAliveTimeout:等待下一个请求的秒数

#同一连接上的同一个客户端。

KeepAliveTimeout 5

#这些需要在/ etc / apache2 / envvars中设置

用户$ {APACHE_RUN_USER}

组$ {APACHE_RUN_GROUP}

#HostnameLookups:logging客户端的名称或IP地址

#例如www.apache.org(on)或204.62.129.132(off)。

#默认是closures的,因为如果人们对networking来说总体上会更好

#不得不明确地把这个function,因为启用它意味着

#每个客户端请求都会导致AT至less有一个查询请求

#nameserver。

主机名查看closures

#ErrorLog:错误日志文件的位置。

#如果你没有在一个指定的ErrorLog指令

#容器,与该虚拟主机相关的错误消息将会是

#在这里logging。 如果你确定一个错误日志文件

#容器,该主机的错误将logging在那里,而不是在这里。

ErrorLog $ {APACHE_LOG_DIR} /error.log

#LogLevel:控制logging到error_log的消息的严重性。

#可用值:trace8,...,trace1,debug,info,notice,warn,

#错误,暴击,警报,emerg。

#也可以configuration特定模块的日志级别,例如

#“LogLevel info ssl:warn”

LogLevel警告

#包含模块configuration:

IncludeOptional mods-enabled / *。load

IncludeOptional mods-enabled / *。conf

#包括侦听的端口列表

包括ports.conf

#设置Apache2 HTTPD服务器的默认安全模型。 它确实

#不允许访问/ usr / share和/ var / www之外的根文件系统。

#前者被Debian中打包的Web应用程序使用,

#后者可以用于Web服务器提供的本地目录。 如果

#您的系统正在从/ srv中的子目录提供内容,您必须允许

#访问这里,或在任何相关的虚拟主机。

选项索引FollowSymLinks

AllowOverride无

要求所有授予

AllowOverride无

要求所有授予

选项索引FollowSymLinks

AllowOverride无

要求所有授予

#选项索引FollowSymLinks

#AllowOverride无

#要求所有授予

#AccessFileName:要在每个目录中查找的文件的名称

#用于其他configuration指令。 另请参阅AllowOverride

#指令。

AccessFileName .htaccess

#以下行防止.htaccess和.htpasswd文件存在

#由Web客户端查看。

要求所有授予

#以下指令定义一些格式昵称供使用

#一个CustomLog指令。

#这些与通用日志格式定义不同,它们使用%O

#(实际发送的字节包括头文件)而不是%b(的大小)

#请求的文件),因为后者使得不可能检测到部分

# 要求。

#请注意,不build议使用%{X-Forwarded-For} i而不是%h。

#改用mod_remoteip。

LogFormat“%v:%p%h%l%u%t ”%r “%s%O ”%{Referer} i “”%{User-Agent} i “”vhost_combined

LogFormat「%h%l%u%t 」%r %> s%O “%{Referer} i ”“%{User-Agent} i”

LogFormat“%h%l%u%t”%r “%s%O”常见

LogFormat“%{Referer} i - >%U”referer

LogFormat“%{User-agent}我”代理

#包含目录忽略编辑器和dpkg的备份文件,

#详情请参阅README.Debian。

#包含通用的语句片断

IncludeOptional conf-enabled / * .conf

#包含虚拟主机configuration:

IncludeOptional sites-enabled / *。conf

#vim:Syntax = apache ts = 4 sw = 4 sts = 4 sr noet

Apache日志

客户端拒绝服务器configuration:/ var / www / html / prestashop [客户端192.168.1.XX:XXXXX] [客户端192.168.1.XX:XXXXX] [Wed Jun 17 18:18:38.560856 2015] [authz_core:error] [pid 8872]

我在论坛上的configuration出错了

等/ apache2的/启用的站点 – / prestashop.conf

#ServerName指令设置请求scheme,主机名和端口

#服务器用来标识自己。 这在创build时使用

#redirecturl。 在虚拟主机的上下文中,ServerName

#指定主机名必须出现在请求的Host:头中

#匹配这个虚拟主机。 对于默认的虚拟主机(这个文件)这个

#值不是决定性的,因为它被用作最后的手段主机。

#但是,您必须明确地为其他虚拟主机进行设置。

#ServerName www.example.com

ServerAdmin webmaster @ localhost

DocumentRoot / var / www / html / prestashop

#可用的日志级别:trace8,...,trace1,debug,info,notice,warn,

#错误,暴击,警报,emerg。

#也可以configuration特定的日志级别

#模块,例如

#LogLevel info ssl:warn

ErrorLog $ {APACHE_LOG_DIR} /error.log

CustomLog $ {APACHE_LOG_DIR} /access.log合并

选项全部

AllowOverride全部

要求所有授予

#对于来自conf-available /的大多数configuration文件,

#在全球范围内启用或禁用,有可能

#仅包含一个特定虚拟主机的行。 例如

#下面的行只启用该主机的CGIconfiguration

#在通过“a2disconf”全局禁用之后。

#include conf-available / serve-cgi-bin.conf

#vim:Syntax = apache ts = 4 sw = 4 sts = 4 sr noet

我已经添加到Apache,我更新了服务,总是同样的错误,我想知道为什么它不起作用,也许我想这个网站在本地任何媒体typesaccesible请你的帮助和晚上好

htaccess阻止访问.PHP,并只允许使用RewriteRule

htaccess规则转发/login/和/login到同一页面?

如何防止Apache / mod_rewrite将path视为具有相同名称的文件

Mod_rewrite将example.com/page.PHP?v1=abc&v2=def改为example.com/abc/def

在Nginx,htaccess上韭菜

有几件事我只是看着配置。

你有你的虚拟主机配置命名

etc/apache2/sites-enabled/prestashop.config

但是这不是包含在apache.conf文件中的文件类型。

# Include the virtual host configurations: IncludeOptional sites-enabled/*.conf

你的apache安装程序寻找的.conf文件不是 .config所以它很可能甚至不读你的虚拟主机文件。

另外我会设置我的虚拟主机看起来像这样,将包括Directory指令。

<VirtualHost *:80> serverName localhost serverAdmin webmaster@localhost DocumentRoot /var/www/html/prestashop <Directory /var/www/html/prestashop> DirectoryIndex index.PHP index.html Options All AllowOverride All Require all granted </Directory> # Available loglevels: trace8,...,trace1,debug,info,notice,warn,# error,crit,alert,emerg. # It is also possible to configure the loglevel for particular # modules,eg #LogLevel info ssl:warn ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>

当你做所有的改变时重新启动apache。

总结

以上是小编为你收集整理的AH01630:客户端被服务器configurationApache拒绝全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

Apache solrconfiguration与tomcat 6.0

Apache solrconfiguration与tomcat 6.0

您能帮我使用TomcatconfigurationApache Solr,以及如何使用Solr在MS sql数据库中编制索引。 configurationTomcat以在Tomcat中运行Apache Solr的步骤是什么?

Apache ITK vs Suexec

Apache:使用反向代理并运行本地网站

我如何使用Selenium RC来validation我们的服务器端redirect(301,302)?

Windows 10:xdebug不能用eclipse停止

在wordpress中运行Django项目(在使用Apache和mod_wsgi的wordpress的郊区)

这是一步一步的过程,这将有所帮助。

第1部分:用TOMCAT设置SOLR

第1步:下载Solr。 这只是一个zip文件。

第2步:从您的SOLR_HOME_DIR / dist / apache-solr-1.3.0.war复制到您的tomcat webapps目录:$ CATALINA_HOME / webapps / solr.war – 注意war文件名的变化。 这很重要。

第3步:在您选择的位置创建您的solr主目录。 这是solr安装的配置所在的地方。 最简单的方法是将SOLR_HOME_DIR / examples / solr目录复制到你想要的solr home容器所在的位置。 说它放在C: solr。

第4步:希望你已经设置了你的环境变量,如果没有的话请设置JAVA_HOME,JRE_HOME,CATALINA_OPTS,CATALINA_HOME。 请注意,CATALINA_HOME是指您的Tomcat目录&CATALINA_OPTS是指您要提供给Solr的堆内存量。

第5步:启动tomcat。 注意这只是为了让tomcat解开你的war文件。 如果你看$ CATALINA_HOME / webapps下面应该有一个solr目录。

第6步:停止tomcat

第7步:进入solr目录并编辑WEB-INF / web.xml。 向下滚动,直到看到如下所示的条目:

<!-- People who want to hardcode their "Solr Home" directly into the WAR File can set the JNDI property here... --> <!-- <env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-value>/Path/To/My/solr/Home/solr/</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry> -->

将Solr设置为首页(例如:C: solr)并取消注释env项。

第8步:再次启动Tomcat,事情应该会非常好。 您应该能够通过尝试URL http:// localhost:8080 / solr / admin /来验证solr是否正在运行。

第2部分:使用数据导入处理器设置MSR服务器的SOLR

第1步:下载Microsoft sql server JDBC驱动程序3.0。 只是提取内容。 在您的solr主目录下创建一个文件夹(例如:C: solr lib)。 将文件sqljdbc4.jar复制到上面下载的存档中。

步骤2:在你的Solr家里,所需的基本目录是conf和lib。 第一个,也就是你可能已经得到的第1部分的第3步&lib是您在第2部分的第1步中创建的目录。

第3步。进入conf目录。 请在您的编辑器中打开3个文件:data-config.xml,schema.xml和solrconfig.xml。

第4步。开始编辑data-config.xml。 放置您的SQL查询,数据库名称,服务器名称等。例如:

• <dataConfig> • <dataSource type="JdbcDataSource" driver="com.microsoft.sqlserver.jdbc.sqlserverDriver" url="jdbc:sqlserver://XYZU:1433;databaseName=myDB" user="test" password="tester" /> • <document> • <entity name="Text" query="select DocumentId,Data from Text"> • <field column="DocumentId" name="DocumentId" /> • <field column="Data" name="Data" /> • </entity> • </document> • </dataConfig>

第5步:告诉Solr关于我们的data-config.xml文件。 这可以通过向Solr配置文件solrconfig.xml文件添加请求处理程序来完成。 将以下请求处理程序添加到solrconfig.xml中:

• <requestHandler name="/dataimport"https://www.jb51.cc/tag/so/" target="_blank">.solr.handler.dataimport.dataimporthandler"> • <lst name="defaults"> • <str name="config">C:solrconfdata-config.xml</str> • </lst> • </requestHandler>

第6步:配置schema.xml – 在这个文件中,您可以做几个东西,如设置您的字段的数据类型,设置搜索的唯一/主键等

第7步:启动Tomcat

第8步:现在访问http:// localhost:8080 / solr / admin / dataimport.jsp?handler = / dataimport &开始您的完整导入。

一些便利的注意事项:

• There are a number of reasons a data import Could fail,most likely due to problem with the configuration of data-config.xml. To see for sure what''s going on you''ll have to look in C:tomcat6logscatalina.*. • If you happen to find that your import is failing due to system running out of memory,however,there''s an easy,sql server specific fix. Add responseBuffering=adaptive and selectMethod=cursor to the url attribute of the dataSource node in data-config.xml. That stops the JDBC driver from trying to load the entire result set into memory before reads can occur. • Note that by default the index gets created in C:Tomcat6binsolrdataindex. To change this path just edit solrconfig.xml & change <dataDir>${solr.data.dir:./solr/data}</dataDir>. • In new Solr versions,I think 3.0 and above you have to place the 2 data import handler jars in your solr lib directory (ie for example apache-solr-dataimporthandler-3.3.0.jar & apache- solr-dataimporthandler-extras-3.3.0.jar). Search for them in your Solr zip you downloaded. In older Solr versions this is not required because they are bundled with solr.war. Since we have placed the data import handlers in the lib directory so we need to specify their paths in solrconfig.xml. Add this line to solrconfig.xml: (Example: <lib dir="C:/solr/lib/" regex="apache-solr-dataimporthandler- d.*.jar" />)

总结

以上是小编为你收集整理的Apache solrconfiguration与tomcat 6.0全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

keycloak(Nginx)的反向代理configuration

keycloak(Nginx)的反向代理configuration

我有一个在8000端口上运行的弹簧启动应用程序(有keycloak适配器)和在8080上运行的keycloak

我编辑了我的/ etc / hosts文件来路由来自我的testing域(foo.bar.com)的请求,路由到127.0.0.1

截至目前,我对SSL没有兴趣。

我的示例Nginxconfiguration:

server { listen 80; server_name foo.bar.com; location /myapp { proxy_set_header Host $host/myapp; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Forwarded-Port 80; proxy_set_header X-Forwarded-Proto http; proxy_pass http://localhost:8000/; } location /auth { proxy_set_header Host $host; proxy_set_header X-Forwarded-Server $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://localhost:8080; } }

题:

这个样例的Nginx conf足够了吗? 我有一些无限的redirect发生。 从我的spring应用程序的keycloak适配器日志说: 没有状态Cookie

如果我不使用代理服务器,而是configuration应用程序和keycloak直接对话,它的作品。 我不知道为什么代理服务器正在创build问题

总结

以上是小编为你收集整理的keycloak(Nginx)的反向代理configuration全部内容。

如果觉得小编网站内容还不错,欢迎将小编网站推荐给好友。

org.apache.commons.configuration.AbstractConfiguration的实例源码

org.apache.commons.configuration.AbstractConfiguration的实例源码

项目:incubator-servicecomb-java-chassis    文件:ConfigUtil.java   
public static AbstractConfiguration createDynamicConfig() {
  LOGGER.info("create dynamic config:");
  ConcurrentCompositeConfiguration config = ConfigUtil.createLocalConfig();
  DynamicWatchedConfiguration configFromConfigCenter = createConfigFromConfigCenter(config);
  if (configFromConfigCenter != null) {
    ConcurrentMapConfiguration injectConfig = new ConcurrentMapConfiguration();
    config.addConfigurationAtFront(injectConfig,"extraInjectConfig");

    duplicateServiceCombConfigToCse(configFromConfigCenter);
    config.addConfigurationAtFront(configFromConfigCenter,"configCenterConfig");

    configFromConfigCenter.getSource().addUpdateListener(new ServiceCombPropertyUpdateListener(injectConfig));
  }

  return config;
}
项目:incubator-servicecomb-java-chassis    文件:TestConfigUtil.java   
@Test
public void testCreateDynamicConfigNoConfigCenterSPI() {
  new Expectations(SPIServiceUtils.class) {
    {
      SPIServiceUtils.getTargetService(ConfigCenterConfigurationSource.class);
      result = null;
    }
  };

  AbstractConfiguration dynamicConfig = ConfigUtil.createDynamicConfig();
  MicroserviceConfigLoader loader = ConfigUtil.getMicroserviceConfigLoader(dynamicConfig);
  List<ConfigModel> list = loader.getConfigModels();
  Assert.assertEquals(loader,ConfigUtil.getMicroserviceConfigLoader(dynamicConfig));
  Assert.assertEquals(1,list.size());
  Assert.assertNotEquals(DynamicWatchedConfiguration.class,((ConcurrentCompositeConfiguration) dynamicConfig).getConfiguration(0).getClass());
}
项目:incubator-servicecomb-java-chassis    文件:TestLoadbalanceHandler.java   
@BeforeClass
public static void beforeCls() {
  ConfigUtil.installDynamicConfig();
  AbstractConfiguration configuration =
      (AbstractConfiguration) DynamicPropertyFactory.getbackingConfigurationSource();
  configuration.addProperty("cse.loadbalance.test.transactionControl.policy","org.apache.servicecomb.loadbalance.filter.SimpleTransactionControlFilter");
  configuration.addProperty("cse.loadbalance.test.transactionControl.options.tag0","value0");
  configuration.addProperty("cse.loadbalance.test.isolation.enabled","true");
  configuration.addProperty("cse.loadbalance.serverListFilters","a");
  configuration.addProperty("cse.loadbalance.serverListFilter.a.className","org.apache.servicecomb.loadbalance.MyServerListFilterExt");
}
项目:incubator-servicecomb-java-chassis    文件:TestIsolationServerListFilter.java   
@Before
public void setUp() throws Exception {
  IsolationServerListFilter = new IsolationServerListFilter();
  loadBalancerStats = new LoadBalancerStats("loadBalancer");

  AbstractConfiguration configuration =
      (AbstractConfiguration) DynamicPropertyFactory.getbackingConfigurationSource();
  configuration.clearProperty("cse.loadbalance.isolation.enabled");
  configuration.addProperty("cse.loadbalance.isolation.enabled","true");
  configuration.clearProperty("cse.loadbalance.isolation.enableRequestThreshold");
  configuration.addProperty("cse.loadbalance.isolation.enableRequestThreshold","3");
}
项目:incubator-servicecomb-java-chassis    文件:TestIsolationServerListFilter.java   
@After
public void tearDown() throws Exception {
  IsolationServerListFilter = null;
  loadBalancerStats = null;

  AbstractConfiguration configuration =
      (AbstractConfiguration) DynamicPropertyFactory.getbackingConfigurationSource();
  configuration.clearProperty("cse.loadbalance.isolation.continuousFailureThreshold");
}
项目:incubator-servicecomb-java-chassis    文件:TestIsolationServerListFilter.java   
@Test
public void testGetFilteredlistofServersOnContinuousFailureReachesThreshold() {
  ((AbstractConfiguration) DynamicPropertyFactory.getbackingConfigurationSource())
      .addProperty("cse.loadbalance.isolation.continuousFailureThreshold","3");
  Invocation invocation = Mockito.mock(Invocation.class);
  CseServer testServer = Mockito.mock(CseServer.class);
  Mockito.when(invocation.getMicroserviceName()).thenReturn("microserviceName");
  Mockito.when(testServer.getCountinuousFailureCount()).thenReturn(3);
  Mockito.when(testServer.getLastVisitTime()).thenReturn(System.currentTimeMillis());

  for (int i = 0; i < 3; ++i) {
    loadBalancerStats.incrementNumRequests(testServer);
  }

  List<Server> serverList = new ArrayList<>();
  serverList.add(testServer);
  IsolationServerListFilter.setLoadBalancerStats(loadBalancerStats);
  IsolationServerListFilter.setInvocation(invocation);
  List<Server> returnedServerList = IsolationServerListFilter.getFilteredlistofServers(serverList);
  Assert.assertEquals(0,returnedServerList.size());
}
项目:incubator-servicecomb-java-chassis    文件:TestIsolationServerListFilter.java   
@Test
public void testGetFilteredlistofServersOnContinuousFailureIsBelowThreshold() {
  ((AbstractConfiguration) DynamicPropertyFactory.getbackingConfigurationSource())
      .addProperty("cse.loadbalance.isolation.continuousFailureThreshold","3");
  Invocation invocation = Mockito.mock(Invocation.class);
  CseServer testServer = Mockito.mock(CseServer.class);
  Mockito.when(invocation.getMicroserviceName()).thenReturn("microserviceName");
  Mockito.when(testServer.getCountinuousFailureCount()).thenReturn(2);
  Mockito.when(testServer.getLastVisitTime()).thenReturn(System.currentTimeMillis());

  for (int i = 0; i < 3; ++i) {
    loadBalancerStats.incrementNumRequests(testServer);
  }

  List<Server> serverList = new ArrayList<>();
  serverList.add(testServer);
  IsolationServerListFilter.setLoadBalancerStats(loadBalancerStats);
  IsolationServerListFilter.setInvocation(invocation);
  List<Server> returnedServerList = IsolationServerListFilter.getFilteredlistofServers(serverList);
  Assert.assertEquals(1,returnedServerList.size());
}
项目:incubator-servicecomb-java-chassis    文件:TestHighwayClient.java   
@BeforeClass
public static void beforeCls() {
  ConfigUtil.installDynamicConfig();
  AbstractConfiguration configuration =
      (AbstractConfiguration) DynamicPropertyFactory.getbackingConfigurationSource();
  configuration.addProperty(REQUEST_TIMEOUT_KEY,2000);
}
项目:j1st-mqtt    文件:KafkaApplicationCommunicator.java   
@Override
public void init(AbstractConfiguration config,ApplicationListenerFactory factory) {
    init(config);

    logger.trace("Initializing Kafka consumer ...");

    // consumer config
    Properties props = new Properties();
    props.put("bootstrap.servers",config.getString("bootstrap.servers"));
    props.put("group.id",config.getString("group.id"));
    props.put("enable.auto.commit","true");
    props.put("key.serializer",StringSerializer.class.getName());
    props.put("value.serializer",InternalMessageSerializer.class.getName());

    // consumer
    this.consumer = new KafkaConsumer<>(props);

    // consumer worker
    this.worker = new KafkaApplicationWorker(this.consumer,APPLICATION_TOPIC,factory.newListener());
    this.executor.submit(this.worker);
}
项目:j1st-mqtt    文件:KafkabrokerCommunicator.java   
@Override
public void init(AbstractConfiguration config,String brokerId,brokerListenerFactory factory) {
    init(config);

    broKER_TOPIC = broKER_TOPIC_PREFIX + "." + brokerId;

    logger.trace("Initializing Kafka consumer ...");

    // consumer config
    Properties props = new Properties();
    props.put("bootstrap.servers",UUIDs.shortUuid());
    props.put("enable.auto.commit",InternalMessageSerializer.class.getName());

    // consumer
    this.consumer = new KafkaConsumer<>(props);

    // consumer worker
    this.worker = new KafkabrokerWorker(this.consumer,broKER_TOPIC,factory.newListener());
    this.executor.submit(this.worker);
}
项目:j1st-mqtt    文件:KafkaCommunicator.java   
protected void init(AbstractConfiguration config) {
    broKER_TOPIC_PREFIX = config.getString("communicator.broker.topic");
    APPLICATION_TOPIC = config.getString("communicator.application.topic");

    logger.trace("Initializing Kafka producer ...");

    // producer config
    Properties props = new Properties();
    props.put("bootstrap.servers",config.getString("bootstrap.servers"));
    props.put("acks",config.getString("acks"));
    props.put("key.serializer",InternalMessageSerializer.class.getName());

    // producer
    this.producer = new KafkaProducer<>(props);

    // consumer executor
    this.executor = Executors.newSingleThreadExecutor();
}
项目:j1st-mqtt    文件:RedisSyncSingleStorage.java   
@Override
public void init(AbstractConfiguration config) {
    if (!config.getString("redis.type").equals("single")) {
        throw new IllegalStateException("RedisSyncSingleStorage class can only be used with single redis setup,but redis.type value is " + config.getString("redis.type"));
    }

    List<String> address = parseRedisAddress(config.getString("redis.address"),6379);
    int databaseNumber = config.getInt("redis.database",0);
    String password = StringUtils.isNotEmpty(config.getString("redis.password")) ? config.getString("redis.password") + "@" : "";

    // lettuce
    RedisURI lettuceURI = RedisURI.create("redis://" + password + address.get(0) + "/" + databaseNumber);
    this.lettuce = RedisClient.create(lettuceURI);
    this.lettuceConn = this.lettuce.connect();

    // redisson
    Config redissonConfig = new Config();
    redissonConfig.useSingleServer()
            .setAddress(address.get(0))
            .setDatabase(databaseNumber)
            .setPassword(StringUtils.isNotEmpty(password) ? password : null);
    this.redisson = Redisson.create(redissonConfig);

    // params
    initParams(config);
}
项目:j1st-mqtt    文件:RabbitMQHttpCommunicator.java   
@Override
public void init(AbstractConfiguration config,String serverId) {
    try {
        ConnectionFactory cf = new ConnectionFactory();
        cf.setUsername(config.getString("rabbitmq.userName",ConnectionFactory.DEFAULT_USER));
        cf.setPassword(config.getString("rabbitmq.password",ConnectionFactory.DEFAULT_PASS));
        cf.setVirtualHost(config.getString("rabbitmq.virtualHost",ConnectionFactory.DEFAULT_VHOST));
        cf.setAutomaticRecoveryEnabled(true);
        cf.setExceptionHandler(new RabbitMQExceptionHandler());
        this.conn = cf.newConnection(Address.parseAddresses(config.getString("rabbitmq.addresses")));
        this.channel = conn.createChannel();

        logger.trace("Initializing RabbitMQ broker resources ...");

        broKER_TOPIC_PREFIX = config.getString("communicator.broker.topic");

        logger.trace("Initializing RabbitMQ application resources ...");

        APPLICATION_TOPIC = config.getString("communicator.application.topic");
        this.channel.exchangeDeclare(APPLICATION_TOPIC,"topic",true);

    } catch (IOException | TimeoutException e) {
        logger.error("Failed to connect to RabbitMQ servers",e);
        throw new IllegalStateException("Init RabbitMQ communicator Failed");
    }
}
项目:cerberus-archaius-client    文件:ArchaiusCerberusUrlResolver.java   
/**
 * Attempts to acquire the Vault URL from Archaius.
 *
 * @return Vault URL
 */
@Nullable
@Override
public  String resolve() {
    final AbstractConfiguration configuration = ConfigurationManager.getConfigInstance();
    final String envUrl = configuration.getString(CERBERUS_ADDR_ENV_PROPERTY);
    final String sysUrl = configuration.getString(CERBERUS_ADDR_SYS_PROPERTY);

    if (StringUtils.isNotBlank(envUrl) && HttpUrl.parse(envUrl) != null) {
        return envUrl;
    } else if (StringUtils.isNotBlank(sysUrl) && HttpUrl.parse(sysUrl) != null) {
        return sysUrl;
    }

    logger.warn("Unable to resolve the Cerberus URL.");

    return null;
}
项目:jindy    文件:ArchaiusBaseFactory.java   
@Override
public Config createConfig(String name) {
  if (CONfig != null) {
    return CONfig;
  }
  synchronized (ArchaiusBaseFactory.class) {
    if (CONfig == null) {
      AbstractConfiguration configuration = getConfiguration();
      ConfigurationManager.install(configuration);
      CONfig = new ArchaiusWrapper(configuration);
      ConfigFactory.setContext(CONfig);
      configuration.addConfigurationListener(event -> {
        if (!event.isBeforeUpdate()) {
          CONfig.fire(event.getPropertyName());
        }
      });
    }
  }
  return CONfig;
}
项目:mithqtt    文件:RedisSyncSingleStorageImpl.java   
@Override
public void init(AbstractConfiguration config) {
    if (!config.getString("redis.type").equals("single")) {
        throw new IllegalStateException("RedisSyncSingleStorageImpl class can only be used with single redis setup,0);
    String password = StringUtils.isNotEmpty(config.getString("redis.password")) ? config.getString("redis.password") + "@" : "";

    // lettuce
    RedisURI lettuceURI = RedisURI.create("redis://" + password + address.get(0) + "/" + databaseNumber);
    this.lettuce = RedisClient.create(lettuceURI);
    this.lettuceConn = this.lettuce.connect();

    // params
    initParams(config);
}
项目:mithqtt    文件:RedisSyncSentinelStorageImpl.java   
@Override
public void init(AbstractConfiguration config) {
    if (!config.getString("redis.type").equals("sentinel")) {
        throw new IllegalStateException("RedisSyncSingleStorageImpl class can only be used with sentinel redis setup,26379);
    int databaseNumber = config.getInt("redis.database",0);
    String password = StringUtils.isNotEmpty(config.getString("redis.password")) ? config.getString("redis.password") + "@" : "";
    String masterId = config.getString("redis.master");

    // lettuce
    RedisURI lettuceURI = RedisURI.create("redis-sentinel://" + password + String.join(",",address) + "/" + databaseNumber + "#" + masterId);
    this.lettuceSentinel = RedisClient.create(lettuceURI);
    this.lettuceSentinelConn = MasterSlave.connect(this.lettuceSentinel,new Utf8StringCodec(),lettuceURI);
    this.lettuceSentinelConn.setReadFrom(ReadFrom.valueOf(config.getString("redis.read")));

    // params
    initParams(config);
}
项目:mithqtt    文件:RedisSyncMasterSlaveStorageImpl.java   
@Override
public void init(AbstractConfiguration config) {
    if (!config.getString("redis.type").equals("master_slave")) {
        throw new IllegalStateException("RedisSyncSingleStorageImpl class can only be used with master slave redis setup,0);
    String password = StringUtils.isNotEmpty(config.getString("redis.password")) ? config.getString("redis.password") + "@" : "";

    // lettuce
    RedisURI lettuceURI = RedisURI.create("redis://" + password + address.get(0) + "/" + databaseNumber);
    this.lettuceMasterSlave = RedisClient.create(lettuceURI);
    this.lettuceMasterSlaveConn = MasterSlave.connect(this.lettuceMasterSlave,lettuceURI);
    this.lettuceMasterSlaveConn.setReadFrom(ReadFrom.valueOf(config.getString("redis.read")));

    // params
    initParams(config);
}
项目:spectator    文件:Plugin.java   
/** Create a new instance. */
@Inject
Plugin(Registry registry) throws IOException {

  AbstractConfiguration config = ConfigurationManager.getConfigInstance();
  final boolean enabled = config.getBoolean(ENABLED_PROP,true);
  if (enabled) {
    ConfigurationManager.loadPropertiesFromresources(CONfig_FILE);
    if (config.getBoolean("spectator.gc.loggingEnabled")) {
      GC_LOGGER.start(null);
      LOGGER.info("gc logging started");
    } else {
      LOGGER.info("gc logging is not enabled");
    }

    Jmx.registerStandardMXBeans(registry);
  } else {
    LOGGER.debug("plugin not enabled,set " + ENABLED_PROP + "=true to enable");
  }
}
项目:chassis    文件:PropertiesServlet.java   
@Override
protected void doGet(HttpServletRequest req,HttpServletResponse resp) throws servletexception,IOException {
    // get list of properties
    TreeSet<String> properties = new TreeSet<String>();
    AbstractConfiguration config = ConfigurationManager.getConfigInstance();
    Iterator<String> keys = config.getKeys();
    while (keys.hasNext()) {
        String key = keys.next();
        Object value = config.getProperty(key);
        if ("aws.accessId".equals(key)
                || "aws.secretKey".equals(key)
                || "experiments-service.secret".equals(key)
                || "java.class.path".equals(key)
                || key.contains("framework.securityDeFinition")
                || key.contains("password")
                || key.contains("secret")) {
            value = "*****";
        }
        properties.add(key + "=" + value.toString());
    }

    // write them out in sorted order
    for (String line : properties) {
        resp.getWriter().append(line).println();
    }
}
项目:chassis    文件:Application.java   
@Override
public void onApplicationEvent(ContextRefreshedEvent event) {
    logger.debug("Received ContextRefreshedEvent {}",event);

    if (event.getSource().equals(getBootstrapApplicationContext())) {
        //the root context is fully started
        appMetadata = bootstrapApplicationContext.getBean(AppMetadata.class);
        configuration = bootstrapApplicationContext.getBean(AbstractConfiguration.class);
        configurationProvider = bootstrapApplicationContext.getBean(ConfigurationProvider.class);

        logger.debug("Root context started");

        initClientApplication();

        return;
    }

    if (event.getSource() instanceof ApplicationContext && ((ApplicationContext) event.getSource()).getId().equals(appMetadata.getName())) {
        //the child context is fully started
        this.applicationContext = (AbstractApplicationContext) event.getSource();

        logger.debug("Child context started");
    }

    state.compareAndSet(State.STARTING,State.RUNNING);
}
项目:chassis    文件:BootstrapConfiguration.java   
@Bean
@SuppressWarnings("resource")
public AbstractConfiguration applicationConfiguration() throws ClassNotFoundException {
    AppMetadata appMetadata = appMetadata();
    ServerInstanceContext serverInstanceContext = serverInstanceContext();
    if(appEnvironment == null && serverInstanceContext != null){
        appEnvironment = serverInstanceContext.getEnvironment();
    }
    ConfigurationBuilder configurationBuilder = new ConfigurationBuilder(appMetadata.getName(),appEnvironment,addSystemConfigs,reflections());
    configurationBuilder.withConfigurationProvider(configurationProvider());
    configurationBuilder.withServerInstanceContext(serverInstanceContext());
    configurationBuilder.withApplicationProperties(appMetadata.getPropertiesResourceLocation());
    configurationBuilder.withScanModuleConfigurations(scanModuleConfigurations);
    configurationBuilder.withAppVersion(appMetadata.getDeclaringClass().getPackage().getImplementationVersion());
    AbstractConfiguration configuration = configurationBuilder.build();
    if(serverInstanceContext != null){
        serverInstanceContext.setAppName(appMetadata.getName());
        serverInstanceContext.setVersion(configuration.getString(BootstrapConfigKeys.APP_VERSION_KEY.getPropertyName()));
    }
    return configuration;
}
项目:spring-cloud-netflix    文件:ArchaiusAutoConfiguration.java   
@Override
public void onApplicationEvent(EnvironmentChangeEvent event) {
    AbstractConfiguration manager = ConfigurationManager.getConfigInstance();
    for (String key : event.getKeys()) {
        for (ConfigurationListener listener : manager
                .getConfigurationListeners()) {
            Object source = event.getSource();
            // Todo: Handle add vs set vs delete?
            int type = AbstractConfiguration.EVENT_SET_PROPERTY;
            String value = this.env.getProperty(key);
            boolean beforeUpdate = false;
            listener.configurationChanged(new ConfigurationEvent(source,type,key,value,beforeUpdate));
        }
    }
}
项目:spring-cloud-netflix    文件:ArchaiusAutoConfiguration.java   
private static void addArchaiusConfiguration(ConcurrentCompositeConfiguration config) {
    if (ConfigurationManager.isConfigurationInstalled()) {
        AbstractConfiguration installedConfiguration = ConfigurationManager
                .getConfigInstance();
        if (installedConfiguration instanceof ConcurrentCompositeConfiguration) {
            ConcurrentCompositeConfiguration configInstance = (ConcurrentCompositeConfiguration) installedConfiguration;
            configInstance.addConfiguration(config);
        }
        else {
            installedConfiguration.append(config);
            if (!(installedConfiguration instanceof AggregatedConfiguration)) {
                log.warn(
                        "Appending a configuration to an existing non-aggregated installed configuration will have no effect");
            }
        }
    }
    else {
        ConfigurationManager.install(config);
    }
}
项目:ribbon    文件:SecureGetTest.java   
@Test
public void testSunnyDayNoClientAuth() throws Exception{

    AbstractConfiguration cm = ConfigurationManager.getConfigInstance();

    String name = "GetPostSecureTest" + ".testSunnyDayNoClientAuth";

    String configPrefix = name + "." + "ribbon";

    cm.setProperty(configPrefix + "." + CommonClientConfigKey.IsSecure,"true");
    cm.setProperty(configPrefix + "." + CommonClientConfigKey.SecurePort,Integer.toString(PORT2));
    cm.setProperty(configPrefix + "." + CommonClientConfigKey.IsHostnameValidationrequired,"false");
    cm.setProperty(configPrefix + "." + CommonClientConfigKey.TrustStore,FILE_TS2.getAbsolutePath());
    cm.setProperty(configPrefix + "." + CommonClientConfigKey.TrustStorePassword,PASSWORD);

    RestClient rc = (RestClient) ClientFactory.getNamedClient(name);

    testServer2.accept();

    URI getUri = new URI(SERVICE_URI2 + "test/");
       HttpRequest request = HttpRequest.newBuilder().uri(getUri).queryParams("name","test").build();
    HttpResponse response = rc.execute(request);
    assertEquals(200,response.getStatus());
}
项目:googleads-java-lib    文件:ConfigurationHelperTest.java   
@Before
public void setUp() {
  AbstractConfiguration.setDefaultListDelimiter(',');
  clearTestSystemProperties();
  this.configurationHelper = new ConfigurationHelper();
  this.test1Properties = new HashMap<String,String>() {{
      this.put("a.b.c","efgh");
      this.put("a.b.d","1234");
    }};

  this.test3Properties = new HashMap<String,"jklm");
      this.put("e.f.h","90123");
      // The value in the file is "foo,bar" but AbstractConfiguration.getString(key) only returns
      // the first item in a collection.
      this.put("i.j.k","foo");
    }};
}
项目:MaduraConfiguration    文件:MaduraConfiguration.java   
private void invokeListeners()
{
    if (m_configurationListeners != null)
    {
        try
        {
            ConfigurationEvent event = new ConfigurationEvent(this,AbstractConfiguration.EVENT_SET_PROPERTY,null,this,false);
            for (ConfigurationListener listener:m_configurationListeners)
            {
                listener.configurationChanged(event);
            }
        }
        catch (Exception e)
        {
            throw new RuntimeException(e);
        }
    }
}
项目:incubator-servicecomb-java-chassis    文件:ConfigUtil.java   
public static AbstractConfiguration convertEnvVariable(AbstractConfiguration source) {
  Iterator<String> keys = source.getKeys();
  while (keys.hasNext()) {
    String key = keys.next();
    String[] separatedKey = key.split(CONfig_KEY_SPLITER);
    if (separatedKey.length == 1) {
      continue;
    }
    String newKey = String.join(".",separatedKey);
    source.addProperty(newKey,source.getProperty(key));
  }
  return source;
}
项目:incubator-servicecomb-java-chassis    文件:ConfigUtil.java   
private static void duplicateServiceCombConfigToCse(AbstractConfiguration source) {
  Iterator<String> keys = source.getKeys();
  while (keys.hasNext()) {
    String key = keys.next();
    if (!key.startsWith(CONfig_SERVICECOMB_PREFIX)) {
      continue;
    }

    String cseKey = CONfig_CSE_PREFIX + key.substring(key.indexOf(".") + 1);
    source.addProperty(cseKey,source.getProperty(key));
  }
}
项目:incubator-servicecomb-java-chassis    文件:ConfigUtil.java   
private static void duplicateServiceCombConfigToCse(ConcurrentCompositeConfiguration compositeConfiguration,AbstractConfiguration source,String sourceName) {
  duplicateServiceCombConfigToCse(source);

  compositeConfiguration.addConfiguration(source,sourceName);
}
项目:incubator-servicecomb-java-chassis    文件:ConfigUtil.java   
public static void installDynamicConfig() {
  if (ConfigurationManager.isConfigurationInstalled()) {
    LOGGER.warn("Configuration installed by others,will ignore this configuration.");
    return;
  }

  AbstractConfiguration dynamicConfig = ConfigUtil.createDynamicConfig();
  ConfigurationManager.install(dynamicConfig);
}
项目:incubator-servicecomb-java-chassis    文件:ConfigurationspringInitializer.java   
@Override
protected Properties mergeProperties() throws IOException {
  Properties properties = super.mergeProperties();

  AbstractConfiguration config = ConfigurationManager.getConfigInstance();
  Iterator<String> iter = config.getKeys();
  while (iter.hasNext()) {
    String key = iter.next();
    Object value = config.getProperty(key);
    properties.put(key,value);
  }
  return properties;
}
项目:incubator-servicecomb-java-chassis    文件:TestConfigUtil.java   
@Test
public void testCreateDynamicConfigHasConfigCenter(
    @Mocked ConfigCenterConfigurationSource configCenterConfigurationSource) {
  AbstractConfiguration dynamicConfig = ConfigUtil.createDynamicConfig();
  Assert.assertEquals(DynamicWatchedConfiguration.class,((ConcurrentCompositeConfiguration) dynamicConfig).getConfiguration(0).getClass());
}
项目:incubator-servicecomb-java-chassis    文件:TestConfigUtil.java   
@Test
public void duplicateServiceCombConfigToCseListValue() throws Exception {
  List<String> list = Arrays.asList("a","b");

  AbstractConfiguration config = new DynamicConfiguration();
  config.addProperty("servicecomb.list",list);
  Deencapsulation.invoke(ConfigUtil.class,"duplicateServiceCombConfigToCse",config);

  Object result = config.getProperty("cse.list");
  assertthat(result,instanceOf(List.class));
  assertthat(result,equalTo(list));
}
项目:incubator-servicecomb-java-chassis    文件:TestConfigUtil.java   
@Test
public void testConvertEnvVariable() {
  String someProperty = "cse_service_registry_address";
  AbstractConfiguration config = new DynamicConfiguration();
  config.addProperty(someProperty,"testing");
  AbstractConfiguration result = ConfigUtil.convertEnvVariable(config);
  assertthat(result.getString("cse.service.registry.address"),equalTo("testing"));
  assertthat(result.getString("cse_service_registry_address"),equalTo("testing"));
}
项目:incubator-servicecomb-java-chassis    文件:TestMicroServiceInstance.java   
@Test
public void testCreateMicroserviceInstanceFromFile() {
  AbstractConfiguration config = ConfigUtil.createDynamicConfig();
  ConcurrentCompositeConfiguration configuration = new ConcurrentCompositeConfiguration();
  configuration.addConfiguration(config);
  ConfigurationManager.install(configuration);
  MicroserviceInstance instance = MicroserviceInstance.createFromDeFinition(config);
  Assert.assertEquals(instance.getDataCenterInfo().getName(),"myDC");
  Assert.assertEquals(instance.getDataCenterInfo().getRegion(),"my-Region");
  Assert.assertEquals(instance.getDataCenterInfo().getAvailableZone(),"my-Zone");
}
项目:incubator-servicecomb-java-chassis    文件:TestRegistry.java   
@BeforeClass
public static void initSetup() throws Exception {
  AbstractConfiguration dynamicConfig = ConfigUtil.createDynamicConfig();
  ConcurrentCompositeConfiguration configuration = new ConcurrentCompositeConfiguration();
  configuration.addConfiguration(dynamicConfig);
  configuration.addConfiguration(inMemoryConfig);

  ConfigurationManager.install(configuration);
}
项目:incubator-servicecomb-java-chassis    文件:TestSimpleTransactionControlFilter.java   
@BeforeClass
public static void beforeCls() {
  AbstractConfiguration configuration = new BaseConfiguration();
  configuration.addProperty("cse.loadbalance.test.flowsplitFilter.policy","org.apache.servicecomb.loadbalance.filter.SimpleFlowsplitFilter");
  configuration.addProperty("cse.loadbalance.test.flowsplitFilter.options.tag0","value0");
}
项目:j1st-mqtt    文件:RedisSyncMasterSlaveStorage.java   
@Override
public void init(AbstractConfiguration config) {
    if (!config.getString("redis.type").equals("master_slave")) {
        throw new IllegalStateException("RedisSyncSingleStorage class can only be used with master slave redis setup,lettuceURI);
    this.lettuceMasterSlaveConn.setReadFrom(ReadFrom.valueOf(config.getString("redis.read")));

    // redisson
    String masterNode = address.get(0);
    String[] slaveNodes = address.subList(1,address.size()).toArray(new String[address.size() - 1]);
    Config redissonConfig = new Config();
    redissonConfig.useMasterSlaveServers()
            .setMasteraddress(masterNode)
            .setLoadBalancer(new RoundRobinLoadBalancer())
            .addSlaveAddress(slaveNodes)
            .setReadMode(ReadMode.MASTER)
            .setDatabase(databaseNumber)
            .setPassword(StringUtils.isNotEmpty(password) ? password : null);
    this.redisson = Redisson.create(redissonConfig);

    // params
    initParams(config);
}
项目:j1st-mqtt    文件:RedisSyncclusterStorage.java   
@Override
public void init(AbstractConfiguration config) {
    if (!config.getString("redis.type").equals("cluster")) {
        throw new IllegalStateException("RedisSyncSingleStorage class can only be used with cluster redis setup,0);
    String password = StringUtils.isNotEmpty(config.getString("redis.password")) ? config.getString("redis.password") + "@" : "";

    // lettuce
    RedisURI lettuceURI = RedisURI.create("redis://" + password + address.get(0) + "/" + databaseNumber);
    this.lettuceCluster = RedisClusterClient.create(lettuceURI);
    this.lettuceCluster.setoptions(new ClusterClientOptions.Builder()
            .refreshClusterView(true)
            .refreshPeriod(1,TimeUnit.MINUTES)
            .build());
    this.lettuceClusterConn = this.lettuceCluster.connect();
    this.lettuceClusterConn.setReadFrom(ReadFrom.valueOf(config.getString("redis.read")));

    // redisson
    Config redissonConfig = new Config();
    redissonConfig.useClusterServers()
            .setScanInterval(60000)
            .addNodeAddress(address.toArray(new String[address.size()]))
            .setReadMode(ReadMode.MASTER)
            .setPassword(StringUtils.isNotEmpty(password) ? password : null);
    this.redisson = Redisson.create(redissonConfig);

    // params
    initParams(config);
}

关于keycloak apache服务器configuration与“混合内容”的问题的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于AH01630:客户端被服务器configurationApache拒绝、Apache solrconfiguration与tomcat 6.0、keycloak(Nginx)的反向代理configuration、org.apache.commons.configuration.AbstractConfiguration的实例源码等相关知识的信息别忘了在本站进行查找喔。

本文标签: