nginx连接weblogic负载陳聽溪

之前一直用apache来做weblogic的前端,由于nginx对静态内容的出色性能,不得不转投nginx。这里就不再写weblogic的安装了。

下面来配置nginx配置文件,在/opt/nginx/conf下的nginx.conf,为了省事,直接复制我的配置文件过来:#usernobody;worker_processes10;

#error_loglogs/error.log;#error_loglogs/error.lognotice;#error_loglogs/error.loginfo;

#pidlogs/nginx.pid;

events{useepoll;//nginx处理连接的方法,epoll-高效的方法,使用于Linux内核2.6版本及以后的系统。worker_connections51200;}

#access_loglogs/access.logmain;

sendfileon;#tcp_nopushon;

#keepalive_timeout0;keepalive_timeout75;

#gzipon;

upstream99ding{server124.42.*.***:7002weight=10;server124.42.*.***:7001weight=10;}//因为我的weblogic没有做集群,所以只能用nginx自带的负载均衡,不过推荐使用weblogic的集群

#charsetkoi8-r;

#access_loglogs/host.access.logmain;

location~^/(WEB-INF)/{denyall;}

location~\.(htm|html|gif|jpg|jpeg|png|bmp|ico|rar|css|js|zip|txt|flv|swf|mid|doc|ppt|xls|pdf|txt|mp3|wma)${root/opt/html/app;expires24h;}

proxy_set_headerHost$host;proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;proxy_buffer_size4k;proxy_buffers432k;proxy_busy_buffers_size64k;proxy_temp_file_write_size64k;proxy_max_temp_file_size512m;}//最关键的地方,将jsp和do文件转给weblogic处理,这里使用的是上面创建的test(负载均衡的名字),如果不用

#error_page404/404.html;

#redirectservererrorpagestothestaticpage/50x.html#error_page500502503504/50x.html;location=/50x.html{roothtml;}

}

接下来启动服务即可,首先检查配置文件是否有错误:/opt/nginx/sbin/nginx-t-c/opt/nginx/conf/nginx.conf启动服务:/opt/nginx/sbin/nginx-c/opt/nginx/conf/nginx.conf

------------------------

==============================================

=================================================

====================================

====================================================

问题解决了,似乎是因为我对动态页面也设置了缓存才导致的,后来我把

location/{...}中的以下三行注释掉后就没有出现注销失败的问题了

proxy_cache_key$host$uri$is_args$args;proxy_cachecache_one;expires1d;看来动态页面也做缓存的话问题还真多啊

--------------------------

=================================

现在网站发展的趋势对网络负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术:

一种是通过硬件来进行,常见的硬件有比较昂贵的NetScaler、F5、Radware和Array等商用的负载均衡器,它的优点就是有专业的维护团队来对这些服务进行维护、缺点就是花销太大,所以对于规模较小的网络服务来说暂时还没有需要使用;另外一种就是类似于LVS/HAProxy、Nginx的基于Linux的开源免费的负载均衡软件策略,这些都是通过软件级别来实现,所以费用非常低廉,所以我个也比较推荐大家采用第二种方案来实施自己网站的负载均衡需求。

近期朋友刘鑫(紫雨荷雪)的项目成功上线了,PV达到了亿级/日的访问量,最前端用的是HAProxy+Keepalived双机作的负载均衡器/反向代理,整个网站非常稳定;这让我更坚定了以前跟老男孩前辈聊的关于网站架构比较合理设计的架构方案:即Nginx/HAProxy+Keepalived作Web最前端的负载均衡器,后端的MySQL数据库架构采用一主多从,读写分离的方式,采用LVS+Keepalived的方式。

在这里我也有一点要跟大家申明下:很多朋友担心软件级别的负载均衡在高并发流量冲击下的稳定情况,事实是我们通过成功上线的许多网站发现,它们的稳定性也是非常好的,宕机的可能性微乎其微,所以我现在做的项目,基本上没考虑服务级别的高可用了。相信大家对这些软件级别的负载均衡软件都已经有了很深的的认识,下面我就它们的特点和适用场合分别说明下。

LVS:使用集群技术和Linux操作系统实现一个高性能、高可用的服务器,它具有很好的可伸缩性(Scalability)、可靠性(Reliability)和可管理性(Manageability),感谢章文嵩博士为我们提供如此强大实用的开源软件。

LVS的特点是:

1、抗负载能力强、是工作在网络4层之上仅作分发之用,没有流量的产生,这个特点也决定了它在负载均衡软件里的性能最强的;

2、配置性比较低,这是一个缺点也是一个优点,因为没有可太多配置的东西,所以并不需要太多接触,大大减少了人为出错的几率;

3、工作稳定,自身有完整的双机热备方案,如LVS+Keepalived和LVS+Heartbeat,不过我们在项目实施中用得最多的还是LVS/DR+Keepalived;

4、无流量,保证了均衡器IO的性能不会收到大流量的影响;

5、应用范围比较广,可以对所有应用做负载均衡;

6、软件本身不支持正则处理,不能做动静分离,这个就比较遗憾了;其实现在许多网站在这方面都有较强的需求,这个是Nginx/HAProxy+Keepalived的优势所在。

7、如果是网站应用比较庞大的话,实施LVS/DR+Keepalived起来就比较复杂了,特别后面有WindowsServer应用的机器的话,如果实施及配置还有维护过程就比较复杂了,相对而言,Nginx/HAProxy+Keepalived就简单多了。

Nginx的特点是:

2、Nginx对网络的依赖非常小,理论上能ping通就就能进行负载功能,这个也是它的优势所在;

3、Nginx安装和配置比较简单,测试起来比较方便;

4、也可以承担高的负载压力且稳定,一般能支撑超过几万次的并发量;

5、Nginx可以通过端口检测到服务器内部的故障,比如根据服务器处理网页返回的状态码、超时等等,并且会把返回错误的请求重新提交到另一个节点,不过其中缺点就是不支持url来检测;

7、Nginx不仅仅是一款优秀的负载均衡器/反向代理软件,它同时也是功能强大的Web应用服务器。LNMP现在也是非常流行的web架构,大有和以前最流行的LAMP架构分庭抗争之势,在高流量的环境中也有很好的效果。

8、Nginx现在作为Web反向加速缓存越来越成熟了,很多朋友都已在生产环境下投入生产了,而且反映效果不错,速度比传统的Squid服务器更快,有兴趣的朋友可以考虑用其作为反向代理加速器。

HAProxy的特点是:

1、HAProxy是支持虚拟主机的,以前有朋友说这个不支持虚拟主机,我这里特此更正一下。

2、能够补充Nginx的一些缺点比如Session的保持,Cookie的引导等工作

3、支持url检测后端的服务器出问题的检测会有很好的帮助。

4、它跟LVS一样,本身仅仅就只是一款负载均衡软件;单纯从效率上来讲HAProxy更会比Nginx有更出色的负载均衡速度,在并发处理上也是优于Nginx的。

5、HAProxy可以对Mysql读进行负载均衡,对后端的MySQL节点进行检测和负载均衡,不过在后端的MySQLslaves数量超过10台时性能不如LVS,所以我向大家推荐LVS+Keepalived。

6、HAProxy的算法现在也越来越多了,具体有如下8种:

①roundrobin,表示简单的轮询,这个不多说,这个是负载均衡基本都具备的;

⑤ri,表示根据请求的URI;

⑥rl_param,表示根据请求的URl参数'balanceurl_param'requiresanURLparametername;

⑦hdr(name),表示根据HTTP请求头来锁定每一次HTTP请求;

⑧rdp-cookie(name),表示根据据cookie(name)来锁定并哈希每一次TCP请求

=======================

1、上传weblogic安装文件和nginx的源代码包(略)

2、安装weblogic8.16并破解

#groupaddbea

#useradd-d/bea-gbeaweblogic

#passwdweblogic

#chmod+xserver816_linux32.bin

#su–weblogic

$./server816_linux32.bin

(1)回车

(2)选择1,1-Yes,Iagreewiththetermsofthelicense

(3)选择1,1|CreateanewBEAHome

(4)输入/bea,"BEAHome"=[/bea](根据实际情况选择)

(5)选择1,1|Yes,UsethisBEAhomedirectory[/bea]

(6)选择1,->1|Complete

|InstallthecompleteBEAWebLogicPlatform.

(7)回车,"ProductInstallationDirectory"=[/bea/weblogic81]

(8)选择1,1|Yes,usethisproductdirectory[/bea/weblogic81]

$cp/opt/weblogic7_8_full_license/license.bea/bea/

$cp/opt/weblogic7_8_full_license/weblogic_sp.jar/bea/weblogic81/server/lib/

$chmod+x/bea/weblogic81/server/lib/weblogic_sp.jar

3、部署weblogic8.16的集群

$cd/bea/weblogic81/common/bin/

$./config.sh

(1)选择1,->1|CreateanewWebLogicconfiguration

(2)选择4,4|BasicWebLogicServerDomain8.1.6.0

(3)选择2,2|No

(4)配置管理平台信息

|Name|Value|

|__________________|_____________________|

1|*Name:|AdminServer|

2|Listenaddress:|AllLocalAddresses|

3|Listenport:|6666|

4|SSLlistenport:|N/A|

5|SSLenabled:|false|

(5)选择1,1|Yes

|Name*|Listenaddress|Listenport|SSLlistenport|SSLenabled|

|_________|_____________________|_____________|_________________|_____________|

1|lishi01|AllLocalAddresses|8001|N/A|false|

2|lishi02|AllLocalAddresses|8002|N/A|false|

(6)一路回车,直道出现以下界面

_|_________________________|_________________________________|

1|*Username:|weblogic|

2|*Userpassword:||

3|*Confirmuserpassword:||

4|Description:|Thedefaultadministrationuser|

(7)并且更改为以下

2|*Userpassword:|********|

3|*Confirmuserpassword:|********|

(8)模式的选择,这里我是测试,选择的是开发模式,根据需要自行选择

->1|DevelopmentMode

2|ProductionMode

(9)Jdk的选择,这里也是根据工程的开发使用得jdk来选择,这里我选择的sun的jdk

1|JRockitSDK1.4.2_10-8160@/bea/jrockit81sp6_142_10

2|SunSDK1.4.2_11@/bea/jdk142_11

3|OtherJavaSDK

(10)域名的安装位置,默认就好"TargetLocation"=[/bea/user_projects/domains]

(11)输入你的域名

(12)回车开始安装

4、配置集群

$cd/bea/user_projects/domains/lishi/

$viStartAdmin.sh

nohup./startWebLogic.sh>console.log&

$viStart_All_Server.sh

$chmod+xStartAdmin.sh

$./StartAdmin.sh

等待管理服务器启动后

$chmod+xStart_All_Server.sh

$./Start_All_Server.sh

(1)单击Cluster

(3)输入clustername,点击create

(4)配置组播ip以及端口

(5)添加服务器到Cluster中

(6)依次点击Machines,ConfigureanewMachine

(7)创建Machine

(8)配置ip以及端口

(9)添加服务器到Machine

5、nginx的负载均衡

#tarxzvfnginx-0.7.66.tar.gz

#cdnginx-0.7.66

#make

#makeinstall

#vi/opt/nginx/conf/nginx.conf

usernobodynobody;

worker_processes8;

error_loglogs/error.log;

#error_loglogs/error.lognotice;

#error_loglogs/error.loginfo;

pidlogs/nginx.pid;

events{

useepoll;

worker_connections51200;

includemime.types;

default_typeapplication/octet-stream;

#log_formatmain'$remote_addr-$remote_user[$time_local]"$request"'

sendfileon;

tcp_nopushon;

#keepalive_timeout0;

keepalive_timeout65;

gzipon;

gzip_min_length1k;

gzip_buffers416k;

gzip_comp_level2;

gzip_typestext/plainapplication/x-javascripttext/cssapplication/xml;

gzip_varyon;

upstreamlishi

{

server156.16.34.44:8001;

server156.16.34.44:8002;

server{

listen80;

server_name156.16.34.44;

#location/{

#roothtml;

#indexindex.htmlindex.htm;

#}

#redirectservererrorpagestothestaticpage/50x.html

#

error_page500502503504/50x.html;

location=/50x.html{

roothtml;

location/{

proxy_redirectoff;

proxy_set_headerHost$host;

proxy_set_headerX-Real-IP$remote_addr;

proxy_set_headerX-Forwarded-For$proxy_add_x_forwarded_for;

location/nginxstatus{

stub_statuson;

access_logon;

auth_basic"NginxStatus";}

#auth_basic_user_fileconf/htpassword;

======================================

Nginx是一个轻量级高性能的Web服务器,并发处理能力强,对资源消耗小,无论是静态服务器还是小网站,Nginx表现更加出色,作为Apache的补充和替代使用率越来越高.

绝大多数的Nginx运行在Linux机器上,虽然有Windows移植版,但我也没搭建过.所以本文将以Linux为例讲解,而MacOS或其他Unixlike机器上的操作应该是一样的.

1.进入/usr/local/nginx/conf/vhost目录,创建虚拟主机配置文件demo.neoease.com.conf({域名}.conf).

2.打开配置文件,添加服务如下:

includevhost/*.conf;

4.重启Nginx服务,执行以下语句.

servicenginxrestart

在前面第2步的虚拟主机服务对应的目录加入对PHP的支持,这里使用的是FastCGI,修改如下.

图片作为重要的耗流量大的静态资源,可能网站主并不希望其他网站直接引用,Nginx可以通过referer来防止外站盗链图片.

如果将WordPress的链接结构设定为/%postname%/,/%postname%.html等格式时,需要rewriteURL,WordPress提供Apache的.htaccess修改建议,但没告知Nginx该如何修改.我们可以将WordPress的虚拟主机配置修改如下:

LNMP套件在提供了WordPress为静态配置文件/usr/local/nginx/conf/wordpress.conf,在虚拟主机配置的server范围引用如下即可.

includewordpress.conf;

如果你使用LNMP套件,进入WordPress后台发现会出现404页面,wp-admin后面缺少了斜杆/,请在wordpress.conf最后添加以下语句:

rewrite/wp-admin$$scheme://$host$uri/permanent;

相对Apache,Nignx有更加强大的并发能力,而因为他对进程管理耗用资源也比较少.而Apache比Nginx有更多更成熟的可用模块,bug也比较少.卖主机的IDC选择Nignx,因为高并发允许他们创建更多虚拟主机空间更来钱;淘宝也因此改造Nignx(Tengine)作为CDN服务器,可承受更大压力.

THE END
1.什么是WEB3.0腾讯云开发者社区很多人看到WEB3.0这个概念时,可能会有疑惑,这玩意不是很早就有了吗,记得之前美团王兴还有一个四纵三横理论,其中的三横就是WEB1.0搜索、WEB2.0社交、WEB3.0移动。其实WEB3这个概念随着时间发展,不断有新的定义,本质上,还是我们期望现有的互联网能有一场新的变革。 https://cloud.tencent.com/developer/article/1957944
2.一文了解web的发展史(从web1到web3)web开发语言演变很多人在有人提到Web 2.0的时候就说,还会有Web 3.0;但目前,全球没有任何组织或人能够准确的给出 Web 3.0(简称 Web 3)的准确定义。它仍是一个处于发展早期的概念,但这个概念的内容并不是第一次出现,它与 2005 年左右开始出现的概念——Web 2.0一样,目前还并没有人能准确说出它该有的形态。 https://blog.csdn.net/Luckyy_D/article/details/126232335
3.Web1.02.03.0分别是什么意思?在了解互联网的演变过程中,我们会遇到Web1.0、Web2.0和Web3.0这三个重要的阶段。每个阶段都代表了互联网技术和用户交互方式的一次重大变革。 ? Web1.0,也就是初代的互联网,它的主要特点是静态的网页内容。这些网页主要由文字和图片构成,用户通过浏览器访问这些网页,获取信息。在这个阶段,用户主要是信息的接收者,与https://www.yoojia.com/ask/17-14153403201774258742.html
4.计算机网络期末考试题库(超级多的那种)51CTO博客39、每一个Web页面,包括主页都有一个唯一的地址,通常称该地址为(D) A、Web页面地址 B、主页地址 C、网页搜索地址 D、统一资源定位器URL 40、完成文件传输服务的TCP/IP协议是(B) A、SMTP B、FTP C、SNMP D、Telnet 41、面向终端的计算机网络称为(A) https://blog.51cto.com/u_15288224/2986873
5.Alibaba.com:Manufacturers,Suppliers,Exporters&ImportersFind quality Manufacturers, Suppliers, Exporters, Importers, Buyers, Wholesalers, Products and Trade Leads from our award-winning International Trade Site. Import & Export on alibaba.comhttp://alibaba.com/
6.小米11打电话总是自动电话中断,原来还好半个小时才会出现,现在几2022102换主板后,小米11打电话总是自动电话中断,原来还好半个小时才会出现,现在几分钟也会中断,越来越频繁了,现在只能用微信语音通话。是主板的质量不好吗? 全文 2023-03-10 ·湖北 1 mi_2N0S5w5O Xiaomi 11 · V14.0.23.1.30.DEV开发版 确实 https://web.vip.miui.com/page/info/mio/mio/detail?postId=30527866&app_version=dev.20051
7.ios跟前端开发ios前端开发是什么意思5、请先给出明确答复:推荐选前端开发,web前端可以说前途不可限量!解释原因:现在的Web前端技术可以说是越来越成熟了,Web前端市场也非常的火爆,Web前端人才也是异常的紧缺。 网页名称:ios跟前端开发 ios前端开发是什么意思 标题路径:http://chengdu.cdxwcx.cn/article/diihjdi.htmlhttp://chengdu.cdxwcx.cn/article/diihjdi.html
8.ChinaDailyWebsiteChinadaily.com.cn is the largest English portal in China, providing news, business information, BBS, learning materials. The Website has channels as China, BizChina, World, Opinion, Sports/Olympics, Entertainment, Lifestyle, Culture, Citylife, Photo, Forhttp://www.chinadaily.com.cn/
9.去中心化的Web3只是重蹈Web1Web2覆辙所以你说,Web1时代是不是去了中心化? 再说Web2。现在说Web2,都是什么Facebook、Twitter、Instagram、微信、微博、抖音之类千万亿市值霸占一方的巨头,可你稍微把记忆拉回到十几年前,Facebook、Twitter刚出来的时候都是怎么说的?是不是惊叹于降低内容生产门槛?是不是人人都可以发言?是不是自媒体时代来临? https://m.cyzone.cn/article/700717.html
10.Web3钱包解读:不是交易所的一块拼图,而是一条出路资讯区块链目前,MetaMask、Coinbase Wallet、Phantom、Rainbow一众钱包都不错,但国内的人使用起来并不方便,现在web3钱包正在证明它最懂国内的投资者,本文将为大家深度解读Web3钱包:不是交易所的一块拼图,而是一条出路 最近看到 Bitget Wallet 发币的新闻,昨天又看到他们的交易量超过了 MetaMask ,作为一个资深的 DeFi 玩家,写https://www.jb51.net/blockchain/903539.html
11.北京web前端培训几个月?6个月能学会吗?现在web前端行业的初级新人很多,但是绝大部分前端职位都要求技术过硬甚至有工作经验的人,这让应届生和转行新人怎么办呢?其实办法还是有的,那就是选择培训机构把web前端技术学好学深入,技术厉害了工作就随你选了。那北京web前端培训几个月? 据小编了解到火星时代教育的web前端工程师班需学习6个月,那么6个月的时间可https://www.hxsd.com/content/2415/
12.国内首篇比特币论文作者洪蜀宁:BTC从保守到Web3的技术挑战与潜力最近,由于RGB和其他项目的出现,人们开始关注客户端验证技术。这种技术使得在比特币上利用链下计算来执行智能合约或发行资产变得更加可行。事实上,这些项目已经得到了开发,并且现在已经可以看到,利用比特币来创建智能合约和代币系统已经变得完全可行。 接下来的关键是将这些技术大规模应用落地,将以太坊上的前几年的Web上https://www.panewslab.com/zh/articledetails/9em4niva2a0y.html
13.互联网之父:Web正在面临危险许多年前的互联网并不是现在的新用户所看到的样子,那时的网络有各种博客和网站可供选择,但如今已经被主流平台的强大影响力压缩了。这种影响力的集中创造了一批新的“守门员”,使少数几个平台能够控制想法和意见。 伯纳斯表示,Web 的未来不仅与如今已经上网的用户有关,也与那些还没有联网的人有关。当今强大的数字经https://time.geekbang.org/column/article/87208
14.一文读懂蚂蚁链最新Web3品牌Zan3、现在的Web3生态有哪些痛点?Zan能够web3带来哪些价值? 当前Web3发展仍然存在诸多难题,如交易效率存在瓶颈,安全性难以保障、用户体验不够友好等。从Web3基础设施建设的角度看,Web3在安全、性能、成本、开发体验等方面还有很多可以优化的空间。从场景和应用角度看,Web3生态缺少和物理世界及Web2世界的有效连接,从而缺https://www.528btc.com/news/116126931.html
15.WebStorm2023破解版JetBrainsWebStormUltimate2现在,您将在 Vue 模板中获得自定义组件事件的代码补全。 它在 JavaScript 和 TypeScript 中相同。 4、复制粘贴时添加组件 import 将代码从一个文件复制粘贴到另一个文件时,WebStorm 会自动添加所有必需 import。 此前纯 JavaScript、TypeScript 语言和 React 模板是这种形式。 在 WebStorm 2023.1 中,它现在也适用http://www.sd173.com/soft/9760.html
16.就业意向报告(精选12篇)熟练掌握html语言及javascript或.net、java中的一种或多种工具和平台。前景分析:现在是Web3.0:移动时代。桌面软件开发、系统开发,web软件开发都可以实现,而且可以通过web实现共享应用,如远程连线、远程操控、远程工作、远程教育等。毫无疑问,web应用开发潜力巨大,前景也非常的好~~。https://www.ruiwen.com/gongwen/baogao/850416.html
17.2023年4月12日香港Web3嘉年华要闻速览一文了解活动全貌香港将推动虚拟资产市场可持续和负责地发展,适当的监管是必须的,这样才能营造可持续的发展空间。现在是 Web3 发展的黄金机遇,也是惊心动魄的时刻,回顾历史,Web3 的发展在经历震荡后将会再次快速发展。 肖风:稳慎前行才能让Web3在香港行稳致远 万向区块链董事长及HashKey Group董事长肖风在发表致欢迎词时表示,去年https://m.weibo.cn/ttarticle/p/show?id=2309404889965917241572
18.企业消费论文范文企业要适应市场的变化网络营销论文,就必须调整市场营销战略,而现在基于Web2.0时代的电子商务平台的定制市场营销恰好能有效地实现企业满足消费者个性化需求的目标,美国营销专家斯坦利·戴维斯(Stanley Davis)指出,大规模定制营销对缓解市场供给和需求在总量和结构上的矛盾能起到重大作用,它将成为一种重要的营销方式。 https://www.gwyoo.com/haowen/97853.html