WebLogic11g-负载分发
负载均衡的实现方式有很多种,这里只介绍三种相对来说成本较低的方案(维护成本以及费用成本)weblogic自带的proxy、apache、nginx
1、weblogic自带的proxy方式:
1)需要新建proxy服务器

2)配置proxy的ip、端口,这里设置为7100

3)配置SSL的主机名验证为“无”

4)添加到machine管理


5)部署proxy应用


6)在服务器列表中启动三个server

7)测试

proxy应用的代码我压缩打包上传了
主要就是配置web的servlet,拦截所有的请求,weblogic自带的配置如下:
- <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
- <web-app>
- <servlet>
- <servlet-name>HttpClusterServlet</servlet-name>
- <servlet-class>weblogic.servlet.proxy.HttpClusterServlet</servlet-class>
- <init-param>
- <param-name>WebLogicCluster</param-name>
- |127.0.0.1:7102</param-value>
- </init-param>
- </servlet>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>/</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.jsp</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.jspx</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.htm</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.html</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.jpd</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.jcx</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.dtf</url-pattern>
- </servlet-mapping>
- <servlet-mapping>
- <servlet-name>HttpClusterServlet</servlet-name>
- <url-pattern>*.jws</url-pattern>
- </servlet-mapping>
- </web-app>
实际上,这个proxy内部会检测server的状态、负载情况,然后根据算法再将请求转发给具体的server处理。
2、apache方式:
1)下载apache,安装过程就不介绍了。下载地址为:
http://httpd.apache.org/download.cgi
2)添加weblogic插件:
weblogic11g的插件位置是:
D:\server\weblogic11\wlserver_10.3\server\plugin\win\32
注意这里与weblogic较早的版本位置不同。具体库所在目录根据操作系统版本及位数决定,我的是32位操作系统,所以就是这个目录下的mod_wl_22.so复制到apache的modules文件夹下
3)配置apache
在原有的配置最后增加如下片段
- ######################## weblogic plugin ##########################
- LoadModule weblogic_module modules/mod_wl_22.so
- <IfModule mod_weblogic.c>
- ,127.0.0.1:7102
- MatchExpression */servlet/*
- MatchExpression *.jsp
- MatchExpression *.action
- Debug OFF
- </IfModule>
主要就是设置WebLogicCluster,根据集群的server列表来设置。
注意:我这里设置的Listen端口号是8001,所以下面测试访问这个端口
4)测试

3、nginx方式:
1)下载nginx并安装(我这里是windows环境,下载地址是:
http://nginx.org/en/download.html)
2)简单配置nginx:
修改nginx/conf/nginx.conf文件,开发、学习情况,只需要简单的增加如下配置即可:
- upstream weblogic {
- weight=10;
- weight=10;
- }
- server {
- ;
- server_name weblogic;
- #charset koi8-r;
- #access_log logs/host.access.log main;
- location / {
- #root html;
- #index index.html index.htm;
- proxy_pass http://weblogic;
- }
- ……
- }
具体的意义,可以从网上找资料,这里不做详解。
3)运行
直接双击nginx.exe就可以了。
4)测试:
我这里配置的listen端口号是8001,测试如图所示:

可以查看进程列表,有nginx的进程在运行,同时可以查看nginx的logs目录下的access.log,http请求的日志都能看到。我的日志也贴上吧:
- /Sep/2013:16:55:12 +0800] "GET /weblogic HTTP/1.1" 499 0 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:55:15 +0800] "GET /weblogic HTTP/1.1" 499 0 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:56:23 +0800] "GET / HTTP/1.1" 499 0 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:50 +0800] "GET /mini-web-cluster HTTP/1.1" 302 273 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:50 +0800] "GET /mini-web-cluster/ HTTP/1.1" 302 311 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:51 +0800] "GET /mini-web-cluster/account/user.action HTTP/1.1" 302 297 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /mini-web-cluster/login.action HTTP/1.1" 200 2416 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /mini-web-cluster/css/style.css HTTP/1.1" 304 0 "http://127.0.0.1:8001/mini-web-cluster/login.action" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /mini-web-cluster/css/yui.css HTTP/1.1" 304 0 "http://127.0.0.1:8001/mini-web-cluster/login.action" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /mini-web-cluster/js/validate/jquery.validate.js HTTP/1.1" 304 0 "http://127.0.0.1:8001/mini-web-cluster/login.action" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /mini-web-cluster/js/validate/messages_cn.js HTTP/1.1" 304 0 "http://127.0.0.1:8001/mini-web-cluster/login.action" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /mini-web-cluster/js/jquery.js HTTP/1.1" 304 0 "http://127.0.0.1:8001/mini-web-cluster/login.action" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
- /Sep/2013:16:58:52 +0800] "GET /favicon.ico HTTP/1.1" 404 1214 "-" "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; Trident/6.0)"
这篇仅仅介绍负载分发的几种方式,也都是简单的配置,实际环境下还需要做相关性能测试以及配置动静分离,减少后端服务的压力。
下一篇介绍WebLogic集群中涉及的概念、原理……敬请期待。
WebLogic11g-负载分发的更多相关文章
- weblogic负载分发
博客分类: weblogic 负载均衡的实现方式有很多种,这里只介绍三种相对来说成本较低的方案(维护成本以及费用成本)weblogic自带的proxy.apache.nginx 1.weblogic自 ...
- k8s之HTTP请求负载分发
一.导读 对于基于HTTP的服务来说,不同的URL地址经常对应不同的后端服务或者虚拟服务器,通常的做法是在应用前添加一个反向代理服务器Nginx,进行请求的负载转发,在Spring Cloud这个微服 ...
- Linux巩固记录(9) keepalived+nginx搭建高可用负载分发环境
环境准备(继续服用hadoop节点) slave1 192.168.2.201(CentOs 7) slave2 192.168.2.202(CentOs 7) slave1 和 slave2 上 ...
- 实现跨云应用——基于DNS的负载均衡
“公有云可以作为传统IT资源的延展,能帮助客户应对不断变化的需求”——这是我们在向客户介绍公有云产品时经常说的一句话.我们来看一个具体的需求: 某客户有一个web站点,部署在自有的数据中心(on-pr ...
- DB层面上的设计 分库分表 读写分离 集群化 负载均衡
第1章 引言 随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题.对于一个大型的 互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载.对于系统的稳定性和扩展性造成了极大的 ...
- Ubuntu下配置 keepalived+nginx+tomcat 负载均衡
本文力图阐述在 Ubuntu Server 环境下使用 Keepalived + Nginx + Tomcat 搭建高可用负载均衡环境的操作步骤和简约配置,这里不涉及性能调优.先说一下他们各自扮演的角 ...
- Weblogic 12c 负载均衡和session复制
在上一篇,我们介绍了weblogic集群的部署和session的复制,如何将请求负载均衡到这个三个服务器上呢? 这里提供两种方式:(1)weblogic自带的proxy代理 (2) ng ...
- Nginx(四)------nginx 负载均衡
在上一篇博客我们介绍了 Nginx 一个很重要的功能——代理,包括正向代理和反向代理.这两个代理的核心区别是:正向代理代理的是客户端,而反向代理代理的是服务器.其中我们又重点介绍了反向代理,以及如何通 ...
- nginx负载均衡总结
在关于高并发负载均衡一文中已经提到,企业在解决高并发问题时,一般有两个方向的处理策略,软件.硬件,硬件上添加负载均衡器分发大量请求,软件上可在高并发瓶颈处:数据库+web服务器两处添加解决方案,其中w ...
随机推荐
- python正则表达式与Re库
正则表达式是用来简洁表达一组字符串的表达式,一行胜千言,有点类似于数列的通项公式. 在python中提供了re库(regular expression)即正则表达式库,内置于python的标准库中,导 ...
- JVM中判断对象是否存活的方法
Java中几乎所有的对象实例都存放在堆中,在垃圾收集器对堆内存进行回收前,第一件事情就是要确定哪些对象还“存活”,哪些对象已经“死去”(即不可能再通过任何途径被使用). 引用计数算法 首先需要声明,至 ...
- Tomcat 报错的解决方法:The APR based Apache Tomcat Native library which allows optimal
下载 http://tomcat.heanet.ie/native/1.1.12/binaries/win32/tcnative-1.dll将这个文件复制到C:\WINDOWS\system32\,. ...
- 解决Mysql数据库拒绝远程连接和忘记密码的问题
解决数据库忘记密码的问题 ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES) 编辑m ...
- 使用FFMPEG在windows平台下推rtmp流
使用FFMPEG在windows平台下推rtmp流 工作中习惯在Linux下面使用FFmpeg模拟推rtmp流,无奈家中的电脑都是windows系统,需要利用家中的带宽来测试流媒体服务器的性能.所以研 ...
- 《An Industrial-Strength Audio Search Algorithm》译文
随着微信摇一摇逐渐被大众所广泛使用,听歌识曲功能也开始被关注.目前来看,像音乐雷达和微信摇一摇都采用了经典的shazam算法,为了使大家对shazam算法更加了解,我将其经典论文进行了翻译,希望对大家 ...
- Linux基础指令
Linux基础指令 只写了最简单的一些文件操作,基本没有带参数 查看当前目录 pwd 跳转到某路径 cd 查看当前目录下的文件 ls ls -l // -l 查看详细信息 打开当前所在文件夹 open ...
- iOS升级HTTPS通过ATS你所要知道的
由于苹果规定2017年1月1日以后,所有APP都要使用HTTPS进行网络请求,否则无法上架,因此研究了一下在iOS中使用HTTPS请求的实现.网上搜索了一些比较有用资料,大家可以参考下 苹果强制升级的 ...
- Android Multimedia框架总结(二十三)MediaCodec补充及MediaMuxer引入(附案例)
请尊重分享成果,转载请注明出处,本文来自逆流的鱼yuiop,原文链接:http://blog.csdn.net/hejjunlin/article/details/53729575 前言:前面几章都是 ...
- Swagger API接口管理
介绍 Swagger API框架,用于管理项目中API接口,属当前最流行的API接口管理工具. Swagger功能强大,UI界面漂亮,支持在线测试等! Swagger包 ...