- 浏览: 8674 次
- 性别:
- 来自: 深圳
最新评论
文章列表
Hessian使用和理解
- 博客分类:
- http
本文参考文档:
https://blog.csdn.net/sunwei_pyw/article/details/74002351
Hessian是一个轻量级的RPC框架
RPC框架就是提供远程调用的框架。Hessian在项目中的运用也是远程调用,如使用情况最多的是文件服务器和图片服务器,项目做大后,一搬会将应用单独部署到某些服务器上,而文件图片放另外的服务器,数据库也单独放服务器,这样可以提高应用并发处理的能力。那么应用需要对文件和图片进行处理时,就必须远程调用,这个时候就可以用Hessian作为框架。
基于Hessian的远程调用协议。
连接个数:多连接
连接方式: ...
位字节汉字字符的关系
- 博客分类:
- java
经常忘记位、字节、字符的转换倍数,这里总结一下。
bit 也叫 位
byte 也叫字节
字符 就是一个字(分为英文字符和汉字)
它们之间的关系如下:
1 bit = 1 二进制数据
1 byte = 8 bit
1 字母 = 1 byte = 8 bit
1 汉字 = 2 byte = 16 bit
1. bit:位
一个二进制数据0或1,是1bit;
2. byte:字节
存储空间的基本计量单位,如:MySQL中定义 VARCHAR(45) 即是指 45个字节;
shiro学习参考文档:
https://www.cnblogs.com/moonlightL/p/8126910.html
shiro框架:
1、Factory<SecurityManager> factory = new IniSecurityManagerFactory("classpath:configDefault/shiro.properties");
先通过一个连接数据源(如shiro.properties代表一个 ...
本文参考文章链接:
https://www.cnblogs.com/lemon-flm/p/7877898.html
Queue:一个队列就是一个先入先出(FIFO)的数据结构
Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Deque接 口。
队列分为阻塞队列和非阻塞队列
非阻塞队列有PriorityQueue和ConcurrentLinkedQueue
PriorityQueue:维护了一个有序列表。加入到 Queue 中的元素根据它们的天然排序(通过其 java.util.Comparable 实现)或者根 ...
可参考技术文档:
https://blog.csdn.net/he90227/article/details/77931706
压力挑战:
短暂的高流量,对现有网站业务造成冲击
秒杀是一个网站营销的一个附加活动,时间短,并发量大。
如果和网站原有应用部署在一起,必然会对现有业务造成冲击,稍有不慎可能导致整个网站瘫痪。
高并发,数据库高负载
用户秒杀开始前,通过不断刷新浏览器来保证不会错过秒杀活动。
频繁的访问程序、数据库会对应用服务器和数据库服务器造成负载压力
HttpClient连接池
- 博客分类:
- http
连接管理:
两个主机之间建立的过程是很复杂的,包括了两个终端之间许多数据包的交换,会消耗掉大量的时间。对于很小的HTTP报文传输,TCP/IP的握手环节也是必不可少的。如果已有的链接能够重复使用,来执行多个请求,将会加大程序的数据吞吐量。HttpClient完全地支持连接持久化。
连接池管理器 Pool Connection Manager:
PoolingHttpClientConnectionManager 是一个管理客户端连接更复杂的实现。它为执行多线程的连接请求提供服务。对于每个基本的路由,连接都是池管理的。对于路由的请求,连接器在池中有可用的持久性连接,
将被从池中取 ...
通过springmvc接口请求上传文件
- 博客分类:
- http
本文主要介绍如何通过http请求springmvc接口,来实现上传文件到服务器,或者读取文件里的内容,实现一些业务需求。
我们知道,上传文件到服务器,可以通过jsp表单提交到接口。这里介绍的是通过http请求实现上传,不通过前台页面jsp表单。具体用apache.commons包下的httpclient来实现。代码如下:
/**
* 将文件作为参数上传到接口中
* @param url
* @param filepath
* @return
*/
private static String uploadFile(String url, String filepath) { ...
XML字符和bean的相互处理
- 博客分类:
- xml
XML字符和java bean的相互转换处理,在项目中经常会用到xml,需要将java bean转换成xml字符,也需要将xml字符转换成java bean。下面直接用代码介绍jdk自带的JAXBContext如何处理xml和bean的相互转换。是一种比较简单的处理方式。
/**
* 将xml字符转换成java对象
* @param xmlStr
* @param T
* @return
*/
@SuppressWarnings({"rawtypes", "unchecked"})
private static <T> ...
mybatis一直循环加载的问题
- 博客分类:
- mybatis
碰到一个问题如下:
项目启动时,用debug日志看到,一直在循环加载mybatis,也不报错,但一直循环加载,导致项目启动不成功。
这种情况一般是某个mapping.xml里有问题,一般是某个实体类的路径写错了,找不到具体的实体类。
要找到具体的问题,就必须mybatis把错误信息报出来,一直循环加载是不报错的,可以升级mybatis和mybatis-spring的版本就可以报出错误了,升级到如下的版本:
<mybatis-spring.version>1.3.0</mybatis-spring.version>
<mybatis.version> ...
用XStream可以很简单的将xml字符串和bean进行相互转换,具体代码如下。
先写一下XStreamFactory。用来对xml的字符进行处理。
public class XStreamFactory {
public static String PREFIX_CDATA = "<![CDATA[";
public static String SUFFIX_CDATA = "]]>";
/**
* 初始化XStream 可支持某一字段可以加入CDATA标签 如果需要某一字段使用原文
* 就需要在String类型的tex ...
Redis安装和使用
- 博客分类:
- redis
Redis简介:
Redis是当前比较热门的NOSQL系统之一,它是一个key-value存储系统。和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多,包括string、list、set、zset和hash。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作。在此基础上,Redis支持各种不同方式的排序。和Memcache一样,Redis数据都是缓存在计算机内存中,不同的是,Memcache只能将数据缓存到内存中,无法自动定期写入硬盘,这就表示,一断电或重启,内存清空,数据丢失。所以Memcache的应用 ...