移动开发小水吧

没啥高深技术,只求水水更健康!


  • 首页

  • 分类

  • 关于

  • 搜索
close

Android 内存优化不完全手册

发表于 Aug 29 2018   |   分类于 Android   |  

什么是内存泄漏

只要是现代智能电子设备,不管或大或小,都会有一个叫做内存的硬件,在手机中这个硬件的参数尤为重要,是我们评价一个手机好坏的标准之一。

以Android手机为例,我们开发的程序如果想要运行起来,就需要开启一个独立的进程,而这个进程如果想要运行起来,就必须占用一部分的内存,这就是我们的应用和手机内存之间的关系了。
说到这里,我们就可以聊聊内存泄漏了(以下内容来自百度百科)。

内存泄漏(Memory Leak)是指程序中己动态分配的堆内存由于某种原因程序未释放或无法释放,造成系统内存的浪费,导致程序运行速度减慢甚至系统崩溃等严重后果。

内存泄漏缺陷具有隐蔽性、积累性的特征,比其他内存非法访问错误更难检测。因为内存泄漏的产生原因是内存块未被释放,属于遗漏型缺陷而不是过错型缺陷。此外,内存泄漏通常不会直接产生可观察的错误症状,而是逐渐积累,降低系统整体性能,极端的情况下可能使系统崩溃。

百度百科的解释已经很明白了,具体到程序方面来说,基本上就是该回收的对象由于一些原因无法正常回收,这样的对象越来越多导致手机的内存占用率居高不下,可用的空闲内存越来越少,从而频繁的触发垃圾回收机制,以至于降低了应用的流畅度,严重的时候会导致内存溢出(OOM Out Of Memory)的问题,导致程序崩溃。

至于什么是内存溢出,请自行搜索学习,该知识点不在本篇教程内。

阅读全文 »

Springboot2.0中利用自定义属性动态设置SQL语句

发表于 Aug 28 2018   |   分类于 SpringBoot   |  

起因

看到标题可能很多朋友会懵,这什么意思,什么是利用自定义属性动态设置SQL语句,这么做图什么呢?
其实这个标题要结合着目前的大框架来看,由于将权限框架封装成了Maven项目,从而在使用权限的过程中只要在Pom.xml中引入我上传在Maven私服的权限框架就可以了,但是之前的权限框架由于之考虑了最基本的情况,也就是原来的权限框架对应的数据库表单主要有:用户表,角色表,权限表,菜单表和资源表,现在由于业务的增加,导致了我们加入了审批权限表,该表是和角色表相关联的,但是这里就面临一个问题,那就是,不是每个项目都有审批权限的而且这么改权限框架会导致权限框架臃肿且业务侵入性很强,那么有没有什么解决方案呢?

阅读全文 »

Java面试手册

发表于 Jul 27 2018   |   分类于 Java   |  

今天之所以分享这套面试题,有几个原因,我个人认为不一定非要换工作了才看面试题,平时闲暇之余就应当看看面试题:

  1. 有好题目可以学习知识;
  2. 有好题目可以留着面试用;
  3. 补足自己的知识盲区;
  4. 学习了解行业内关注的知识点。

这个面试手册是我看过的很不错的一个,作者是:WebFuse,他的博客是:http://webfuse.cn/

下面我们来看他的内容吧:

阅读全文 »

Springboot2.0中封装RabbitMQ到Maven私服

发表于 Jul 27 2018   |   分类于 SpringBoot   |  

起因

由于未来我们的系统都是由一个统一的用户管理系统来管理用户数据的,所以各个子系统中不需要也不可以随意的新增或修改用户的个人信息,鉴于此,我考虑通过MQ的方式,实现在用户系统中添加、删除或修改用户信息时同时将这条操作记录发送给该用户拥有权限的子系统中去。

有图更好理解:

logo

既然说到MQ,则需要简单的介绍并了解一下MQ了,下文摘自百度百科:

MQ全称为Message Queue, 消息队列(MQ)是一种应用程序对应用程序的通信方法。应用程序通过读写出入队列的消息(针对应用程序的数据)来通信,而无需专用连接来链接它们。消息传递指的是程序之间通过在消息中发送数据进行通信,而不是通过直接调用彼此来通信,直接调用通常是用于诸如远程过程调用的技术。排队指的是应用程序通过 队列来通信。队列的使用除去了接收和发送应用程序同时执行的要求。其中较为成熟的MQ产品有IBM WEBSPHERE MQ等等。

经过各种文章的对比特性以及我们使用的业务场景等综合分析,最后选择了RabbitMQ作为我们的消息队列,至于对比的文章也都是百度的,有兴趣的可以自行查找。

阅读全文 »

关于Activiti6的封装设计方案

发表于 Jun 14 2018   |   分类于 SpringBoot   |  

作者

本文的作者是我部门的同事:凌海天,一个热衷于技术的LOLer,在Activiti方面有不少经验,这次的封装也是基于我们部门的整体Web开发框架的发展目的而做的。

出现问题

在使用act的过程中,我们发现使用act时有些地方可能需要一点包装,因为不同业务发起流程写入的代码却不尽相同,为了防止代码的坏味道,我们打算对act进行一些对应我们公司业务的一些延伸,以方便我们能够更加的方便使用

阅读全文 »
1234…7
Mr.Cool

Mr.Cool

热爱移动开发,专注移动技术

35 日志
7 分类
5 标签
微博
© 2019 Mr.Cool
由 Hexo 强力驱动
主题 - NexT.Muse