自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (2)
  • 收藏
  • 关注

原创 并发编程体系-JUC思维导图

volatile: 对volatile的定义:Java允许线程访问共享变量,为了确保共享变量能被准确和一致性的更新,线程应该确保通过排它锁单独获得变量。如果一个变量被声明为volatile,Java内存模型确保所有线程读到这个变量的值是一致的。那如何保证呢,原理是JVM会向处理器发送一条LOCK指令,将这个变量所在的工作内存写会到主存。然后在多处理器下,为了保证每个线程的工作内存是一致的,就出现了缓存一致性协议,每个处理器通过嗅探在总线上传播的数据来检查自己的变量是不是过期了,当发现变量对应的地...

2021-03-11 11:27:00 315

原创 JVM性能监控故障处理工具

在JDK的bin目录里,有打包部署签名,调试监控等工具。jps:虚拟机进程状态监控工具,和Linux里的PS命令类似,可以列出正在运行的虚拟机进程,并显示执行的主类(main方法所在类)jstat:虚拟机统计信息监控工具。用了监视虚拟机各种运行状态信息的工具。可以显示本地JVM进程中的类加载,内存,GC,JIT等运行时数据,这个命令是在服务器运行期定位JVM性能问题的常用工具。jinfo:Java配置信息工具,用于实时查看和调整JVM参数。jstack:Java堆栈跟踪工具,用于生成虚拟机当

2020-12-19 16:40:00 136 1

原创 JVM内存调优最佳实践

吞吐量优先的应用,设置并行收集器比如:java -Xmx3500m -Xms3500m -Xmn2g -Xss128K -XX:+useParallelGC -XX:ParallelGCThreads=20-XX:+UseParallelGC:设置为并行GC垃圾收集器,只对年轻代有效。-XX:ParallelGCThreads=20:配置并行收集器线程数,此值最好和处理器数目一致。-XX:+UseParallelOldGC:配置老年代垃圾收集方式。-XX:MaxGCPauseMillis

2020-12-17 12:37:40 434

原创 JVM堆内存划分和调优

JVM主要包括4个子系统:类加载器,运行时数据区,执行引擎,编译器。JDK 1.8以前,分为新生代,老年代和永久代三个区域。1.8之后永久代换成了meta space元空间,主要是存放方法中的操作临时对象等,JDK1.8之前是占用JVM内存,JDK1.8之后直接使用物理内存。其中新生代又分为Eden,S0,S1这三个部分。new出来的对象先分配到eden区,经过几次minor GC还存活的对象就会被放到S0区域,再经过几次minor GC还存活的对象会放到S1区。最后达到minor GC的阈值就放到

2020-12-17 11:12:25 93

原创 JVM的GC垃圾回收流程

对于整个GC流程里,主要的事情就是处理年轻代与老年代(Tenured)的内存清理操作。元空间(永久代)不在GC范围内,在JDK 8里,已取消永久代了。(1)当有一个新的对象产生,JVM需要为该对象申请内存空间,先判断Eden区是否有空间,如果有,直接将对象保存在eden区。(2)如果Eden区内存空间不足,会自动执行一次minor GC操作,进行Eden区的无用内存空间清理。清理之后继续判断Eden区内存空情况,如果充足就直接保存对象。如果仍然内存空间不足,就判断存活区S0,S1空间,并将Ede

2020-12-17 11:01:07 270

原创 Mysql性能优化思路

(一)硬件方面如果数据量大,每次访问数据量小,交互频繁,并发高,OLTP型应用系统,就要选取功能好的CPU和网络设备。如果数据量超大,每次访问数据量小,并发低,也就是OLAP应用,就对CPU要求不高,但是要求存储大,最好做集群。(二)MySQL数据库系统启动参数配置几个常见的参数设置:query_cache_size:对热点数据进行缓存,提高命中率。sort_bufer_size:在需要排序时,分配指定大小的内存进行排序。否则会进行磁盘IO排序,性能很低。这个参数不能随便设置过大。r

2020-12-17 10:56:18 86

原创 RPC原理和使用到的相关技术

RPC:远程进程调用:几种比较典型的RPC实现和调用框架:1:RMI实现,利用Java.rmi包实现的,基于Java远程方法协议和原生Java序列化实现。2:hession,一共轻量级的remoting onhttp工具,使用简单的方法提供了RMI功能,基于http协议。3:thrift,是一种可伸缩的跨语言服务的框架。RPC框架实现原理:在框架中主要有三个角色,provider,consumer,registry。RPC使用到的技术:1:动态代理:生成client st

2020-12-17 10:16:36 527

原创 移动应用安全概览

移动安全篇国 内移动安全书籍很少,主要还是以国外的居多,虽然大部分未引进,但是很多可以在网上找到高清彩色英文原版,有些可能就是官方自己发出来的。虽然国外这方面 的书籍多,但看过几本Andorid安全书籍,感觉还是一般,深度不够,比如《Android Security:Attacks and Defenses》、《Android Apps Security》、《Mobile Appl

2020-12-16 17:48:33 684 1

原创 django环境中,安装了pymysql库,但是运行时提示需要升级mysqlclient 1.3.13 or above version, pymysql is 0.9.3

网上搜索到的答案,有的是要求修改Django中base.py代码,注释掉判断MySQL版本的代码部分,其实注释掉后,运行会提示很多异常错误。这种问题,很有可能是Django版本和pymysql版本不兼容导致的。最新版本的Django2.2就是这种问题,需要安装2.1.5,就可以解决该异常...

2019-04-28 16:35:09 2352

原创 记录一次因为Android版本不同导致的crash异常:Can't create handler inside thread that has not called Looper.prepare()

Can't create handler inside thread that has not called Looper.prepare()版权声明:本文为博主原创文章,未经博主允许不得转载。该异常表示不能在非UI线程里面创建handler对象,通常是因为在工作线程中处理UI相关的操作或者在非UI线程中new新的Handler导致一个APP上报crash日志,异常如下:

2017-02-24 13:54:07 474

原创 常用的免费的开源软件

操作系统:Centos※,Freebsd,Ubuntu,Redhat※,suselinux,Debian※网站服务:apache※,nginx※,lighttpd,php※,tomcat※,resin※,Tengine数据库: Mysql※,PostgreSQL,Mysql-proxy,MariaDB,MongoDB※,Redis※,Hbase※代理相关:lvs,keepalived

2015-09-25 16:10:17 390

原创 java.util.concurrent并发包JUC介绍

java.util.concurrent 包含许多线程安全、测试良好、高性能的并发构建块。不客气地说,创建 java.util.concurrent 的目的就是要实现 Collection 框架对数据结构所执行的并发操作。通过提供一组可靠的、高性能并发构建块,开发人员可以提高并发类的线程安全、可伸缩性、性能、可读性和可靠性。如果一些类名看起来相似,可能是因为 java.util.concu

2015-03-25 11:34:42 770

转载 Android线程池使用

Android线程池使用终结版有一段时间没写博文了,今天抽空总结一下,也希望能通过自己写的这些文章,加深理解的同时能帮助在技术方面有疑点的朋友搞清楚个所以然来,由于经常会在网上或群里看到有朋友会问线程方面的东西,就像我一个朋友他们老师讲的,J2SE、J2EE里面使用的线程方面的东西可能不是太多 ,但是在Android开发里面,玩的就是线程(UI Thread)! 好了,废话就说这么多吧,直

2015-01-10 18:28:30 673

原创 android 输入法开发

从SDK 1.5版本以后,Android就开放它的IMF(Input Method Framework),让我们能够开发自己的输入法。而开发输入法最好的参考就是Android自带的Sample-SoftKeyboard,虽然这个 例子仅包含英文和数字输入,但是它本身还算完整和清楚,对我们开始Android开发实战有很大帮助。  一、IMF简介  一个IMF结构中包含三个主要的部分:  

2015-01-10 13:41:16 1159

原创 android3.1以上系统中服务不能开机启动解决方案

android3.1以后的系统,没有activity,声明了系统开机广播,也是无法启动的1、android3.1之后,也是为了安全起见,如果应用程序没有启动过,则receiver不起作用,开机启动不了服务.2、根据网上有些贴子的提示和做法,我也做了个透明Activity,直接连接数据线把程序装载到手机上,service是可以运行的,因为activity中有启动service的方法3、程

2014-01-10 14:57:45 1323

原创 Java synchronized详解

第一篇:使用synchronized在编写一个类时,如果该类中的代码可能运行于多线程环境下,那么就要考虑同步的问题。在Java中内置了语言级的同步原语--synchronized,这也大大简化了Java中多线程同步的使用。我们首先编写一个非常简单的多线程的程序,是模拟银行中的多个线程同时对同一个储蓄账户进行存款、取款操作的。在程序中我们使用了一个简化版本的Account类,代表了一

2013-12-06 16:15:29 414

转载 美国网站直接shopping之经验总结

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明http://blossomlily.blogbus.com/logs/41055565.html可以直运中国的美国网站http://www.revolveclothing.com/男装女装都有, 都很潮. 有最最受JMS喜欢的JUICY COUTURE, 还有DIESEL, ED HARDY, D&G, MCQ

2013-10-09 15:56:48 3954

转载 给明年依然年轻的我们:欲望、外界、标签、天才、时间、人生目标、现实、后悔、和经历

今天是22岁的最后一天。几个月前,我从沃顿商学院毕业,用文凭上“最高荣誉毕业”的标签安抚了已经年过半百的老妈,然后转头辞去了毕业后的第一份工作,跟一家很受尊敬的公司、还有150万的年薪道了别,回到了上海,加入了“刚毕业就失业”俱乐部,开始了一天三顿盒饭的新生活,开始创建一个叫做连客的小东西(www.linkkk.com)。中间许多精彩剧情暂时略过。我肯定不是第一个做过这样事的人,也肯定不会

2013-09-30 10:08:14 646

转载 Android 学习资料收集汇总

一、学习最好的入门资料自然是视频,而技术视频非电驴莫属了,到电驴中搜索android视频可以看到非常多的视频,但还需要分类下载才行,有页面专门为某个人录制的,找到那种页面,然后有很多相关视频再连接到其他人的专题里面,这样比较有系统性。这里推荐几个专题页面连接:1、MLDN李兴华的Android开发实战 http://www.verycd.com/topics/2898607/2、传

2013-09-14 20:10:26 504

原创 Web 应用开源项目大全

下面是一个Web应用的开源列表。没什么可说的,太疯狂了。尤其是Web 2.0那一堆。我不知道你怎么想,有些开源项目的源码写得挺不好的,尤其是性能方面。或许你会以为改一改他们就可以成为为自己所用,不过,改这些开源的项目还真不容易。玩玩还可以。数字媒体相册(Flickr, Picasa)Gallery,基于PHP + MySQL的Web相册。非常易于使用,包括一个配置向导,对于相片

2013-09-14 20:02:48 1978 2

原创 从30岁到35岁:为你的生命多积累一些厚度

常常思考一个问题:是不是考虑做2年开发,打2年酱油,然后结婚生子,这样到底行不行?无论你是男是女,人生是一场独自修行的道路。如果在可以选的时候,还是选择靠自己吧。 无论你是要养家还是要实现人生价值,如果你处在迷茫之中,希望这篇文章可以传达一些正能量,可以帮到你。--当然这篇文章是转的呀,但真的很有理啊,假如看了这篇文章,会影响到你的一生,那么我就觉得今天这一小时的时间花在这里值了。

2013-07-27 09:28:12 585 1

原创 程序员练级攻略

前言你是否觉得自己从学校毕业的时候只做过小玩具一样的程序?走入职场后哪怕没有什么经验也可以把以下这些课外练习走一遍(朋友的抱怨:学校课程总是从理论出发,作业项目都看不出有什么实际作用,不如从工作中的需求出发)建议:不要乱买书,不要乱追新技术新名词,基础的东西经过很长时间积累而且还会在未来至少10年通用。 回顾一下历史,看看历史上时间线上技术的发展,你才能明白明天会是什么样。 一定要

2013-07-27 09:16:09 394

原创 知识管理的工具

如何保存和管理知识,是个人知识管理的一个非常重要的问题。善用各类知识管理工具,可以让一个人管理知识达到事半功倍的效果,月光博客对于国内外各种工具软件都有一些使用,也颇有些感悟,在2010年的时候,我曾经总结过一次《我的个人知识管理工具软件》,三年过去了,很多工具都发生了变化,这里我就总结一下自己最新的个人知识管理工具软件,供大家参考。  总的来说,个人知识管理工具软件分为网络版和单机版,单机版

2013-07-26 17:06:10 715

ANDROID发送邮件用的JAR

ANDROID发送邮件用的JAR,支持静默状态发送

2013-12-19

局域网资源查看工具 V1.60 破解版

可以查看局域网内的计算机资源,并能控制没有设置权限的计算机。还可以设置局域网内计算机的搜索方式

2009-09-27

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除