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