-
Nginx+Tomcat搭建高性能负载均衡集群
一 、 目标 实现高性能负载均衡的Tomcat集群: 二 、 步骤 1、首先下载Nginx,要下载稳定版: 2、然后解压两个Tomcat,分别命名为apache-tomcat-6.0.33-1和apache-tomcat-6.0.33-2: 3、然后修改这两个Tomcat的启动端口,分别为18080和28080,下面以修改第一台Tomcat为例,打开Tomcat的conf目录下的ser…- 6
- 0
-
Dijkstra算法
最短路径是图论中一个很经典的问题:给定图G(V,E),求一条从起点到终点的路径,使得这条路径上经过的所有边的边权之和最小。 对任意给出的图G(V,E)和起点S、终点T,如何求从S到T的最短路径。解决最短路径问题的常用算法有Dijkstra算法、Bellman-Ford算法、SPEA算法和Floyd算法。 1.Dijkstra算法 Dijkstra算法(读者可以将其读作“迪杰斯特拉算法”)用来解…- 18
- 0
-
Linux添加环境变量与GCC编译器添加INCLUDE与LIB环境变量
对所有用户有效在/etc/profile增加以下内容。只对当前用户有效在Home目录下的 .bashrc或.bash_profile里增加下面的内容: (注意:等号前面不要加空格,否则可能出现 command not found) 在PATH中找到可执行文件程序的路径。 export PATH =$PATH:$HOME/bin gcc找到头文件的路径 C_INCLUDE_PATH=/usr/inc…- 68
- 0
-
JVM致命错误日志(hs_err_pid.log)分析
JVM致命错误日志(hs_err_pid.log)分析 最近两天测试环境有一个服务总是会挂(两到三天一次),JVM虚拟机总是会崩溃。所以有必要了解JVM崩溃的原因是什么。 当JVM发生致命错误导致崩溃时,会生成一个hs_err_pid_xxx.log这样的文件,该文件包含了导致 JVM crash 的重要信息,我们可以通过分析该文件定位到导致 JVM Crash 的原因,从而修复保证系统稳定。 默…- 46
- 0
-
EventBus 源码分析
俗话说,好记性不如烂笔头。特别是程序这一块,你自己不动手敲敲永远感觉迷迷糊糊的,所以,我们在学习一个新知识点的时候,首先要知道它怎么用,然后还要去研究它为什么这么用,即它里面的原理到底是什么样子的。关于EventBus,我想就不用去说怎么用了,因为它用起来确实很方便。但是,如果我问你,你真的懂EventBus吗?你知道里面用到了哪些设计模式吗?可能很多人会一脸懵逼状态,不要怕…- 14
- 0
-
oracle常用命令
批量insert数据 insert all into ksys_test(pckgsq, prcscd, pckgsq2, content) values ('9','10','11','12') into ksys_test(pckgsq, prcscd, pckgsq2, content) values (…- 12
- 0
-
面向过程与面向对象的区别
一、区别简述 面向过程(Procedure Oriented):以过程为核心,强调**事件的流程、顺序,**如:C语言。 面向对象(Object Oriented):以对象为核心,强调**事件的角色、主体,**如:C++、Java。 二、案例 小明起床上班这件事; 从面向过程的角度看就是:1、起床;2、刷牙洗脸;3、开车上班。 从面向对象的角度看就是:主人公:小明;拥有的财产:床、牙刷、车;小明可…- 10
- 0
-
Tomcat处理HTTP请求源码分析(下)
很多开源应用服务器都是集成tomcat作为web container的,而且对于tomcat的servlet container这部分代码很少改动。这样,这些应用服务器的性能基本上就取决于Tomcat处理HTTP请求的connector模块的性能。本文首先从应用层次分析了tomcat所有的connector种类及用法,接着从架构上分析了connector模块在整个tomcat中所处的位置,最后对c…- 5
- 0
-
大型网站架构演化发展历程
1初始阶段的网站架构 2应用服务和数据服务分离 3使用缓存改善网站性能 4使用应用服务器集群改善网站的并发处理能力 5数据库读写分离 6使用反向代理和CDN加速网站响应 7使用分布式文件系统和分布式数据库系统 8使用NoSQL和搜索引擎 9业务拆分 10分布式服务- 8
- 0
-
正则表达式验证代码(字母、数字、Email、网址、电话号码、汉字、身份证号码)
1<% 2if request("check")<>"" then 3astr=request("content") 4call str(astr) 5end if 6function str(astr) 7Ar=Cint(Asc(astr)) 8if(65<=Ar and Ar<=90) or (97<…- 17
- 0
-
深入理解HTTP Session
深入理解HTTP Session session在web开发中是一个非常重要的概念,这个概念很抽象,很难定义,也是最让人迷惑的一个名词,也是最多被滥用的名字之一,在不同的场合,session一次的含义也很不相同。这里只探讨HTTP Session。 为了说明问题,这里基于Java Servlet理解Session的概念与原理,这里所说Servlet已经涵盖了JSP技术,因为JSP最终也会被…- 12
- 0
-
java高并发(十)线程不安全类与写法
什么是线程不安全类? 如果一个类的对象同时可以被多个线程访问,如果不做特殊的同步与并发处理,就很容易表现出线程不安全的现象,比如抛出异常,比如逻辑处理错误等,这种类就是线程不安全类。 StringBuilder->StringBuffer 1@Slf4j 2public class StringExample1 { 3 // 请求总数 4 public static int clientTo…- 10
- 0
-
java高并发(十七)J.U.C之BlockingQueue
BlockingQueue就是阻塞队列。在某些情况下对阻塞队列的访问可能会造成阻塞。 会产生阻塞的情况有以下两种: 当队列满之后,进行入队操作; 当队列空之后,进行出队操作; 因此,当一个线程对一个队列已满的情况下进行入队操作就会产生阻塞,除非有另一个线程进行出队列操作。同样当一个线程对一个空队列进行出队操作时也会被阻塞,除非有另一个线程进行入队操作。 根据上面的特性可以知道,阻塞队列是…- 12
- 0
-
JAVA高并发(二) – 区分线程和进程
线程与进程 进程是计算机中的程序关于某数据集合上的一次运行活动,是系统进行资源分配和调度的基本单位,是操作系统结构的基础,在早期面向进程设计的计算机结构中,进程是程序的基本执行实体,在当代面向线程的计算机结构中,进程是线程的容器,程序是指令数据及其组织形式的描述,进程是程序的实体。 windows中exe格式文件,就是一个程序,当运行的时候,exe指令会被加载,就会得到一个关于该exe程序的进程,…- 10
- 0
-
使用docker搭建高并发网站架构实践6–Keepalived+Nginx实现热备份
Keepalived+Nginx****实现热备份 思路说明: 利用linux镜像容器,在其中安装keepalived和nginx, 制作新镜像支持热备份,这样便于直接使用,但在linux镜像中安装keepalived无法实现虚拟IP,也可能是网卡等设置不对。 在linux主机内,启动keepalived容器和nginx容器,实现热备份。实现难点:如何利用keepalived容器来监测nginx容…- 170
- 0
-
深入理解ThreadLocal
1 定义 ThreadLocal是存储线程局部变量的容器。 它为每一个使用该变量的线程都提供了一个变量值的副本,是Java中一种较为特殊的线程绑定机制。 每一个线程都可以独立地改变自己的副本,而不会和其它线程的副本发生冲突。 2 原理分析 在Java中,Thread类代表线程。 查看Thread源码,如下: 1public class Thread implements Runnable { 2 …- 9
- 0
-
【RPC】一步一步实现基于netty+zookeeper的RPC框架(六)
上一篇实现了服务的限流,本篇来实现服务的熔断。 首先还是贴出github代码地址,想直接看代码的可以直接下载运行:https://github.com/whiteBX/wrpc 在现在的微服务架构下,由于服务众多,调用链路长,很可能其中某个服务有时会出现异常导致服务不可用,例如发布导致bug、机房网络问题等,这种时候如果没有一种保护机制的话,很容易引起服务雪崩。这个时候就引入了服务…- 21
- 0
-
基于Netty的RPC简单框架实现(二):RPC服务端
1.RPC服务端的实现思路 相对于客户端而言,服务端要简单不少。基本思想就是,创建RPC服务端的时候,创建一个RPC请求队列和一定数量的Handler线程。Handler线程都持有服务端提供服务的Interface的类类型和实际供方法调用的对象(实现了提供服务的Interface),各线程只需要不断从RPC请求队列中取出请求,然后用供方法调用的对象来调用所请求的方法,最后将调用的结果通过Netty…- 9
- 0
-
RPC服务和HTTP服务
很长时间以来都没有怎么好好搞清楚RPC(即Remote Procedure Call,远程过程调用)和HTTP调用的区别,不都是写一个服务然后在客户端调用么?这里请允许我迷之一笑~Naive!本文简单地介绍一下两种形式的C/S架构,先说一下他们最本质的区别,就是 RPC主要是基于TCP/IP协议的,而HTTP服务主要是基于HTTP协议的,我们都知道HTTP协议是在传输层协议TCP之上的,所以效率来…- 5
- 0
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
-
¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!














