-
将Java进程转移到“解剖台”之前,法医都干了什么?
所属栏目:[优化] 日期:2019-10-13 热度:109
作为法医,不怕高度腐烂的尸体,也不怕错综复杂的案情。最怕的,是没留下任何东西。空无一物,任何高超的技术,丰富的经验,都无从下手。 生产环境错综复杂,几分钟前活蹦乱跳的进程,此刻就奄奄一息的躺在那里,苟延残喘。作为第一时间发现的目击者,一定[详细]
-
Web架构之路:MongoDB集群及高可用实践
所属栏目:[优化] 日期:2019-10-13 热度:142
MongoDB集群有副本集及主从复制两种模式,不过主从模式在MongoDB 3.6已经彻底废弃,今天主要探讨副本集的搭建和使用,以及分片。 副本集介绍 副本集(Replica Set)即副本的集合,在MongoDB中通过先定义一个副本集合,然后将多个节点(副本)加入到这个集合中[详细]
-
使用 Golang 构建整洁架构
所属栏目:[优化] 日期:2019-10-12 热度:194
什么是整洁架构? 在《Clean Architecture: A Craftsmans Guide to Software Structure and Design》一书中,著名作家 Robert Uncle Bob Martin 提出了一种具有一些重要特性的体系结构,如框架、数据库和接口的可测试性和独立性。 整洁架构的约束条件是: 独[详细]
-
游戏开发中最常见的10种编程语言
所属栏目:[优化] 日期:2019-10-12 热度:121
游戏开发是非常有经验和熟练的程序员的工作。 它可能花费数亿美元。 这是一项非常有创意的工作,也需要技术水平。 他们需要具有特定需求的编程语言。 以下是用于 游戏 开发的十大编程语言的列表。 1、C# C#如今在许多游戏引擎中广泛使用,并且是游戏开发所[详细]
-
过去50年间,十大热门语言及发明者大盘点
所属栏目:[优化] 日期:2019-10-12 热度:83
软件领域有许多编程语言,每年还涌现出越来越的新语言。新发布的语言有Scala、Kotlin、Go和Closure,但历史证明,只有少数语言能存活下来,其中一些语言对软件领域的发展做出了巨大贡献。 编程语言是软件领域的重要一环,虽然大家对热门的编程语言了解较多[详细]
-
图解分布式一致性算法
所属栏目:[优化] 日期:2019-10-12 热度:188
今天的文章,咱们会通过图的方式,来深入学习和理解分布式一致性的实现原理。 开始的时候,咱们先来灵魂一问:什么是分布式一致性? 你的应用是单节点吗? 你的系统用户多吗、支持扩容吗? 你的系统扩容后数据能保持一致吗? 你的系统是否使用Raft、Paxos? 是[详细]
-
久等了,提高开发效率的 Vue 技巧来了
所属栏目:[优化] 日期:2019-10-12 热度:133
最近俩月正好用 vue 做了一个大数据的项目,积累了很多心得。今天终于有机会分享出来了。 组件(component)的使用 vue 提供的模块化无疑是提高开发效率的神器,而且对于后期代码优化和维护也提供的极大地便利。 组件使用简介 vue 提供了组件功能,组件又可[详细]
-
保护Linux服务器的7个步骤
所属栏目:[优化] 日期:2019-10-12 热度:189
本文将向您介绍基本的Linux服务器安全保护措施,侧重于Debian/Ubuntu,但是您可以将本文介绍的所有内容应用于其他Linux发行版。 1. 更新你的服务器 要保护服务器,您应该做的第一件事是更新本地存储库,并通过应用新的补丁来升级操作系统和已安装的应用程[详细]
-
微服务架构:利用事件驱动实现最终一致性
所属栏目:[优化] 日期:2019-10-12 热度:158
事务一致性 首先,我们来回顾一下ACID原则: Atomicity:原子性,改变数据状态要么是一起完成,要么一起失败 Consistency:一致性,数据的状态是完整一致的 Isolation:隔离线,即使有并发事务,互相之间也不影响 Durability:持久性, 一旦事务提交,不可[详细]
-
一文了解微服务的流程和组织
所属栏目:[优化] 日期:2019-10-12 热度:137
对于大型和复杂的应用程序,微服务架构往往是不错的选择。然而,除了拥有正确的架构之外,成功的软件开发还需要在组织、开发和交付流程方面做一些工作。 图1展示了架构、流程和组织之间的关系: 图1 大型复杂应用程序快速、频繁和可靠地交付软件需要具备几[详细]
-
3分钟让你明白:HashMap之红黑树树化过程
所属栏目:[优化] 日期:2019-10-12 热度:71
01 概述 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文主要分析一下HashMap中红黑树树化的过程。 02[详细]
-
揭开 JavaScript 引擎的面纱
所属栏目:[优化] 日期:2019-10-12 热度:72
前言 最初,JavaScript 只能在 Web 浏览器中运行,但是随着 Node 的出现,现在 JavaScript 也可以在服务端运行。虽然我们可能知道应该在何时何地去使用它, 但是我们真的了解这些脚本执行的背后发生了什么吗? 如果您觉得自己对 JavaScript 引擎有了一些了[详细]
-
Kafka快速入门秘籍:背景介绍,应用场景分析、核心架构分析
所属栏目:[优化] 日期:2019-10-09 热度:52
一、背景介绍 引言:其实这段背景,我们之前介绍RabbitMQ的时候,已经说过了,我们这里讲kakfa的时候,再把这一段给拿出来,再说明下。在讲实战前,我们还是有必要讲解下理论的,理论为辅,实战为主,在实战的基础上,再深入理解理论,底层原理,底层源码[详细]
-
TIOBE 10月排行:排名前 8 的语言稳定如昨
所属栏目:[优化] 日期:2019-10-09 热度:189
TIOBE 编程语言排行榜 10 月份的榜单已公布,这期的标题比较有趣 Top 8 of the TIOBE index quite stable for the last 15 years,意思就是排名前 8 的编程语言在这 15 年里一直都十分稳定。 有多稳定呢?根据 TIOBE 统计的数据,虽然每年都会诞生新的编程[详细]
-
9月份Github上热门的Python开源项目
所属栏目:[优化] 日期:2019-10-09 热度:70
9 月份 GitHub 上最热门的Python开源项目排行已经出炉啦,下面就是本月上榜的12个开源项目,一起来看看吧: 1. mlcourse.ai https://github.com/Yorko/mlcourse.ai Star 6008 mlcourse.ai是OpenDataScience提供的开源机器学习课程。你还可以参加课程中举行[详细]
-
从写下第1行代码到拿下谷歌百万年薪 ,我是如何在8个月内做到的?
所属栏目:[优化] 日期:2019-10-09 热度:196
本文作者非计算机科班出身,在写下第一行 Javascript 代码后不到一年,他先后收获了来自谷歌、Lyft、Yelp、云计算独角兽 Rubrik、IBM 人工智能和 JP Morgan 的录用通知书。他的求职经历可能会对你找工作有所帮助。 我希望我的故事能够激励当今的软件工程求[详细]
-
优化Python代码的4种方法
所属栏目:[优化] 日期:2019-10-09 热度:144
介绍 我是一个程序员。从大学时代开始我就一直在进行编程,而我仍然对使用简单的Python代码所开辟的道路之多感到惊讶。 但是我并不总是那么高效。我相信这是大多数程序员(尤其是刚起步的程序员)共有的一个特征,编写代码的快感始终优先于效率和简洁性。虽[详细]
-
我所理解的架构,看这篇就对了
所属栏目:[优化] 日期:2019-10-09 热度:141
什么是架构? 个人所理解的架构的含义应该是:定义一个完整系统中所需的组件以及实现组件间的交互策略。那么很明显,架构设计应该是考虑如何定义和划分好每个组件,然后考虑它们是如何基于不同的交互策略来实现我们业务需要的场景。 什么是组件? 个人认为,[详细]
-
架构漫谈:从架构的角度看如何写好代码
所属栏目:[优化] 日期:2019-10-09 热度:101
软件架构实际上包括了:代码架构,以及承载代码运行的硬件部署架构。实际上,硬件部署架构最终还是由代码的架构来决定。因为代码架构不合理,是无法把一个运行单元分拆出多个来的,那么硬件架构能分拆的就非常的有限,整个系统最终很难长的更大。 所以我们[详细]
-
六个步骤,封装你喜爱的Python代码包
所属栏目:[优化] 日期:2019-10-09 热度:103
假设你很喜欢用同一段Python代码,里面有几个相关的小型函数,或者是含有几百行代码的中型模块。程序员可能会把它复制到不同的项目或存储库中,或者从特别设置的实用工具代码文件夹中导入这段代码。 这很正常。程序员在编写代码的过程中都会不断积累这些个[详细]
-
9月份Github上热门的Java开源项目
所属栏目:[优化] 日期:2019-10-09 热度:176
9 月份 GitHub 上最热门的Java开源项目排行已经出炉啦,在本月的名单中,有阿里巴巴开源的COLA、easyexcel,去哪儿网的Java应用生产问题诊断工具bistoury等,下面就是本月上榜的12个开源项目: 1. eladmin https://github.com/elunez/eladmin Star 3591 该[详细]
-
中彩票比雷劈还难?用算法提升概率试试
所属栏目:[优化] 日期:2019-10-09 热度:172
靠玩彩票谋生的可能性有多大? 2005年,麻省理工学院的一群学生一起组成了一个博彩组织。他们确定了想赌的游戏,计算了赔率,并获得了数百万美元的利润。 谈一谈可能性 每当强力球开奖奖金达到5亿美元时,就会如雨后春笋般冒出宣称中奖可能性的文章,调侃每[详细]
-
学 Java 网络爬虫,需要哪些基础知识?
所属栏目:[优化] 日期:2019-10-09 热度:105
说起网络爬虫,大家想起的估计都是 Python ,诚然爬虫已经是 Python 的代名词之一,相比 Java 来说就要逊色不少。有不少人都不知道 Java 可以做网络爬虫,其实 Java 也能做网络爬虫而且还能做的非常好,在开源社区中有不少优秀的 Java 网络爬虫框架,例如[详细]
-
Redis集合类型使用说明
所属栏目:[优化] 日期:2019-09-30 热度:183
今天我们了解一下Redis中的集合类型,也就是set集合。在Redis中set也是可以保存多个字符串的。那么set集合和list链表到底有什么不同呢?下面我们重点介绍一下它们之间的不同。 set中的元素是不可以重复的,而list是可以保存重复元素的。 set中的元素是无序[详细]
-
你对JavaScript掌握多少?项目大牛详细解读JavaScript框架结构
所属栏目:[优化] 日期:2019-09-30 热度:153
对于任何一个程序员来说,最关注的两个问题无非就是:时间复杂度和空间复杂度。第一部分介绍了 V8 为改进 JavaScript 执行时间所做的速度提升和优化,第二部分则将着重介绍内存管理方面的知识。 这篇文章,小编简要概述了编程语言的一般工作机制,并深入探[详细]