当前搜索:

[置顶] 高性能网站架构之负载均衡 Nginx+tomcat+redis实现tomcat集群

上一篇文章给大家讲了Nginx的安装,那么这篇文章为大家讲一下Nginx+Tomcat实现负载均衡。          先说说为什么要用ngnix 做负载均衡,其实做负载均衡的最出名的莫过于F5了,F5是在硬件设施,动辄几万,几十万,几百万不等,对于一般的小公司来说,这也是一笔很大的开销,所以能尽...
阅读(10034) 评论(9)

[置顶] 高性能网站架构之负载均衡 Nginx的安装

环境准备          如果要使用Nginx的常用功能,那么首先需要确保该Linux操作系统上至少安装了如下软件。Linux上有许多软件安装方式,yum只是其中比较方便的一种,其他方式这里不再赘述。这些软件均采用该方式安装       (1)GCC编译器        GCC(GNU Com...
阅读(4233) 评论(6)

[置顶] 高性能网站架构之负载均衡 Nginx的简介

什么是Nginx          Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。事实...
阅读(4028) 评论(6)

[置顶] Linux下Tomcat中catalina.out文件切割

最近由于系统在生产环境中出现了一个bug,自己在开发环境中复现不出来,所以需要查日志,于是就logs下找日志了。使用命令 vim catalina.out 命令查看,但是怎么也打不开,然后我看了看文件的属性,我去,吓坏我了, 8个多G,怎么这么大,后来想想确实有可能,我们在服务器上部署了三个系统,...
阅读(4785) 评论(2)

[置顶] 高性能网站架构之缓存篇--Redis使用配置端口转发

最近在学习redis,由于财力有限,所以只能选择虚拟机练练手,本人使用的vmware 11,安装的系统是centos6.7,redis版本是3..0.2 。如何安装请参考本人上一篇文章。          安装完redis以后,我们是不是要迫不及待的想使用一下呢。那么我们要在程序中对redis进行...
阅读(5407) 评论(10)

[置顶] 高性能网站架构之缓存篇--Redis安装配置

简介      Redis是一个开源,先进的key-value存储,并用于构建高性能,可扩展的Web应用程序的完美解决方案。      Redis从它的许多竞争继承来的三个主要特点:           Redis数据库完全在内存中,使用磁盘仅用于持久性。           相比许多键值数据存储...
阅读(6465) 评论(7)

基于 AbstractQueuedSynchronizer 的并发类实现

公平模式ReentrantLock实现原理 前面的文章研究了AbstractQueuedSynchronizer的独占锁和共享锁,有了前两篇文章的基础,就可以乘胜追击,看一下基于AbstractQueuedSynchronizer的并发类是如何实现的。 ReentrantLock显然是...
阅读(164) 评论(0)

JAVA REENTRANTLOCK、SEMAPHORE 的实现与 AQS 框架

ReentrantLock是JDK提供的一个可重入互斥锁,所谓可重入就是同一个锁允许被已经获得该锁的线程重新获得。可重入锁的好处可以在递归算法中使用锁,不可重入锁则导致无法在递归算法中使用锁。因为第二次递归时由于第一次递归已经占有锁,而导致死锁。本文我们将探讨JDK中ReentrantLock的实...
阅读(171) 评论(0)

消息队列设计

消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。 当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发的Notify、MetaQ、Ro...
阅读(196) 评论(0)

Zookeeper全解析—Paxos灵魂

原计划在介绍完ZK Client之后就着手ZK Server的介绍,但是发现ZK Server所包含的内容实在太多,并不是简简单单一篇Blog就能搞定的。于是决定从基础搞起比较好。 那么ZK Server最基础的东西是什么呢?我想应该是Paxos了。所以本文会介绍Paxos以及它在ZK Se...
阅读(172) 评论(0)

3des 加密

有两句话是这么说的:  1)算法和数据结构就是编程的一个重要部分,你若失掉了算法和数据结构,你就把一切都失掉了。  2)编程就是算法和数据结构,算法和数据结构是编程的灵魂。  注意,这可不是我说的,是无数程序员总结的,话说的很实在也很精辟,若想长久可持续发展,多研究算...
阅读(335) 评论(0)

加密

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。本文给大家分享java常用的几种加密算法,需要的朋友可以参考下,对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密...
阅读(204) 评论(0)

zabbix 监控jvm

Zabbix版本: Zabbix 3.0.2 一、服务端配置 1、安装jdk(版本1.7.0_79) 安装与配置比较简单,过程省略。执行java -version命令,出现类似界面表示成功。   2、安装Zabbix-Java-gateway Zabbix2.0起添加了支持用于...
阅读(1736) 评论(3)

HashMap的工作原理

1.前言     在探讨HashMap源码之前,先说一下HashCode,为什么呢?因为HashMap有一个特性是Key是唯一值,如何确定key的唯一性呢,这就用到了hash算法。在HashMap(jdk1.7)的put方法实现中首先利用了hash()生成key的hashCode,然后比较key...
阅读(2245) 评论(6)

将字符串转json

第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式。 正确的转换方式需要加(): testJson = eval("(" + testJson + ")"); eval()的速度非常快,但是他可...
阅读(534) 评论(2)

Maven+Jetty运行项目无法热修改html处理

今天在使用Maven+Jetty运行JavaWeb工程时,发现无法在运行状态下修改JS、HTML文件,即无法热修改,网上搜了一下,整合了很多文章最终搞定。 现象 此时在Eclipse中修改index.html文件时 不允许进行修改。 原因:如果NIO被支持的话,Jetty会使用...
阅读(1250) 评论(1)

Java并发编程:Lock

上一篇博客写了synchronized, 也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock?这个问题将在下面进行阐述。本文先从synchronized的缺陷讲起,然后再讲述java.util.concurrent.locks包下常用的有哪些类和接...
阅读(2753) 评论(3)

Java并发编程:阻塞队列

使用非阻塞队列的时候有一个很大问题就是:它不会对当前线程产生阻塞,那么在面对类似消费者-生产者的模型时,就必须额外地实现同步策略以及线程间唤醒策略,这个实现起来就非常麻烦。但是有了阻塞队列就不一样了,它会对当前线程产生阻塞,比如一个线程从一个空的阻塞队列中取元素,此时线程会被阻塞直到阻塞队列中有了...
阅读(630) 评论(2)

synchronized详解

Java语言的关键字,当它用来修饰一个方法或者一个代码块的时候,能够保证在同一时刻最多只有一个线程执行该段代码。      一、当两个并发线程访问同一个对象object中的这个synchronized(this)同步代码块时,一个时间内只能有一个线程得到执行。另一个线程必须等待当前线程执行完...
阅读(3044) 评论(1)

彻底理解java语言的线程安全volatile用法

Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文介绍了几种有效使用 volat...
阅读(10125) 评论(2)
    个人资料
    等级:
    访问量: 42万+
    积分: 8880
    排名: 2706
    最新评论