关闭

[置顶] Linux 下安装svn服务器及错误集锦

由于公司新买了一台服务器,然后要从新搭建svn服务器,这个任务落到了我的身上,都要过年了。好吧,抱怨是穷人的专利。不能这样,打起精神开干。前后用了一个多小时,不过还是安装好了,期间遇到了好多问题,不过都一一的解决了! 准备工作          装有Centos6.7系统的机器一台          Xshell远程工具 xftp 上传文件的工具         subversion-d...
阅读(2552) 评论(3)

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

上一篇文章给大家讲了Nginx的安装,那么这篇文章为大家讲一下Nginx+Tomcat实现负载均衡。          先说说为什么要用ngnix 做负载均衡,其实做负载均衡的最出名的莫过于F5了,F5是在硬件设施,动辄几万,几十万,几百万不等,对于一般的小公司来说,这也是一笔很大的开销,所以能尽量的使用软件,还是使用软件,效果上虽然会差一些,但是还是能够起到一定的作用的。 环境准备...
阅读(6534) 评论(9)

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

环境准备          如果要使用Nginx的常用功能,那么首先需要确保该Linux操作系统上至少安装了如下软件。Linux上有许多软件安装方式,yum只是其中比较方便的一种,其他方式这里不再赘述。这些软件均采用该方式安装       (1)GCC编译器        GCC(GNU CompilerCollection)可用来编译C语言程序。Nginx不会直接提供二进制可执行程序(1...
阅读(3892) 评论(6)

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

什么是Nginx          Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。事实上nginx的并发能力确实在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、新...
阅读(3504) 评论(6)

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

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

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

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

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

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

消息队列设计

消息队列已经逐渐成为企业IT系统内部通信的核心手段。它具有低耦合、可靠投递、广播、流量控制、最终一致性等一系列功能,成为异步RPC的主要手段之一。 当今市面上有很多主流的消息中间件,如老牌的ActiveMQ、RabbitMQ,炙手可热的Kafka,阿里巴巴自主开发的Notify、MetaQ、RocketMQ等。 本文不会一一介绍这些消息队列的所有特性,而是探讨一下自主开发设计一个消息队列时,你...
阅读(5) 评论(0)

Zookeeper全解析—Paxos灵魂

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

3des 加密

有两句话是这么说的:  1)算法和数据结构就是编程的一个重要部分,你若失掉了算法和数据结构,你就把一切都失掉了。  2)编程就是算法和数据结构,算法和数据结构是编程的灵魂。  注意,这可不是我说的,是无数程序员总结的,话说的很实在也很精辟,若想长久可持续发展,多研究算法还是很有必要的,今天我给大家说说加密算法中的对称加密算法,并且这里将教会大家对称加密算法的编程使用。...
阅读(46) 评论(0)

加密

Base64是网络上最常见的用于传输8Bit字节代码的编码方式之一,大家可以查看RFC2045~RFC2049,上面有MIME的详细规范。本文给大家分享java常用的几种加密算法,需要的朋友可以参考下,对称加密算法是应用较早的加密算法,技术成熟。在对称加密算法中,数据发信方将明文(原始数据)和加密密钥(mi yue)一起经过特殊加密算法处理后,使其变成复杂的加密密文发送出去。收信方收到密文后,...
阅读(34) 评论(0)

zabbix 监控jvm

Zabbix版本: Zabbix 3.0.2 一、服务端配置 1、安装jdk(版本1.7.0_79) 安装与配置比较简单,过程省略。执行java -version命令,出现类似界面表示成功。   2、安装Zabbix-Java-gateway Zabbix2.0起添加了支持用于监控JMX应用程序的服务进程,称为“Zabbix-Java-gateway”,它是用java写的一个程...
阅读(116) 评论(3)

HashMap的工作原理

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

将字符串转json

第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式。 正确的转换方式需要加(): testJson = eval("(" + testJson + ")"); eval()的速度非常快,但是他可以编译以及执行任何javaScript程序,所以会存在安全问题。在使用eval()。来源必须是值得信赖的。需要使用更安全的json解析器。在服...
阅读(263) 评论(1)

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

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

Java并发编程:Lock

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

Java并发编程:阻塞队列

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

synchronized详解

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

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

Java 语言中的 volatile 变量可以被看作是一种 “程度较轻的 synchronized”;与 synchronized 块相比,volatile 变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是 synchronized 的一部分。本文介绍了几种有效使用 volatile 变量的模式,并强调了几种不适合使用 volatile 变量的情形。 锁提供了两种主要特性...
阅读(7379) 评论(2)

nio详解

下表总结了Java NIO和IO之间的主要差别,我会更详细地描述表中每部分的差异。 复制代码 代码如下: IO                NIO 面向流            面向缓冲 阻塞IO            非阻塞IO 无                选择器 面向流与面向缓冲 Java NIO和IO之间第一个最大的区别是,IO是面向流的,NIO是面向缓...
阅读(1419) 评论(2)

io详解

一、什么是流        首先什么是流:流(Stream)的概念来源于UNIX中的管道(pipe)概念,在unix中,管道是一条不间断的字节流,用来实现程序和进程间的通信,或者读写外围设备、外部文件等。流,必须有源端和目的端,可以是文件,内存或者网络等。流的创建是为了更方便的处理数据的输入输出。        其次,对于输入流输出流如何区分,相信有很多人闹不清楚,本人也是很长时间弄不...
阅读(436) 评论(3)

Spring的IOC原理[通俗解释一下]

1. IoC理论的背景 我们都知道,在采用面向对象方法设计的软件系统中,它的底层实现都是由N个对象组成的,所有的对象通过彼此的合作,最终实现系统的业务逻辑。 图1:软件系统中耦合的对象 如果我们打开机械式手表的后盖,就会看到与上面类似的情形,各个齿轮分别带动时针、分针和秒针顺时针旋转,从而在表盘上产生正确的时间。图1中描述的就是这样的一个齿轮组,它拥有多个独立的齿轮,这些齿轮相互啮合...
阅读(1387) 评论(2)
127条 共9页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:340794次
    • 积分:8207
    • 等级:
    • 排名:第2415名
    • 原创:121篇
    • 转载:5篇
    • 译文:1篇
    • 评论:1421条
    最新评论