九路 九路
4年前
Android 内存管理机制
前言:Android系统是基于Linux内核开发的操作系统,而Linux系统有其独到的内存管理机制,会在进程活动停止后结束该进程。Android在此基础上优化了内存管理,会把进程都保存在内存中,直到系统需要更多内存为止,释放部分进程。这些被保存在内存中的进程,并不会影响系统的运行速度,相反,在重新打开这些进程时,会提升进程启动速度Android内存管
Wesley13 Wesley13
3年前
RPC的简单实现
RPC(RemoteProcedureCall)—远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。RPC协议假定某些传输协议的存在,如TCP或UDP,为通信程序之间携带信息数据。在OSI网络通信模型中,RPC跨越了传输层和应用层。RPC使得开发包括网络分布式多程序在内的应用程序更加容易。RPC采用客户机/
Stella981 Stella981
3年前
Git设置分支保护实现CodeReview卡点
Git设置分支保护实现CodeReview卡点GIT是一个分布式版本控制系统的软件,主要用来控制代码的版本。所谓分布式也就是每一个git的客户端都有一份完成的代码库,这样如果中央服务器出现问题,代码也会在各个开发者的电脑上有备份。(本文以下内容以GitLab为例)GitFlow模式将代码和环境对应
Wesley13 Wesley13
3年前
Java中的ReentrantLock和synchronized两种锁定机制的对比
多线程和并发性并不是什么新内容,但是Java语言设计中的创新之一就是,它是第一个直接把跨平台线程模型和正规的内存模型集成到语言中的主流语言。核心类库包含一个 Thread 类,可以用它来构建、启动和操纵线程,Java语言包括了跨线程传达并发性约束的构造—— synchronized 和 volatile 。在简化与平台无关的并发类的开发的
Stella981 Stella981
3年前
Kubernetes 时代的安全软件供应链
作者汤志敏 阿里云容器服务高级技术专家汪圣平 阿里云云平台安全高级安全专家导读:从Dockerimage到Helm,从企业内部部署到全球应用分发,作为开发者的我们如何来保障应用的交付安全。本文会从软件供应链的攻击场景开始,介绍云原生时代的应用交付标准演进和阿里云上的最佳实践。“没有集装箱,就不会有全球化”。在软件行业里,
Wesley13 Wesley13
3年前
Java数据结构和算法(四)
日常开发中,数组和集合使用的很多,而数组的无序插入和删除效率都是偏低的,这点在学习ArrayList源码的时候就知道了,因为需要把要插入索引后面的所以元素全部后移一位。而本文会详细讲解链表,可以解决数组的部分问题,相比数组的大小不可更改,链表更加灵活,在学习LinkedList源码对链表有了一个大致的了解。ArrayList和Linked
Stella981 Stella981
3年前
JFinal的Model进行json反序列化
在使用JFinal进行开发时,我们可能会需要解决这样的问题:Model进行json的序列化与反序列化。官方已经提供了序列化的方法Model.toJson()非常方便,反序列化就得自己实现一下了。之前我一直都是把Model序列化成的json字符串,反序列化成map,然后再调用Model.setAttrs(map)。这样就有类型转换问题,最后反序列化得到
Stella981 Stella981
3年前
Android平台零代码快速集成AGC性能管理服务
  在使用手机应用的时候,经常会有应用打开慢、界面卡顿无反应、应用闪退、网络加载失败等问题,这些应用性能问题,都是影响用户体验的罪魁祸首。  随着手机应用性能的重要性逐步提升,越来越多监控应用性能的产品也应运而生。华为AppGalleryConnect(以下简称AGC)提供了应用开发,测试,发布以及分析的全流程的质量服务。1\.华为AGC性能管理
Stella981 Stella981
3年前
Redis做LRU缓存
当Redis用作缓存时,通常可以让它在添加新数据时自动逐出旧数据。这种行为在开发人员社区中非常有名,因为它是流行的memcached系统的默认行为。LRU实际上只是支持的驱逐方法之一。本页介绍了Redismaxmemory指令的更一般主题,该指令用于将内存使用限制为固定数量,并且它还深入介绍了Redis使用的LRU算法,实际上是精确LRU的近似值。
Stella981 Stella981
3年前
2020DevOps状态报告
这是Puppet报告的走过的第九个年头,本次报告基于对2400名IT、开发、信息安全行业的技术人员的调研,着重勾画了DevOps状态的两大趋势:平台模型、需求变更的管理。多年来,我们已经证明了DevOps实践会带来更好的绩效和组织成果,也学习并分享了组织的发展,以及如何更快地发布更好的软件。看到显著进展的同时,我们也看到大多数