Android开发必学!阿里Android开发面试解答
前言许多Android开发者经常会问我,要学会哪些东西才能成为一个优秀的Android工程师?对于这个问题,他们的描述或多或少都有些差异,但是,总体来说,我们都需要学习一系列的技能,才能成为一个优秀的Android工程师。在我看来,存在这样的困惑是正常的。Android是一个巨大并且动态的生态系统,你可能需要花好几周时间去了解并学习它相关的一些
DevOpSec DevOpSec
4年前
【转载】JVM性能调优
1、JVM调优目标:使用较小的内存占用来获得较高的吞吐量或者较低的延迟。程序在上线前的测试或运行中有时会出现一些大大小小的JVM问题,比如cpuload过高、请求延迟、tps降低等,甚至出现内存泄漏(每次垃圾收集使用的时间越来越长,垃圾收集频率越来越高,每次垃圾收集清理掉的垃圾数据越来越少)、内存溢出导致系统崩溃,因此需要对JVM进行调优,使得程序在正
Wesley13 Wesley13
3年前
MongoDB是什么
MongoDB是什么?MongoDB是一款为web应用程序和互联网基础设施设计的数据库管理系统。没错MongoDB就是数据库,是NoSQL类型的数据库。那么nosql又是什么?NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在处理web2.0网站,特别是超大规模和高并发的SNS类型的we
Stella981 Stella981
3年前
Linux性能分析之上下文切换
而在每个任务运行前,CPU都需要知道任务从哪里加载、又从哪里开始运行,也就是说,需要系统事先帮它设置好CPU寄存器和程序计数器CPU寄存器,是CPU内置的容量小、但速度极快的内存。而程序计数器,则是用来存储CPU正在执行的指令位置、或者即将执行的下一条指令位置。它们都是CPU在运行任何任务前,必须的依赖环境,因此也被叫做C
Wesley13 Wesley13
3年前
Java面试官最爱的volatile关键字
在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层实现以及操作系统的相关知识。下面我们以一次假想的面试过程,来深入了解下volitile关键字吧!面试官:
Easter79 Easter79
3年前
SpringCloud学习笔记(七)之SpringCloud Config分布式配置中心
微服务意味着要将单体应用中的业务拆分成一个个子服务,每个服务的粒度相对较小,因此系统中会出现大量的服务。由于每个服务都需要必要的配置信息才能运行,所以一套集中式的、动态的配置管理设施是必不可少的。SpringCloud提供了ConfigServer来解决这个问题,我们每一个微服务自带一个application.yml。上百个配置管理。是什么
Wesley13 Wesley13
3年前
MySQL_分库分表
分库分表数据切分  通过某种特定的条件,将我们存放在同一个数据库中的数据分散存放到多个数据库(主机)上面,以达到分散单台设备负载的效果。数据的切分同时还能够提高系统的总体可用性,由于单台设备Crash之后,仅仅有总体数据的某一部分不可用,而不是全部的数据。切分模式  数据的切分(Sharding)依据其切分规则的类
Stella981 Stella981
3年前
Linux 无线网络断开的解决方案
Linux系统用着用着突然发现电脑上的WiFi图标不见了,电脑无法连接到无线网。这可急坏了,找遍设置也没找到哪里可以重新打开无线网,感觉就像是凭空消失了一样。折腾了一天,终于把无线网络恢复正常了。这篇文章就来梳理一下在Linux上修复无线网络的一些简单常用的操作。首先,我们可以使用rfkill命令查看无线设备的状态。$
Wesley13 Wesley13
3年前
thinkphp 消息队列
当前笔记中的内容针对的是thinkphpqueue的v1.1.2版本,现在官方已经更新到了v1.1.3版本,下文中提到的几个Bug在最新的master分支上均已修复。笔记中的部分内容还未更新。传统的程序执行流程一般是即时|同步|串行的,在某些场景下,会存在并发低,吞吐量低,响应时间长等问题。在大型系统中,一般会引入消息队列的组件,将流
Wesley13 Wesley13
3年前
2021年,微服务全面取代单体架构?
自从进入互联网时代以来,智能手机快速普及,移动终端成为人们生活中不可或缺的一部分。互联网公司趁着东风高速发展,甚至成为国家资本巨头。互联网用户人数猛涨,对娱乐,工作,生活质量的要求就会更高,那么软件的设计规模便随着需求而逐渐庞大,业务需求也比曾经要复杂的多,尤其是对软件系统的性能、吞吐率、稳定性、扩展等特性提出了更高的要求。