-
Java的神秘世界:为何说ClassLoader 是 Java最神秘的技术之一
所属栏目:[优化] 日期:2019-10-12 热度:173
ClassLoader 是 Java 届最为神秘的技术之一,无数人被它伤透了脑筋,摸不清门道究竟在哪里。网上的文章也是一篇又一篇,经过本人的亲自鉴定,绝大部分内容都是在误导别人。本文我带读者彻底吃透 ClassLoader,以后其它的相关文章你们可以不必再细看了。 Cl[详细]
-
将Java进程转移到“解剖台”之前,法医都干了什么?
所属栏目:[优化] 日期:2019-10-12 热度:76
作为法医,不怕高度腐烂的尸体,也不怕错综复杂的案情。最怕的,是没留下任何东西。空无一物,任何高超的技术,丰富的经验,都无从下手。 生产环境错综复杂,几分钟前活蹦乱跳的进程,此刻就奄奄一息的躺在那里,苟延残喘。作为第一时间发现的目击者,一定[详细]
-
Web架构之路:MongoDB集群及高可用实践
所属栏目:[优化] 日期:2019-10-12 热度:132
MongoDB集群有副本集及主从复制两种模式,不过主从模式在MongoDB 3.6已经彻底废弃,今天主要探讨副本集的搭建和使用,以及分片。 副本集介绍 副本集(Replica Set)即副本的集合,在MongoDB中通过先定义一个副本集合,然后将多个节点(副本)加入到这个集合中[详细]
-
使用 Golang 构建整洁架构
所属栏目:[优化] 日期:2019-10-12 热度:89
什么是整洁架构? 在《Clean Architecture: A Craftsmans Guide to Software Structure and Design》一书中,著名作家 Robert Uncle Bob Martin 提出了一种具有一些重要特性的体系结构,如框架、数据库和接口的可测试性和独立性。 整洁架构的约束条件是: 独[详细]
-
游戏开发中最常见的10种编程语言
所属栏目:[优化] 日期:2019-10-12 热度:141
游戏开发是非常有经验和熟练的程序员的工作。 它可能花费数亿美元。 这是一项非常有创意的工作,也需要技术水平。 他们需要具有特定需求的编程语言。 以下是用于 游戏 开发的十大编程语言的列表。 1、C# C#如今在许多游戏引擎中广泛使用,并且是游戏开发所[详细]
-
过去50年间,十大热门语言及发明者大盘点
所属栏目:[优化] 日期:2019-10-12 热度:112
软件领域有许多编程语言,每年还涌现出越来越的新语言。新发布的语言有Scala、Kotlin、Go和Closure,但历史证明,只有少数语言能存活下来,其中一些语言对软件领域的发展做出了巨大贡献。 编程语言是软件领域的重要一环,虽然大家对热门的编程语言了解较多[详细]
-
图解分布式一致性算法
所属栏目:[优化] 日期:2019-10-12 热度:198
今天的文章,咱们会通过图的方式,来深入学习和理解分布式一致性的实现原理。 开始的时候,咱们先来灵魂一问:什么是分布式一致性? 你的应用是单节点吗? 你的系统用户多吗、支持扩容吗? 你的系统扩容后数据能保持一致吗? 你的系统是否使用Raft、Paxos? 是[详细]
-
如何通过wrap malloc定位C/C++程序的内存泄漏
所属栏目:[优化] 日期:2019-09-30 热度:52
用C/C++开发的程序执行效率很高,但却经常受到内存泄漏的困扰。本文提供一种通过wrap malloc查找memory leak的思路。 什么是内存泄漏? 动态申请的内存丢失引用,造成没有办法回收它(我知道杠jing要说进程退出前系统会统一回收),这便是内存泄漏。 Java等编[详细]
-
老牌运维教你如何快速分析Linux服务器的性能问题
所属栏目:[优化] 日期:2019-09-30 热度:119
作为一名linux系统运维人员,最主要的工作是优化系统配置,使应用在系统上以最优的状态运行,但是由于硬件问题、软件问题、网络环境等的复杂性 和多变性,导致对系统的优化变得异常复杂,如何定位性能问题出在哪个方面,是性能优化的一大难题, 本章从系统[详细]
-
如何设计API接口,实现统一格式返回?
所属栏目:[优化] 日期:2019-09-30 热度:109
前言 在移动互联网,分布式、微服务盛行的今天,现在项目绝大部分都采用的微服务框架,前后端分离方式,(题外话:前后端的工作职责越来越明确,现在的前端都称之为大前端,技术栈以及生态圈都已经非常成熟;以前后端人员瞧不起前端人员,那现在后端人员要[详细]
-
Redis集合类型使用说明
所属栏目:[优化] 日期:2019-09-30 热度:65
今天我们了解一下Redis中的集合类型,也就是set集合。在Redis中set也是可以保存多个字符串的。那么set集合和list链表到底有什么不同呢?下面我们重点介绍一下它们之间的不同。 set中的元素是不可以重复的,而list是可以保存重复元素的。 set中的元素是无序[详细]
-
你对JavaScript掌握多少?项目大牛详细解读JavaScript框架结构
所属栏目:[优化] 日期:2019-09-30 热度:99
对于任何一个程序员来说,最关注的两个问题无非就是:时间复杂度和空间复杂度。第一部分介绍了 V8 为改进 JavaScript 执行时间所做的速度提升和优化,第二部分则将着重介绍内存管理方面的知识。 这篇文章,小编简要概述了编程语言的一般工作机制,并深入探[详细]
-
代码详解:Python正则表达式的优秀使用指南
所属栏目:[优化] 日期:2019-09-30 热度:58
处理文本数据的一个主要任务就是创建许多以文本为基础的特性。 人们可能想要在文本中找出特定格式的内容,比如找出存在于文本中的电子邮件,或者大型文本中的电话号码。 虽然想要实现上述功能听起来很繁琐,但是如果使用Python正则表达式模块,就可以使这[详细]
-
负载均衡层设计方案之负载均衡技术总结篇
所属栏目:[优化] 日期:2019-09-28 热度:157
1、概述 通过前面文章的介绍,并不能覆盖负载均衡层的所有技术,但是可以作为一个引子,告诉各位读者一个学习和使用负载均衡技术的思路。虽然后面我们将转向业务层和业务通信层的介绍,但是对负载均衡层的介绍也不会停止。在后续的时间我们将穿插进行负载[详细]
-
架构师分析 架构的重要性
所属栏目:[优化] 日期:2019-09-28 热度:119
技术需要架构,芯片的架构,软件需要架构,公司需要架构,建筑需要架构,产品需要架构,人也需要架构,聊聊架构的话题。 忘了哪里看的文章有一句话,架构不对,什么都不对。 这是有道理的,架构是我们搭建一栋楼,一个项目,一个公司,一种技术的基础,就[详细]
-
Redis哈希类型使用命令
所属栏目:[优化] 日期:2019-09-28 热度:66
我们知道在Redis中有5种数据类型,之前的文章中我们已经介绍过了String类型,也就是字符串类型,今天我们学习第二种数据类型,哈希类型。大部分语言基本都提供了哈希类型,如Java语言中的Map类型及Python语言中的字典类型等等。虽然语言不同,但它们基本使[详细]
-
低代码虽好,但如何平衡开发质量和速度?
所属栏目:[优化] 日期:2019-09-28 热度:194
在速度成为主要推动力的今天,开发者面临的压力从未如此之大。当今的全天候市场需要一个敏捷的企业,能够在一夜之间开发出新的功能和应用程序,以满足不断增长的需求。开发团队只需要提高开发速度,并尽可能快地将代码推出门外。与此同时,不断增长的客户[详细]
-
写给前端的Docker实战教程
所属栏目:[优化] 日期:2019-09-28 热度:116
本篇文章详细而又简短的介绍了:一名完全不了解 Docker 前端程序员,将全站 Docker 化的过程。内容主要包含: Docker 基本概念 真实站点迁移过程: 静态站点 Nodejs 站点(Express) WordPress(PHP) 一些必备技巧:开机启动、常用Shell 文章会讲解使用 Docke[详细]
-
Kubernetes工具大全,9个集群部署工具
所属栏目:[优化] 日期:2019-09-28 热度:101
在过去的几年中,Kubernetes在容器编排上给它的竞争对手造成了极大冲击,比如Docker Swarm。现在Kubernetes是企业首选的容器解决方案,并得到了迅速普及。今天,就为大家呈现2019年新的Kubernetes工具大全,以飨大家。朋友们喜欢的话,请多多评论转发,给[详细]
-
浅谈10个提升应用程序10倍性能的技巧
所属栏目:[优化] 日期:2019-09-27 热度:199
提高web应用程序性能比以往任何时候都更加重要。在线经济活动的份额正在增长;超过5%的发达国家的经济现在是在互联网上的(参见参考资料中的互联网统计数据)。而我们这个始终在线、高度连接的现代世界意味着用户的期望比以往任何时候都要高。如果您的站点没[详细]
-
Sqlite事务模型、性能优化Tips、常见误区
所属栏目:[优化] 日期:2019-09-27 热度:86
0.前言 本文主要介绍sqlite的事务模型,以及基于事务模型的一些性能优化tips,包括事务封装、WAL+读写分离、分库分表、page size优化等。并基于手淘sqlite的使用现状总结了部分常见问题及误区,主要集中在多线程的设置、多线程下性能优化的误区等。本文先[详细]
-
大势所趋!数据科学家必知的5种图算法
所属栏目:[优化] 日期:2019-09-27 热度:106
在万物相连的世界里,用户并不是独立的个体,彼此之间都有某种联系。构建机器学习模型时,有时也会将这种联系放入模型中。 虽然关系数据库中无法在不同数行(用户)间使用这种关系,但在图数据库里,这样做非常简单。 本文将介绍一些数据科学家必知的重要的[详细]
-
详解Docker容器监控之Cadvisor,值得收藏
所属栏目:[优化] 日期:2019-09-27 热度:142
概述 我们可以使用多种方法监控容器的运行情况,比如EFK等,但是我们仍旧需要一个资源利用率监控系统。这个时候,google开发的cadvisor就可以帮上我们的忙了。 cadvisor是google创建的用于监控icmtfy容器资源使用情况和性能的软件,cadvisor在宿主机上以容[详细]
-
没有爬虫,就没有今天的搜索引擎
所属栏目:[优化] 日期:2019-09-27 热度:125
在如今信息化、数字化的时代,人们已经离不开网络搜索了,但细想一下,你在搜索过程中能够真正获得相关信息,是因为有人在帮你把与之相关的内容筛选和呈递到你面前了。 就像在饭店里,你点了土豆并且能吃到,是因为有人帮你在土豆、萝卜、西红柿等中找到土[详细]
-
多线程开发中线程数量设计问题
所属栏目:[优化] 日期:2019-09-27 热度:194
前言 前面我们用了几篇文章系统的说了一下有关Java并发编程模型中的一些基础的知识。比如同步,锁,原子性操作,信号量等以及它们的一些延展实现闩锁,栅锁等等。 今天我们回过头来简单说一下并发编程模型的设计和选择。 主要涉及到我们如何利用多线程设计[详细]