??xml version="1.0" encoding="utf-8" standalone="yes"?>无码人妻少妇久久中文字幕蜜桃,欧美一区二区三区久久综,久久精品欧美日韩精品http://www.shnenglu.com/Hero/category/21144.html 一D|q封存的记忆Q随风而去zh-cnThu, 14 Apr 2016 21:31:47 GMTThu, 14 Apr 2016 21:31:47 GMT60【{载】浅谈JavaScript的事件响?/title><link>http://www.shnenglu.com/Hero/archive/2016/04/14/213274.html</link><dc:creator>Hero</dc:creator><author>Hero</author><pubDate>Thu, 14 Apr 2016 03:12:00 GMT</pubDate><guid>http://www.shnenglu.com/Hero/archive/2016/04/14/213274.html</guid><wfw:comment>http://www.shnenglu.com/Hero/comments/213274.html</wfw:comment><comments>http://www.shnenglu.com/Hero/archive/2016/04/14/213274.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/Hero/comments/commentRss/213274.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/Hero/services/trackbacks/213274.html</trackback:ping><description><![CDATA[     摘要: 每当猴子们问我JavaScript和DOM里啥东西最牛逼时Q我都会一巴掌打回去:卧槽q用问么当然是事件响应了啊!没它你能有时间和我讨个?你早d地搬砖去了好么!览器没有事件响应就没有行ؓ交互Q那直就是一夜回到解攑։的感觉啊。此外,以事仉动得功能解耦也是个相当高端大气的技巧了Q嘛Q以此ؓȝNode.js 现在可是风生水v的说。那现在我们再抠抠事g监听的相兛_Q让大家在心?..  <a href='http://www.shnenglu.com/Hero/archive/2016/04/14/213274.html'>阅读全文</a><img src ="http://www.shnenglu.com/Hero/aggbug/213274.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/Hero/" target="_blank">Hero</a> 2016-04-14 11:12 <a href="http://www.shnenglu.com/Hero/archive/2016/04/14/213274.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>【{载】负载均衡一Q四层和七层负蝲均衡的区别)http://www.shnenglu.com/Hero/archive/2016/04/12/213250.htmlHeroHeroTue, 12 Apr 2016 13:02:00 GMThttp://www.shnenglu.com/Hero/archive/2016/04/12/213250.htmlhttp://www.shnenglu.com/Hero/comments/213250.htmlhttp://www.shnenglu.com/Hero/archive/2016/04/12/213250.html#Feedback0http://www.shnenglu.com/Hero/comments/commentRss/213250.htmlhttp://www.shnenglu.com/Hero/services/trackbacks/213250.htmlQ一Q?/p>

  单理解四层和七层负蝲均衡:

  ① 所谓四层就是基于IP+端口的负载均衡;七层是ZURL{应用层信息的负载均衡;同理Q还有基于MAC地址的二层负载均衡和ZIP地址的三层负载均衡?换句换说Q二层负载均衡会通过一个虚拟MAC地址接收hQ然后再分配到真实的MAC地址Q三层负载均衡会通过一个虚拟IP地址接收hQ然后再分配到真实的IP地址Q四层通过虚拟IP+端口接收hQ然后再分配到真实的服务器;七层通过虚拟的URL或主机名接收hQ然后再分配到真实的服务器?/p>

  ② 所谓的四到七层负蝲均衡Q就是在对后台的服务器进行负载均衡时Q依据四层的信息或七层的信息来决定怎么栯{发流量?比如四层的负载均衡,是通过发布三层的IP地址QVIPQ,然后加四层的端口P来决定哪些流量需要做负蝲均衡Q对需要处理的量q行NAT处理Q{发至后台服务器,q记录下q个TCP或者UDP的流量是由哪台服务器处理的,后箋q个q接的所有流量都同样转发到同一台服务器处理。七层的负蝲均衡Q就是在四层的基上(没有四层是绝对不可能有七层的Q,再考虑应用层的特征Q比如同一个Web服务器的负蝲均衡Q除了根据VIP?0端口辨别是否需要处理的量Q还可根据七层的URL、浏览器cd、语a来决定是否要q行负蝲均衡。D个例子,如果你的Web服务器分成两l,一l是中文语言的,一l是英文语言的,那么七层负蝲均衡可以当用户来访问你的域名时Q自动L别用戯aQ然后选择对应的语a服务器组q行负蝲均衡处理?/p>

  ③ 负蝲均衡器通常UCؓ四层交换机或七层交换机。四层交换机主要分析IP层及TCP/UDP层,实现四层量负蝲均衡。七层交换机除了支持四层负蝲均衡以外Q还有分析应用层的信息,如HTTP协议URI或Cookie信息?/p>

  1、负载均衡分为L4 switchQ四层交换)Q即在OSIW?层工作,是TCP层啦。此ULoad Balance不理解应用协议(如HTTP/FTP/MySQL{等Q。例子:LVSQF5?/p>

  2、另一U叫做L7 switchQ七层交换)QOSI的最高层Q应用层。此Ӟ该Load Balancer能理解应用协议。例子:  haproxyQMySQL Proxy?/p>

  注意Q上面的很多Load Balancer既可以做四层交换Q也可以做七层交换?/p>

  Q二Q?/p>

  负蝲均衡讑֤也常被称?四到七层交换?Q那么四层和七层两者到底区别在哪里Q?/strong>

  W一Q技术原理上的区别?/strong>

  所谓四层负载均?/strong>Q也是主要通过报文中的目标地址和端口,再加上负载均衡设备设|的服务器选择方式Q决定最l选择的内部服务器?/p>

  以常见的TCPZQ负载均衡设备在接收到第一个来自客L的SYN hӞ即通过上述方式选择一个最佳的服务器,q对报文中目标IP地址q行修改(改ؓ后端服务器IPQ,直接转发l该服务器。TCP的连接徏立,即三ơ握手是客户端和服务器直接徏立的Q负载均衡设备只是vC个类D\由器的{发动作。在某些部v情况下,Z证服务器回包可以正确q回l负载均衡设备,在{发报文的同时可能q会Ҏ文原来的源地址q行修改?/p>

  所谓七层负载均?/strong>Q也UCؓ“内容交换”Q也是主要通过报文中的真正有意义的应用层内容,再加上负载均衡设备设|的服务器选择方式Q决定最l选择的内部服务器?/p>

  以常见的TCPZQ负载均衡设备如果要Ҏ真正的应用层内容再选择服务器,只能先代理最l的服务器和客户端徏立连?三次握手)后,才可能接受到客户端发送的真正应用层内容的报文Q然后再Ҏ该报文中的特定字D,再加上负载均衡设备设|的服务器选择方式Q决定最l选择的内部服务器。负载均衡设备在q种情况下,更类g一个代理服务器。负载均衡和前端的客L以及后端的服务器会分别徏立TCPq接。所以从q个技术原理上来看Q七层负载均衡明昄对负载均衡设备的要求更高Q处理七层的能力也必然会低于四层模式的部|方式?/p>

  W二Q应用场景的需求?/strong>

  七层应用负蝲的好处,是得整个网l更"?/strong>"。例如访问一个网站的用户量Q可以通过七层的方式,对囄cȝh转发到特定的囄服务器ƈ可以使用~存技术;对文字cȝh可以转发到特定的文字服务器ƈ可以使用压羃技术。当然这只是七层应用的一个小案例Q从技术原理上Q这U方式可以对客户端的h和服务器的响应进行Q意意义上的修改,极大的提升了应用pȝ在网l层的灵zL。很多在后台Q例如Nginx或者Apache上部|的功能可以前移到负载均衡设备上Q例如客戯求中的Header重写Q服务器响应中的关键字过滤或者内Ҏ入等功能?/p>

  另外一个常常被提到功能?strong style="margin: 0px; padding: 0px; color: #333333;">?/strong>安全性。网l中最常见的SYN FlooddQ即黑客控制众多源客LQ用虚假IP地址对同一目标发送SYNdQ通常q种d会大量发送SYN报文Q耗尽服务器上的相兌源,以达到Denial of Service(DoS)的目的。从技术原理上也可以看出,四层模式下这些SYNd都会被{发到后端的服务器上;而七层模式下q些SYNd自然在负载均衡设备上截止,不会影响后台服务器的正常q营。另外负载均衡设备可以在七层层面讑֮多种{略Q过滤特定报文,例如SQL Injection{应用层面的特定d手段Q从应用层面q一步提高系l整体安全?/p>

  现在?层负载均衡,主要q是着重于应用HTTP协议Q所以其应用范围主要是众多的|站或者内部信息^台等ZB/S开发的pȝ?4层负载均衡则对应其他TCP应用Q例如基于C/S开发的ERP{系l?/p>

  W三Q七层应用需要考虑的问题?a target="_blank" style="margin: 0px; padding: 0px; color: #1a64a2; text-decoration: none;">

  1Q是否真的必?/strong>Q七层应用的可以提高流量智能化Q同时必不可免的带来讑֤配置复杂Q负载均衡压力增高以及故障排查上的复杂性等问题。在设计pȝ旉要考虑四层七层同时应用的؜杂情c?/p>

  2Q是否真的可以提高安全?/strong>。例如SYN FlooddQ七层模式的将q些量从服务器屏蔽Q但负蝲均衡讑֤本n要有强大的抗DDoS能力Q否则即使服务器正常而作Z枢调度的负蝲均衡讑֤故障也会D整个应用的崩溃?/p>

  3Q是否有_的灵zd。七层应用的优势是可以让整个应用的流量智能化Q但是负载均衡设备需要提供完善的七层功能Q满_h据不同情늚Z应用的调度。最单的一个考核是能否取代后台Nginx或者Apache{服务器上的调度功能。能够提供一个七层应用开发接口的负蝲均衡讑֤Q可以让客户Ҏ需求Q意设定功能,才真正有可能提供强大的灵zL和性?/p>

  Q本节出?“ADC技术博?#8221; 博客Q请务必保留此出处http://virtualadc.blog.51cto.com/3027116/591396Q?/p>

  Q三Q?/p>

  负蝲均衡四七层介l?

  负蝲均衡QLoad BalanceQ徏立在现有|络l构之上Q它提供了一U廉h效透明的方法扩展网l设备和服务器的带宽、增加吞吐量、加强网l数据处理能力、提高网l的灉|性和可用性?/p>

  负蝲均衡有两斚w的含义:首先Q大量的q发讉K或数据流量分担到多台节点讑֤上分别处理,减少用户{待响应的时_其次Q单个重负蝲的运分担到多台节点讑֤上做q行处理Q每个节点设备处理结束后Q将l果汇总,q回l用Ppȝ处理能力得到大幅度提高?/p>

  本文所要介l的负蝲均衡技术主要是指在均衡服务器群中所有服务器和应用程序之间流量负载的应用Q目前负载均衡技术大多数是用于提高诸如在Web服务器、FTP服务器和其它关键d服务器上的Internet服务器程序的可用性和可׾~性?/p>

  负蝲均衡技术分c?/strong>

  目前有许多不同的负蝲均衡技术用以满不同的应用需求,下面从负载均衡所采用的设备对象、应用的|络层次Q指OSI参考模型)及应用的地理l构{来分类?/p>

  ?g负蝲均衡

  软g负蝲均衡解决Ҏ是指在一台或多台服务器相应的操作pȝ上安装一个或多个附加软g来实现负载均衡,如DNS Load BalanceQCheckPoint Firewall-1 ConnectControl{,它的优点是基于特定环境,配置单,使用灉|Q成本低廉,可以满一般的负蝲均衡需求?/p>

  软g解决Ҏ~点也较多,因ؓ每台服务器上安装额外的Y件运行会消耗系l不定量的资源,是功能强大的模块,消耗得多Q所以当q接h特别大的时候,软g本n会成为服务器工作成|的一个关键;软g可扩展性ƈ不是很好Q受到操作系l的限制Q由于操作系l本w的BugQ往往会引起安全问题?/p>

  g负蝲均衡解决Ҏ是直接在服务器和外部|络间安装负载均衡设备,q种讑֤我们通常UC载均衡器Q由于专门的讑֤完成专门的Q务,独立于操作系l,整体性能得到大量提高Q加上多样化的负载均衡策略,化的量理Q可辑ֈ最佳的负蝲均衡需求?nbsp;

  负蝲均衡器有多种多样的Ş式,除了作ؓ独立意义上的负蝲均衡器外Q有些负载均衡器集成在交换设备中Q置于服务器与Internet链接之间Q有些则以两块网l适配器将q一功能集成到PC中,一块连接到Internet上,一块连接到后端服务器群的内部网l上?/p>

  一般而言Q硬件负载均衡在功能、性能上优于Y件方式,不过成本昂贵?/p>

  本地/全局负蝲均衡

  负蝲均衡从其应用的地理结构上分ؓ本地负蝲均衡(Local Load Balance)和全局负蝲均衡(Global Load BalanceQ也叫地域负载均?Q本地负载均衡是指对本地的服务器做负蝲均衡Q全局负蝲均衡是指对分别放|在不同的地理位|、有不同|络l构的服务器间作负载均衡?/p>

  本地负蝲均衡能有效地解决数据量q大、网l负药重的问题Qƈ且不需p昂贵开支购|性能卓越的服务器Q充分利用现有设备,避免服务器单Ҏ障造成数据量的损失。其有灵zdL均衡{略把数据流量合理地分配l服务器内的服务器共同负担。即使是再给现有服务器扩充升U,也只是简单地增加一个新的服务器到服务群中,而不需改变现有|络l构、停止现有的服务?nbsp;

  全局负蝲均衡主要用于在一个多区域拥有自己服务器的站点Qؓ了全球用户只以一个IP地址或域名就能访问到自己最q的服务器,从而获得最快的讉K速度Q也可用于子公司分散站点分布q的大公叔R过IntranetQ企业内部互联网Q来辑ֈ资源l一合理分配的目的?/p>

  |络层次上的负蝲均衡

  针对|络上负载过重的不同瓉所在,从网l的不同层次入手Q我们可以采用相应的负蝲均衡技术来解决现有问题?nbsp;

  随着带宽增加Q数据流量不断增大,|络核心部分的数据接口将面瓉问题Q原有的单一U\很难满需求,而且U\的升U又q于昂贵甚至难以实现Q这时就可以考虑采用链\聚合QTrunkingQ技术?/p>

  链\聚合技术(W二层负载均衡)多条物理链路当作一条单一的聚合逻辑链\使用Q网l数据流量由聚合逻辑链\中所有物理链路共同承担,由此在逻辑上增大了链\?/a>定wQ其能满带宽增加的需求?/p>

  C负蝲均衡技术通常操作于网l的W四层或W七层。第四层负蝲均衡一个Internet上合法注册的IP地址映射为多个内部服务器的IP地址Q对每次 TCPq接h动态用其中一个内部IP地址Q达到负载均衡的目的。在W四层交换机中,此种均衡技术得到广泛的应用Q一个目标地址是服务器VIPQ虚?IPQVirtual IP addressQ连接请求的数据包流l交换机Q交换机Ҏ源端和目的IP地址、TCP或UDP端口号和一定的负蝲均衡{略Q在服务器IP和VIP间进行映,选取服务器群中最好的服务器来处理q接h?/p>

  W七层负载均衡控制应用层服务的内容,提供了一U对讉K量的高层控制方式,适合对HTTP服务器群的应用。第七层负蝲均衡技术通过查流l的HTTP报头Q根据报头内的信息来执行负蝲均衡d?nbsp;

  W七层负载均衡优点表现在如下几个斚wQ?nbsp;

  通过对HTTP报头的检查,可以出HTTP400?00?00pd的错误信息,因而能透明地将q接h重新定向到另一台服务器Q避免应用层故障?/p>

  可根据流l的数据cdQ如判断数据包是囑փ文g、压~文件或多媒体文件格式等Q,把数据流量引向相应内容的服务器来处理Q增加系l性能?/p>

  能根据连接请求的cdQ如是普通文本、图象等静态文档请求,q是asp、cgi{的动态文档请求,把相应的h引向相应的服务器来处理,提高pȝ的性能及安全性?/p>

  W七层负载均衡受到其所支持的协议限Ӟ一般只有HTTPQ,q样限制了它应用的q泛性,q且查HTTP报头会占用大量的pȝ资源Q势必会影响到系l的性能Q在大量q接h的情况下Q负载均衡设备自w容易成为网l整体性能的瓶颈?/p>

  负蝲均衡{略

  在实际应用中Q我们可能不想仅仅是把客L的服务请求^均地分配l内部服务器Q而不服务器是否宕机。而是想Pentium III服务器比Pentium II能接受更多的服务hQ一台处理服务请求较的服务器能分配到更多的服务hQ出现故障的服务器将不再接受服务h直至故障恢复{等?/p>

  选择合适的负蝲均衡{略Q多个讑֤能很好的共同完成dQ消除或避免现有|络负蝲分布不均、数据流量拥挤反应时间长的瓶颈。在各负载均衡方式中Q针对不同的应用需求,在OSI参考模型的W二、三、四、七层的负蝲均衡都有相应的负载均衡策略?/p>

  负蝲均衡{略的优劣及其实现的难易E度有两个关键因素:一、负载均衡算法,二、对|络pȝ状况的检方式和能力?nbsp;

  考虑到服务请求的不同cd、服务器的不同处理能力以及随机选择造成的负载分配不均匀{问题,Z更加合理的把负蝲分配l内部的多个服务器,需要应用相应的能够正确反映各个服务器处理能力及|络状态的负蝲均衡法Q?/p>

  轮@均衡QRound RobinQ:每一ơ来自网l的h轮流分配l内部中的服务器Q从1至N然后重新开始。此U均衡算法适合于服务器l中的所有服务器都有相同的Yg配置q且q_服务h相对均衡的情c?/p>

  权重轮@均衡QWeighted Round RobinQ:Ҏ服务器的不同处理能力Q给每个服务器分配不同的权|使其能够接受相应权值数的服务请求。例如:服务器A的权D设计?QB的权值是 3QC的权值是6Q则服务器A、B、C分别接受到10%?0Q?0Q的服务h。此U均衡算法能保高性能的服务器得到更多的用率Q避免低性能的服务器负蝲q重?/p>

  随机均衡QRandomQ:把来自网l的h随机分配l内部中的多个服务器?/p>

  权重随机均衡QWeighted RandomQ:此种均衡法cM于权重轮循算法,不过在处理请求分担时是个随机选择的过E?/p>

  响应速度均衡QResponse TimeQ:负蝲均衡讑֤对内部各服务器发Z个探请求(例如PingQ,然后Ҏ内部中各服务器对探测h的最快响应时间来军_哪一台服务器来响应客L的服务请求。此U均衡算法能较好的反映服务器的当前运行状态,但这最快响应时间仅仅指的是负蝲均衡讑֤与服务器间的最快响应时_而不是客L与服务器间的最快响应时间?/p>

  最连接数均衡QLeast ConnectionQ:客户端的每一ơ请求服务在服务器停留的旉可能会有较大的差异,随着工作旉加长Q如果采用简单的轮@或随机均衡算法,每一台服务器上的q接q程可能会生极大的不同Qƈ没有辑ֈ真正的负载均衡。最连接数均衡法对内部中需负蝲的每一台服务器都有一个数据记录,记录当前该服务器正在处理的连接数量,当有新的服务q接hӞ把当前h分配l连接数最的服务器,使均衡更加符合实际情况,负蝲更加均衡。此U均衡算法适合长时处理的请求服务,如FTP?nbsp;

  处理能力均衡Q此U均衡算法将把服务请求分配给内部中处理负PҎ服务器CPU型号、CPU数量、内存大及当前q接数等换算而成Q最ȝ服务器,׃考虑C内部服务器的处理能力及当前网l运行状况,所以此U均衡算法相Ҏ说更加精,其适合q用到第七层Q应用层Q负载均衡的情况下?/p>

  DNS响应均衡QFlash DNSQ:在Internet上,无论是HTTP、FTP或是其它的服务请求,客户端一般都是通过域名解析来找到服务器切的IP地址的。在此均衡算法下Q分处在不同地理位置的负载均衡设备收到同一个客L的域名解析请求,q在同一旉内把此域名解析成各自相对应服务器的IP地址Q即与此负蝲均衡讑֤在同一位地理位|的服务器的IP地址Qƈq回l客LQ则客户端将以最先收到的域名解析IP地址来l请求服务,而忽略其它的IP地址响应。在U均衡策略适合应用在全局负蝲均衡的情况下Q对本地负蝲均衡是没有意义的?/p>

  管有多U的负蝲均衡法可以较好的把数据量分配l服务器去负载,但如果负载均衡策略没有对|络pȝ状况的检方式和能力Q一旦在某台服务器或某段负蝲均衡讑֤与服务器|络间出现故障的情况下,负蝲均衡讑֤依然把一部分数据量引向那台服务器,q势必造成大量的服务请求被丢失Q达不到不间断可用性的要求。所以良好的负蝲均衡{略应有对网l故障、服务器pȝ故障、应用服务故障的方式和能力Q?/p>

  Ping侦测Q通过ping的方式检服务器及网l系l状况,此种方式单快速,但只能大致检出|络及服务器上的操作pȝ是否正常Q对服务器上的应用服务检就无能为力了?/p>

  TCP Open侦测Q每个服务都会开放某个通过TCPq接Q检服务器上某个TCP端口Q如Telnet?3口,HTTP?0口等Q是否开放来判断服务是否正常?/p>

  HTTP URL侦测Q比如向HTTP服务器发Z个对main.html文g的访问请求,如果收到错误信息Q则认ؓ服务器出现故障?/p>

  负蝲均衡{略的优劣除受上面所讲的两个因素影响外,在有些应用情况下Q我们需要将来自同一客户端的所有请求都分配l同一台服务器去负担,例如服务器将客户端注册、购物等服务h信息保存的本地数据库的情况下Q把客户端的子请求分配给同一台服务器来处理就昄臛_重要了。有两种方式可以解决此问题,一是根据IP地址把来自同一客户端的多次h分配l同一台服务器处理Q客LIP地址与服务器的对应信息是保存在负载均衡设备上的;二是在客L览?cookie内做独一无二的标识来把多ơ请求分配给同一台服务器处理Q适合通过代理服务器上|的客户端?/p>

  q有一U\径外q回模式QOut of Path ReturnQ,当客Lq接h发送给负蝲均衡讑֤的时候,中心负蝲均衡讑֤请求引向某个服务器Q服务器的回应请求不再返回给中心负蝲均衡讑֤Q即l过量分配器,直接q回l客LQ因此中心负载均衡设备只负责接受q{发请求,其网l负担就减少了很多,q且l客L提供了更快的响应旉。此U模式一般用于HTTP服务器群Q在各服务器上要安装一块虚拟网l适配器,q将其IP地址设ؓ服务器群的VIPQ这h能在服务器直接回应客Lh旉利的达成三次握手?/p>

  负蝲均衡实施要素

  负蝲均衡Ҏ应是在网站徏讑ֈ期就应考虑的问题,不过有时随着讉K量的爆炸性增长,出决策者的意料Q这也就成ؓ不得不面对的问题。当我们在引入某U负载均衡方案乃臛_体实施时Q像其他的许多方案一P首先是确定当前及来的应用需求,然后在代价与收效之间做出权衡?/p>

  针对当前及将来的应用需求,分析|络瓉的不同所在,我们需要确立是采用哪一cȝ负蝲均衡技术,采用什么样的均衡策略,在可用性、兼Ҏ、安全性等{方面要满多大的需求,如此{等?nbsp;

  不管负蝲均衡Ҏ是采用花费较的软g方式Q还是购C价高昂在性能功能上更强的W四层交换机、负载均衡器{硬件方式来实现Q亦或其他种cM同的均衡技术,下面q几w是我们在引入均衡Ҏ时可能要考虑的问题:

  性能Q性能是我们在引入均衡Ҏ旉要重点考虑的问题,但也是一个最难把握的问题。衡量性能时可每U钟通过|络的数据包数目做ؓ一个参敎ͼ另一个参数是均衡Ҏ中服务器所能处理的最大ƈ发连接数目,但是Q假设一个均衡系l能处理百万计的q发q接敎ͼ可是却只能以每秒2个包的速率转发Q这昄是没有Q何作用的。性能的优劣与负蝲均衡讑֤的处理能力、采用的均衡{略息息相关Qƈ且有两点需要注意:一、均衡方案对服务器群整体的性能Q这是响应客Lq接h速度的关键;二、负载均衡设备自w的性能Q避免有大量q接h时自w性能不而成为服务瓶颈。有时我们也可以考虑采用混合型负载均衡策略来提升服务器群的M性能Q如DNS负蝲均衡与NAT负蝲均衡相结合。另外,针对有大量静态文档请求的站点Q也可以考虑采用高速缓存技术,相对来说更节省费用,更能提高响应性能Q对有大量ssl/xml内容传输的站点,更应考虑采用ssl/xml加速技术?/p>

  可扩展性:IT技术日新月异,一q以前最新的产品Q现在或许已是网l中性能最低的产品Q业务量的急速上升,一q前的网l,现在需要新一轮的扩展。合适的均衡解决Ҏ应能满q些需求,能均衡不同操作系l和gq_之间的负载,能均衡HTTP、邮件、新闅R代理、数据库、防火墙?Cache{不同服务器的负载,q且能以对客L完全透明的方式动态增加或删除某些资源?/p>

  灉|性:均衡解决Ҏ应能灉|地提供不同的应用需求,满应用需求的不断变化。在不同的服务器有不同的应用需求时Q应有多L均衡{略提供更广泛的选择?/p>

  可靠性:在对服务质量要求较高的站点,负蝲均衡解决Ҏ应能为服务器提供完全的定w性和高可用性。但在负载均衡设备自w出现故障时Q应该有良好的冗余解x案,提高可靠性。用冗余时Q处于同一个冗余单元的多个负蝲均衡讑֤必须h有效的方式以便互相进行监控,保护pȝ可能地避免遭受到重大故障的损失?/p>

  易管理性:不管是通过软gq是g方式的均衡解x案,我们都希望它有灵zR直观和安全的管理方式,q样便于安装、配|、维护和监控Q提高工作效率,避免差错。在g负蝲均衡讑֤上,目前主要有三U管理方式可供选择Q一、命令行接口QCLIQCommand Line InterfaceQ,可通过l端q接负蝲均衡讑֤串行接口来管理,也能telnetq程d理Q在初始化配|时Q往往要用到前者;二、图形用h口(GUIQGraphical User InterfacesQ,有基于普通web늚理Q也有通过Java Applet q行安全理Q一般都需要管理端安装有某个版本的览器;三、SNMPQSimple Network Management ProtocolQ简单网l管理协议)支持Q通过W三方网l管理Y件对W合SNMP标准的设备进行管理?br />
原文链接
http://kb.cnblogs.com/page/188170/



Hero 2016-04-12 21:02 发表评论
]]>
Tomcat Manager用户配置http://www.shnenglu.com/Hero/archive/2015/10/29/212146.htmlHeroHeroThu, 29 Oct 2015 07:54:00 GMThttp://www.shnenglu.com/Hero/archive/2015/10/29/212146.htmlhttp://www.shnenglu.com/Hero/comments/212146.htmlhttp://www.shnenglu.com/Hero/archive/2015/10/29/212146.html#Feedback0http://www.shnenglu.com/Hero/comments/commentRss/212146.htmlhttp://www.shnenglu.com/Hero/services/trackbacks/212146.htmlTomcat Manager是Tomcat自带的、用于对Tomcat自n以及部v在Tomcat上的应用q行理的web应用。Tomcat是Java领域使用最q泛的服务器之一Q因此Tomcat Manager也成Z使用非常普遍的功能应用?/p>

在默认情况下QTomcat Manager是处于禁用状态的。准地_Tomcat Manager需要以用户角色q行dq授权才能用相应的功能Q不qTomcatq没有配|Q何默认的用户Q因此需要我们进行相应的用户配置之后才能使用Tomcat Manager?/p>

Tomcat Manager的用户配|是?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">Tomcat安装目录/conf/tomcat-users.xml文g中进行管理的?/p>

Tomcat Manager的用户配|非常简单,下面我们以一个具体的配置ZQ?/p>

<tomcat-users>
<role rolename="manager-gui"/>
<role rolename="manager-script"/>
<user username="tomcat" password="tomcat" roles="manager-gui"/>
<user username="admin" password="123456" roles="manager-script"/>
</tomcat-users>

如上所C,我们只需要在tomcat-users节点中配|相应的role(角色/权限)?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">user(用户)卛_。一?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">user节点表示单个用户Q属?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">username?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">password分别表示d的用户名和密码,属?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">roles表示该用h具备的权限?/p>

user节点?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">roles属性grole节点?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">rolename属性值相对应Q表C当前用户具备该role节点所表示的角色权限。当Ӟ一个用户可以具备多U权限,因此属?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">roles的值可以是多个rolenameQ多?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">rolename之间以英文逗号隔开卛_?/p>

E加思考,我们应该猜到Q?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">rolename的属性值ƈ不是随意的内容,否则Tomcat怎么能够知道我们随便定义?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">rolename表示什么样的权限呢。实际上QTomcat已经为我们定义了4U不同的角色——也就??code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">rolenameQ我们只需要用Tomcat为我们定义的q几U角色就_满我们的工作需要了?/p>

以下是Tomcat Manager 4U角色的大致介绍(下面URL中的*为通配W?Q?/p>

manager-gui
允许讉Khtml接口(即URL路径?manager/html/*)
manager-script
允许讉KU文本接?即URL路径?manager/text/*)
manager-jmx
允许讉KJMX代理接口(即URL路径?manager/jmxproxy/*)
manager-status
允许讉KTomcat只读状态页?即URL路径?manager/status/*)

从Tomcat Manager内部配置文g中可以得知,manager-gui?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-script?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-jmx均具?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-status的权限,也就是说Q?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-gui?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-script?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-jmx三种角色权限无需再额外添?code style="margin: 0px 3px; padding: 1px 4px; border: 1px solid #e1e1e8; outline: 0px; vertical-align: baseline; font-family: Consolas, Monaco, Menlo, 宋体; color: #dd1144; border-radius: 3px; background: #f7f7f9;">manager-status权限Q即可直接访问\?q style="margin: 0px; padding: 0px; border: 1px dotted #778855; outline: 0px; vertical-align: baseline; background: none 0px 0px repeat scroll #f5f5f5;">/manager/status/*?/p>

Hero 2015-10-29 15:54 发表评论
]]>
【hibernate】hbm2ddl.auto配置详解http://www.shnenglu.com/Hero/archive/2015/08/26/211687.htmlHeroHeroWed, 26 Aug 2015 07:19:00 GMThttp://www.shnenglu.com/Hero/archive/2015/08/26/211687.htmlhttp://www.shnenglu.com/Hero/comments/211687.htmlhttp://www.shnenglu.com/Hero/archive/2015/08/26/211687.html#Feedback0http://www.shnenglu.com/Hero/comments/commentRss/211687.htmlhttp://www.shnenglu.com/Hero/services/trackbacks/211687.html

hibernate.hbm2ddl.auto配置详解

一?span style="font-weight: normal; font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">        配置使用方式

hibernate.cfg.xml ?/span>hibernate.hbm2ddl.auto配置节点如下Q?/span>

<properties>
  <property name="hibernate.show_sql" value="true" />
 
  <property name="hibernate.hbm2ddl.auto" value="create" />
</properties>

二?span style="font-weight: normal; font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">        官方解释

Hibernate Reference Documentation 3.3.1解释如下Q?/span>
Automatically validate or export schema DDL to the database when the SessionFactory is created.With create-drop, the database schema will be dropped when the SessionFactory is closed explicitly.
eg. validate | update | create | create-drop

三?span style="font-weight: normal; font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">        自己理解

其实q个hibernate.hbm2ddl.auto参数的作用主要用于:

自动创徏|更新|验证数据库表l构?/span>

如果不是此方面的需求徏议不配置该条语句?/span>

1.       createQ?/span>

每次加蝲hibernate旉会删除上一ơ的生成的表Q然后根据你?/span>modelcd重新来生成新表,哪怕两ơ没有Q何改变也要这h行,q就是导致数据库表数据丢q一个重要原因?/span>

2.       create-drop Q?/span>

每次加蝲hibernate时根?/span>modelcȝ成表Q但?/span>SessionFactory一关闭,表就自动删除?/span>

3.       updateQ?/span>

最常用的属性,W一ơ加?/span>hibernate时根?/span>modelcM自动建立赯的结构(前提是先建立好数据库Q,以后加蝲hibernate时根?/span> modelc自动更新表l构Q即使表l构改变了但表中的行仍然存在不会删除以前的行。要注意的是当部|到服务器后Q表l构是不会被马上建立h的,是要{?/span> 应用W一ơ运行v来后才会?/span>

4.       validate Q?/span>

每次加蝲hibernateӞ验证创徏数据库表l构Q只会和数据库中的表q行比较Q不会创建新表,但是会插入新倹{?/span>

四?span style="font-weight: normal; font-stretch: normal; font-size: 7pt; line-height: normal; font-family: 'Times New Roman';">       

当我们把hibernate.hbm2ddl.auto=create?/span>hibernate先用hbm2ddl来生成数据库schema?/span>

当我们把hibernate.cfg.xml文g?/span>hbm2ddl属性注释掉Q这h们就取消了在启动时用hbm2ddl来生成数据库schema。通常只有在不断重复进行单元测试的时候才需要打开它,但再ơ运?/span>hbm2ddl会把你保存的一切都删除掉(dropQ?/span>---- create配置的含义是Q?#8220;在创?/span>SessionFactory的时候,?/span>scema?/span>drop掉所以的表,再重新创建它?#8221;?/span>

我们在项目中使用Hibernate映射oracle的视囄时候,发现会出现某U特D条件下hibernate自动创徏了一张和视图同名?/span>TableQ导致获取视图信息时Q实际上获取的LI中的内容?/span>

注意Q很?/span>Hibernate新手在这一步会p|Q我们不时看到关?/span>Table not found错误信息的提问。但是,只要你根据上面描q的步骤来执行,׃会有q个问题Q因?/span>hbm2ddl会在W一ơ运行的时候创建数据库schemaQ?/span> 后箋的应用程序重启后q能l箋使用q个schema。假若你修改了映,或者修改了数据?/span>schema,你必Lhbm2ddl重新打开一ơ?/span>



Hero 2015-08-26 15:19 发表评论
]]>
ݺɫþۺ| ɫ͵͵91þۺ| þþþþùaѹۿɫƬ| ˾ҹվھƷþþþþþþ| ƷƵþþþ| ŷۺϾþͼƬ| ձþþվ| þһձɫۺϾþ| 97Ʒ91þþþþ| ھƷþþþþĻ| ޹˾ƷŮ˾þþ| ҹþþӰԺ| 99þ99þþƷƬ| þˬˬAV | Ʒһþ| þþĻ| 69Ʒþþþ777| þþþAVۿ| ˾þۺߴý| þþƷѹۿ| þþƷ| Ʒþþþþ| ޾ƷĻþò| þˬˬˬav| Ʒþһ| þҹɫƷ鶹| ޾Ʒ99þþþĻ| ŷƷ˾þ| þˬˬ| Ʒþþþþù| ޾Ʒþþwww| þþùƷ| þþWWW˳ɾƷ| ƷþþĻ| Ʒþһ| һۺϾþ| ŮƷþþ| þùƷ-Ʒ| þþþƷҹѲ| avھƷþþþӰԺ| þþƷۺɫ|