- 博客(14)
- 收藏
- 关注
原创 深入实践ThreadLocal
本文主要实践,不在同一个线程中ThreadLocal的表现。Thread中持有ThreadLocalMap,分别为threadLocals、inheritableThreadLocalsthreadLocals:用于普通的ThreadLocalinheritableThreadLocals:用于InheritableThreadLocal问题注意点:1、如果在子线程读取父线程中...
2018-08-13 19:28:03
356
原创 浅谈JAVA序列化与反序列化
序列化介绍 对象是由行为和状态组成的,序列化代表我们可以将一个对象的状态转化成数据流,可以通过网络传输,也可以存储成一个文件或者数据库中,同样可以把数据流反序列化成对象。JAVA序列化Serializable接口:标记一个类能被序列化serialVersionUID字段:序列化版本号transient关键字:标记一个字段是瞬时的,不会被序列化ETC
2017-03-16 20:29:38
1329
原创 SpringBoot Velocity toolbox配置
SpringBoot结合velocity模板,使用的是org.apache.velocity.tools.view.servlet.ServletToolboxManager,一个不建议使用的类,配置文件与velocity官网不同,具体在是在velocity源码中ServletToolboxManager类的注释中,有toolbox的xml配置。在此记录一下。 ap
2016-12-12 19:37:28
3409
原创 基于ProGuard-Maven-Plugin的自定义代码混淆插件
大家可能都会碰到一些代码比较敏感的项目场景,这个时候代码被反编译看到就不好了,这个时候就需要代码混淆插件来对代码进行混淆了。基于Maven的项目一般会去考虑使用proguard-maven-plugin,但是这个插件仅支持打Jar包不支持打War包。于是我用空闲时间在proguard-maven-plugin的基础上修改了里面的一部分逻辑,可以在项目构建过的时候把代码混淆,支持打成jar包和war包。 现在贴出来给大家看看。
2016-07-22 17:22:11
10435
4
原创 Protostuff自定义序列化(Delegate)解析
一、背景在使用Protostuff进行序列化的时候,不幸地遇到了一个问题,就是Timestamp作为字段的时候,转换出现问题,通过Protostuff转换后的结果都是1970-01-01 08:00:00,这就造成了Timestamp不能够序列化。于是Google了一番,得知可以用Delegate来解决这个问题。
2016-07-20 17:29:33
3785
原创 Web服务图片压缩,nginx+lua生成缩略图
一、背景目前而言,用移动端访问Web站点的用户越来越多,图片对流量的消耗是比较大的,之前一个用户用我们网站的app浏览的时候,2个小时耗去了2个G的流量,这是个很严重的问题,需要对图片进行压缩,减少对用户带宽的损耗。二、方法Niginx+lua+graphicsmagick
2016-07-05 14:28:07
918
原创 ReetrantLock Synchronized Atomic的性能对比
之前看到了一篇帖子关于Lock和Synchronized的性能,写的是Lock比Synchronized的性能要好,可是,我试了下,结果却不是这样的,我所使用的JDK的版本是1.7,可能跟原帖作者用的JDK版本不一样,JDK对Synchronized做了优化。
2016-06-22 13:21:08
662
原创 JVM调优实践-Tomcat调优
tomcat调优几个重要指标GC频率提升每次GC的效率准备环节jmeter的配置未压测前JVM配置工程未调优前配置-Xms400m-Xmx400m-XX:PermSize=64m-XX:MaxNewSize=128m-XX:MaxPermSize=128m-XX:+PrintGCTimeStamps
2016-06-12 16:27:31
664
原创 MySQL索引及Explain及常见优化
MySQL索引设计的原则 1. 搜索的索引列,不一定是所要选择的列。换句话说,最适合索引的列是出现在WHERE 子句中的列,或连接子句中指定的列,而不是出现在SELECT 关键字后的选择列表中的列。2. 使用惟一索引。考虑某列中值的分布。对于惟一值的列,索引的效果最好,而具有多个重复值的列,其索引效果最差。例如,存放年龄的列具有不同值,很容易区分各行。而用来记录性别的列,只
2016-05-26 19:41:46
7337
原创 FFMPEG 截取RTMP直播流图片命令
CentOS 6.5 yum安装FFMPEG步骤1. 手动添加yum源配置vi /etc/yum.repos.d/dag.repo [dag]name=Dag RPM Repository for Red Hat Enterprise Linuxbaseurl=http://apt.sw.be/redhat/el$release
2016-03-22 14:46:33
8277
原创 Maven Profile标签
Maven Profiles标签可以针对不同的环境来使用不同的配置文件在发布的时候可以用mvn release -p productmvn release -p testmvn release -p dev默认本地deploy的时候用的是dev的配置 文件在编译项目的过程中,资源中的占位符${}会被替换成配置文件中的值,如果没有进
2016-03-10 13:33:29
782
转载 OpenLDAP,Windows,MySQL之初搭建
安装OpenLDAP for Windows,mysql,另附无博文链接http://huangdekai1.blog.163.com/blog/static/3057141620126134262357/注意:ODBC数据源与操作系统有很大的关系,ODBC必须装32位的,否则OpenLDAP启动会报错,Native ERROR。在64位Windows系统中,默认“数据源(ODBC)”
2015-01-18 20:18:43
3988
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人