
应用服务
文章平均质量分 78
wjxbj
这个作者很懒,什么都没留下…
展开
-
win7命令行 端口占用 查询进程号 杀进程
一.win键+r,进入DOS命令窗口 二.根据端口号查程序的进程号C:\Users\yj>netstat -ano |findstr 端口号 三.根据程序的进程号查看具体的程序名称C:\Users\yj>tasklist|findstr 进程号 四.强制、递归 删除本程序及其子进程C:\Users\yj>taskkill -f -t -im...原创 2018-06-10 23:10:57 · 358 阅读 · 0 评论 -
Mina基础(一)
Mina使用起来多么简洁方便呀,就是不具备Java NIO的基础,只要了解了Mina常用的API,就可以灵活使用并完成应用开发。 首先,看Mina在项目中所处的位置,如下图: Mina处于中间层,它不关心底层网络数据如何传输,只负责接收底层数据,过滤并转换为Java对象提供给我们的应用程序,然后把应用程序响应值过滤并转换为底层识别...原创 2016-02-20 22:51:26 · 414 阅读 · 0 评论 -
Mina2.0入门
最近使用Mina开发一个Java的NIO服务端程序,因此也特意学习了Apache的这个Mina框架。 首先,Mina是个什么东西?看下官方网站(http://mina.apache.org/)对它的解释:Apache的Mina(Multipurpose Infrastructure Networked Applications)是一个网络应用框架,可以帮助...原创 2016-02-20 22:51:01 · 314 阅读 · 0 评论 -
web.xml中<security-constraint>和四种认证类型
<security-constraint> 的子元素 <http-method> 是可选的,如果没有 <http-method> 元素,这表示将禁止所有 HTTP 方法访问相应的资源。 子元素 <auth-constraint> 需要和 <login-config> 相配合使用,但可以被单独使用。如...原创 2016-02-19 21:23:58 · 105 阅读 · 0 评论 -
tomcat对于web.xml的security-constraint使用的处理机制
一.知识点 web.xml中<security-constraint> 的子元素 <http-method> 是可选的,如果没有 <http-method> 元素,这表示将禁止所有 HTTP 方法访问相应的资源。 子元素 <auth-constraint> 需要和 <login-config> 相配...原创 2016-02-19 21:13:21 · 1954 阅读 · 0 评论 -
Weblogic跨域session冲突解决办法
一.现象 在WebLogic中,有两个不同域A(端口:9000)和B(端口:8000),应用CA在域A中,应用CB在域B中,进行如下操作:1.先登录应用CA,再登录应用CB,然后,切换回应用CA,发现应用CA的Session丢失;2.应用CA中有指向应用CB的链接,登录应用CA,点击指向应用CB的链接,应用CA的Session丢失; 二.原因 ...原创 2016-02-19 20:28:49 · 408 阅读 · 0 评论 -
设置session过期的各种方式(主要看weblogic的方式)
一.web.xml 设置WEB应用程序描述符web.xml里的<session-timeout>元素。这个值以分钟为单位,并覆盖weblogic.xml中的TimeoutSecs属性,此例表示Session将在54分钟后过期。<session-config> <session-timeout>54</session-tim...原创 2016-02-19 20:20:32 · 211 阅读 · 0 评论 -
分析java进程假死
一.引言1.编写目的 为了方便大家以后发现进程假死的时候能够正常的分析并且第一时间保留现场快照。2.编写背景 最近服务器发现tomcat的应用会偶尔出现无法访问的情况。经过一段时间的观察最近又发现有台tomcat的应用出现了无法访问情况。简单描述下该台tomcat当时具体的表现:客户端请求没有响应,查看服务器端tomcat的进程是存活的,查看业务日志...原创 2016-01-17 00:17:06 · 2271 阅读 · 0 评论 -
Tomcat 假死原因分析
最近监控服务发现有台tomcat 的应用出现了无法访问的情况 ,由于已做了集群,基本没有影响线上服务的正常使用。 下面来简单描述该台tomcat当时具体的表现:客户端请求没有响应,查看服务器端tomcat 的java 进程存活,查看tomcat 的catalina.log ,没有发现异常,也没有error 日志.查看localhost_access.log 也...原创 2016-01-16 23:46:11 · 3063 阅读 · 0 评论 -
TcpTimedWaitDelay和MaxUserPort作用及设置
TcpTimedWaitDelay: 确定 TCP/IP 可释放已关闭连接并重用其资源前,必须经过的时间。关闭和释放之间的此时间间隔通称 TIME_WAIT 状态或两倍最大段生命周期(2MSL)状态。此时间期间,重新打开到客户机和服务器的连接的成本少于建立新连接。减少此条目的值允许TCP/IP 更快地释放已关闭的连接,为新连接提供更多资源。如果运行的应用程序需要快速释放和创建...原创 2016-01-16 23:23:43 · 1461 阅读 · 0 评论 -
TOMCAT假死分析
一.问题描述 在tomcat上,压力测试(并行50,串行100,即5000次)的JAVA程序B44。 压测完毕后(压测试程序已执行完,tomcat也没有任何程序再跑)tomcat就假死了(访问tomcat没反应,无法显示该页)。 然后,再过两分钟,tomcat又能正常访问了,一切自动恢复正常。 二.分析问题 ...原创 2016-01-16 23:04:03 · 489 阅读 · 0 评论 -
常见的网站服务器架构及其演化历程
一.常见网站服务器架构 [只是大框架介绍,实际使用中的不容易注意的细节太多了,需要经验的积累,才能运用娴熟] 以下的架构都是在假设已经优化过linux内核的情况下进行。1.初级篇:(单机模式) 假设配置:(Dual core 2.0GHz,4GB ram,SSD)基础框架:apache(PHP) + Mysql / IIS + MS...原创 2015-12-20 00:30:38 · 287 阅读 · 0 评论 -
Netty线程模型详解
一.背景1.Java线程模型的演进a.单线程 时间回到十几年前,那时主流的CPU都还是单核(除了商用高性能的小机),CPU的核心频率是机器最重要的指标之一。 在Java领域当时比较流行的是单线程编程,对于CPU密集型的应用程序而言,频繁的通过多线程进行协作和抢占时间片反而会降低性能。b.多线程 随着硬件性能的提升,CPU的核数越来...原创 2016-11-25 01:19:57 · 162 阅读 · 0 评论 -
实例:如何使用Netty下载文件
使用场景:客户端向Netty请求一个文件,Netty服务端下载指定位置文件到客户端。 本实例使用的是Http协议,当然,可以通过简单的修改即可换成TCP协议。 需要注意本实例的关键点是,为了更高效的传输大数据,实例中用到了ChunkedWriteHandler编码器,它提供了以zero-memory-copy方式写文件。第一步:先写一个H...原创 2016-11-25 01:05:47 · 525 阅读 · 0 评论 -
实例:Netty 处理TCP协议数据分包问题
一.Netty解决TCP协议数据分包问题思路 我们知道通过TCP协议发送接收数据时,如果数据过大,接收到的数据会是分包的,比如: +-----+-----+-----+ 发送数据是: | ABC | DEF | GHI | +-----+---...原创 2016-11-24 23:10:38 · 475 阅读 · 0 评论 -
Netty4详解三:Netty架构设计
通过这一篇文章,我们基本上可以了解到Netty所有重要的组件,对Netty有一个全面的认识,这对下一步深入学习Netty是十分重要的,而学完这一章,我们其实已经可以用Netty解决一些常规的问题了。一.先纵览一下Netty,看看Netty都有哪些组件 为了更好的理解和进一步深入Netty,我们先总体认识一下Netty用到的组件及它们在整个Netty架构中是怎...原创 2016-11-24 23:05:00 · 382 阅读 · 0 评论 -
Netty4详解二:开发第一个Netty应用程序
既然是入门,那我们就在这里写一个简单的Demo,客户端发送一个字符串到服务器端,服务器端接收字符串后再发送回客户端。一.配置开发环境1.安装JDK2.去官网下载jar包(或者通过pom构建) 二.认识下Netty的Client和Server 一个Netty应用模型,如下图所示,但需要明白一点的是,我们写的Server会自动处理多客户端请...原创 2016-11-24 22:50:16 · 148 阅读 · 0 评论 -
Mina基础(二)
Mina基础(一)中的简单实例,虽然实现了根据\r\n换行符编解码的功能,但是却存在以下问题: a.编解码器中编码类型Charset硬编码,不便调整; b.只能根据Windows的换行符\r\n解码,没有考虑其他操作系统的换行符,不灵活; c.解码器中定义了成员变量IoBuffer, 但Decoder实例是单例的,因此Dec...原创 2016-02-20 22:53:46 · 196 阅读 · 0 评论 -
Mina基础(三)
自定义协议编解码,自定义协议是使用最广泛的,因为它非常的灵活!制定协议 协议需求:向服务端发送请求(频道的ID和说明文字),返回响应结果(该频道下所有的节目信息)。 协议格式如下: 请求格式SyntaxNo. of BitsIdentifier_ description...原创 2016-02-20 22:54:20 · 158 阅读 · 0 评论 -
GRPC基础入门
项目中要使用rpc协议框架来实现两个系统之间的接口调用。A系统调用B系统的相应接口,因为考虑到http请求会包含更多冗余信息,造成请求过大,因此选用了rpc众多框架中的grpc。 grpc是google开源的rpc框架,目前版本1.0.0,看jar包引入包括netty与okhttp,同时序列化中使用的是protobuf(google自主研发的序列化方式—支持http2.0与多路复用,...原创 2018-03-17 20:40:30 · 344 阅读 · 0 评论 -
grpc java helloworld简单demo开发
最近google发布了grpc1.0,数据交互使用了protocol buffer,相比之前使用的hession和json序列化方式性能应该提升不少,所有先搞一个grpc的hello world跑一下,项目使用maven搭建,并使用Eclipse开发。一.使用Eclipse创建maven项目,添加pom配置1.添加grpc1.0 maven依赖<properties>...原创 2018-03-17 20:32:46 · 774 阅读 · 1 评论 -
RPC(Remote Procedure Call Protocol)—远程过程调用协议
一.RPC 远程过程调用协议 RPC(Remote Procedure Call Protocol)——远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更...原创 2018-03-17 20:16:54 · 433 阅读 · 0 评论 -
Web Service实践之REST vs RPC
本博客所有内容采用Creative Commons Licenses许可使用. 引用本内容时,请保留朱涛,出处,并且 非商业。一.摘要 Web Service 已经不再新鲜, 而随后的 SOA, Cloud Computing 也不断出现, 直到百度也提出了自己的 框计算, 我们尚且不管这些时髦的名词背后所蕴藏的实际的技术创新有多少, 但是他们终究是逃不出...原创 2017-02-06 19:41:52 · 188 阅读 · 0 评论 -
Java框架JSON-RPC项目demo代码实战
一.JSON-RPC-Java简介 JSON-RPC-Java是一个用Java来实现动态JSON-RPC的框架. 利用它内置的一个轻级量JSON-RPC JavaScripIt客户端,可以让你透明地在JavaScript中调用Java代码。JSON-RPC-Java可运行在Servlet容器中如Tomcat也可以运行在JBoss与其它J2EE应用服务器中因此可...原创 2017-02-05 18:46:56 · 393 阅读 · 0 评论 -
深入浅出 RPC - 深入篇
《深入篇》我们主要围绕 RPC 的功能目标和实现考量去展开,一个基本的 RPC 框架应该提供什么功能,满足什么要求以及如何去实现它?一.RPC功能目标 RPC 的主要功能目标是让构建分布式计算(应用)更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。为实现该目标,RPC 框架需提供一种透明调用机制让使用者不必显式的区分本地调用和远程调用,在前文...原创 2017-02-05 18:46:26 · 116 阅读 · 0 评论 -
Apache RPC调用实例
一.工程结构二.工程代码Server.javapackage com.bijian.study;import org.apache.xmlrpc.server.PropertyHandlerMapping;import org.apache.xmlrpc.server.XmlRpcServer;import org.apache.xmlrpc.server.Xm...原创 2017-02-05 18:42:43 · 234 阅读 · 0 评论 -
深入浅出 RPC - 浅出篇
近几年的项目中,服务化和微服务化渐渐成为中大型分布式系统架构的主流方式,而 RPC 在其中扮演着关键的作用。在平时的日常开发中我们都在隐式或显式的使用 RPC,一些刚入行的程序员会感觉 RPC 比较神秘,而一些有多年使用 RPC 经验的程序员虽然使用经验丰富,但有些对其原理也不甚了了。缺乏对原理层面的理解,往往也会造成开发中的一些误用。 本文分上下两篇《浅出篇...原创 2017-02-05 18:42:12 · 367 阅读 · 0 评论 -
Oracle coherence介绍
一.Coherence是什么 Oracle官方网站的描述是:Coherence 在可靠的、高度可伸缩的对等集群协议之上提供了复制的、分布式的(分区的)数据管理和缓存服务。Coherence 不存在单点故障,当某台服务器无法操作或从网络断开时,它可以自动且透明地进行故障切换并重新分布它的集群化数据管理服务。当新服务器加入或故障服务器重 启时,它会自动加入集群,Coherence...原创 2017-02-04 10:52:05 · 947 阅读 · 0 评论 -
P2P协议入门
一.P2P定义 P2P(Peer to Peer)对等计算机或对等网络。 P2P的核心是数据存储在客户本地,通过存储信息(名称、地址、分块)的查询,让终端之间直接数据传递。P2P网络让网络上的数据流量分散化,同时管理点不仅没有服务容量的压力,而且只存储数据的索引与链接,不对数据本身负责,避免了版权与管理的麻烦。 “我为人人,人人为我”的思想...原创 2017-02-04 09:14:35 · 895 阅读 · 1 评论 -
分布式基础通信协议:paxos,totem和gossip
一.背景 在分布式中,最难解决的一个问题就是多个节点间数据同步问题。为了解决这样的问题,涌现出了各种奇思妙想。只有在解决了如何进行信息同步的基础之上才衍生出形形色色的应用。这里开始介绍几种分布式通信协议。 二.简单即有效——totem协议 totem协议也许你还比较陌生,但是corosync就是totem协议的一个开源实现。比较火的HA软件pacema...原创 2017-02-04 09:10:34 · 289 阅读 · 0 评论 -
2016源创会深圳站—网易蜂巢架构
一.蜂巢平台架构1.如何快速构建一个CaaS平台? -容器技术 -镜像仓库 -编排服务 -IaaS服务(计算,网络,存储) -应用服务(数据库,缓存,日志)2.研发+Docker+Kubernetes+OpenStack3.架构4.扩展性的症结 -流量引爆点 ...2016-04-01 23:08:47 · 130 阅读 · 0 评论 -
2016源创会深圳站—混合云
一.RightScale 2016 State of the Cloud Report 二.为什么要混合云 用户希望通过混合云来同时享受私有云和公有云的优点,既可以把重要、敏感的数据放在私有云中,同时又获得公有云提供的丰富资源,达到安全、省钱、灵活的目的。 典型的混合云用户场景: -Cloud bursting ...2016-04-01 22:15:46 · 139 阅读 · 0 评论 -
Reactor模式和NIO
本文可看成是对Doug Lea Scalable IO in Java一文的翻译。 当前分布式计算Web Services盛行天下,这些网络服务的底层都离不开对socket的操作。他们都有一个共同的结构: 1.Read request 2.Decode request 3.Process service ...原创 2016-02-21 15:30:00 · 159 阅读 · 0 评论 -
Mina解析(二)
4.NIO 基础知识 Java NIO(new IO)是JDK1.4引入的非阻塞IO机制,具体它如何的好,我就不说啦,百度一下看看就了解啦。 Java NIO引入了两个新的概念:通道Channel和选择器Selector。 通道是服务端和客户端进行通信的接口-----原来是直接的IO操作,客户端发信息给服务端,服务端从OutputStrea...原创 2016-02-21 00:08:14 · 237 阅读 · 0 评论 -
Mina解析(一)
Java NIO是相对于传统的IO操作而言的,因为提出了缓冲池等概念,使它的处理数据的效率大大提高;多线程是并发处理的明智选择。 为减少系统开销,线程池是并发应用中是经常使用的技术。 而异步处理机制可以大大缩短每个请求的响应时间。 Mina2中就大量使用了这三项技术,使得它成为优秀的网络应用框架。(这一章并非描述Mina...原创 2016-02-20 22:56:01 · 321 阅读 · 0 评论 -
Netty4详解一:理解Netty的设计理念NIO
一.初步了解Netty Netty是一个NIO的编程框架,Netty是非常容易和快速开发出网络应用程序的,它提供了一种全新的形式来方便你编写网络应用:它提供了对一些对复杂问题的抽象,提供了一套非常容易使用的api来把我们的业务逻辑和纯粹处理网络的代码分离开来。因为Betty是基于NIO,因此它的整个API都是异步的。 Netty简化了基于TCP和UDP的编程,...原创 2016-11-24 22:39:42 · 301 阅读 · 0 评论 -
Netty4.0学习笔记系列之六:多种通讯协议支持
上文介绍了如何应用Netty开发自定义通讯协议,本文在此基础上进一步深化,研究如何同时支持不同的通讯协议。 此处所谓的通讯协议,指的是把Netty通讯管道中的二进制流转换为对象、把对象转换成二进制流的过程。转换过程追根究底还是ChannelInboundHandler、ChannelOutboundHandler的实现类在进行处理。ChannelInbound...原创 2016-11-24 00:00:12 · 129 阅读 · 0 评论 -
Netty4.0学习笔记系列之五:自定义通讯协议
Netty中,通讯的双方建立连接后,会把数据按照ByteBuf的方式进行传输,例如http协议中,就是通过HttpRequestDecoder对ByteBuf数据流进行处理,转换成http的对象。基于这个思路,我自定义一种通讯协议:Server和客户端直接传输Java对象。 实现的原理是通过Encoder把java对象转换成ByteBuf流进行传输,通过Deco...原创 2016-11-23 23:31:02 · 198 阅读 · 0 评论 -
nginx负载均衡原理
对于一个大型网站来说,负载均衡是永恒的话题。随着硬件技术的迅猛发展,越来越多的负载均衡硬件设备涌现出来,如F5 BIG-IP、Citrix NetScaler、Radware等等,虽然可以解决问题,但其高昂的价格却往往令人望而却步,因此负载均衡软件仍然是大部分公司的不二之选。nginx作为webserver的后起之秀,其优秀的反向代理功能和灵活的负载均衡策略受到了业界广泛的关注...原创 2015-07-02 21:14:05 · 165 阅读 · 0 评论 -
F5负载均衡会话保持技术及原理技术白皮书
一.什么是会话保持? 在大多数电子商务的应用系统或者需要进行用户身份认证的在线系统中,一个客户与服务器经常经过好几次的交互过程才能完成一笔交易或者是一个请求的完成。由于这几次交互过程是密切相关的,服务器在进行这些交互过程的某一个交互步骤时,往往需要了解上一次交互过程的处理结果,或者上几步的交互过程结果,服务器进行下一步操作时需要这就要求所有这些相关的交互过程都由一台服务器完成,而...原创 2015-07-01 23:43:25 · 1002 阅读 · 0 评论