-
图解分布式一致性算法
所属栏目:[优化] 日期:2019-10-16 热度:156
今天的文章,咱们会通过图的方式,来深入学习和理解分布式一致性的实现原理。 开始的时候,咱们先来灵魂一问:什么是分布式一致性? 你的应用是单节点吗? 你的系统用户多吗、支持扩容吗? 你的系统扩容后数据能保持一致吗? 你的系统是否使用Raft、Paxos? 是[详细]
-
久等了,提高开发效率的 Vue 技巧来了
所属栏目:[优化] 日期:2019-10-16 热度:204
最近俩月正好用 vue 做了一个大数据的项目,积累了很多心得。今天终于有机会分享出来了。 组件(component)的使用 vue 提供的模块化无疑是提高开发效率的神器,而且对于后期代码优化和维护也提供的极大地便利。 组件使用简介 vue 提供了组件功能,组件又可[详细]
-
保护Linux服务器的7个步骤
所属栏目:[优化] 日期:2019-10-16 热度:146
本文将向您介绍基本的Linux服务器安全保护措施,侧重于Debian/Ubuntu,但是您可以将本文介绍的所有内容应用于其他Linux发行版。 1. 更新你的服务器 要保护服务器,您应该做的第一件事是更新本地存储库,并通过应用新的补丁来升级操作系统和已安装的应用程[详细]
-
微服务架构:利用事件驱动实现最终一致性
所属栏目:[优化] 日期:2019-10-15 热度:180
事务一致性 首先,我们来回顾一下ACID原则: Atomicity:原子性,改变数据状态要么是一起完成,要么一起失败 Consistency:一致性,数据的状态是完整一致的 Isolation:隔离线,即使有并发事务,互相之间也不影响 Durability:持久性, 一旦事务提交,不可[详细]
-
一文了解微服务的流程和组织
所属栏目:[优化] 日期:2019-10-15 热度:140
对于大型和复杂的应用程序,微服务架构往往是不错的选择。然而,除了拥有正确的架构之外,成功的软件开发还需要在组织、开发和交付流程方面做一些工作。 图1展示了架构、流程和组织之间的关系: 图1 大型复杂应用程序快速、频繁和可靠地交付软件需要具备几[详细]
-
3分钟让你明白:HashMap之红黑树树化过程
所属栏目:[优化] 日期:2019-10-15 热度:93
01 概述 HashMap是Java程序员使用频率最高的用于映射(键值对)处理的数据类型。随着JDK(Java Developmet Kit)版本的更新,JDK1.8对HashMap底层的实现进行了优化,例如引入红黑树的数据结构和扩容的优化等。本文主要分析一下HashMap中红黑树树化的过程。 02[详细]
-
揭开 JavaScript 引擎的面纱
所属栏目:[优化] 日期:2019-10-15 热度:161
前言 最初,JavaScript 只能在 Web 浏览器中运行,但是随着 Node 的出现,现在 JavaScript 也可以在服务端运行。虽然我们可能知道应该在何时何地去使用它, 但是我们真的了解这些脚本执行的背后发生了什么吗? 如果您觉得自己对 JavaScript 引擎有了一些了[详细]
-
搞定 Linux Shell 文本处理工具,看完这篇集锦就够了
所属栏目:[优化] 日期:2019-10-15 热度:116
Linux Shell是一种基本功,由于怪异的语法加之较差的可读性,通常被Python等脚本代替。既然是基本功,那就需要掌握,毕竟学习Shell脚本的过程中,还是能了解到很多Linux系统的内容。 Linux脚本大师不是人人都可以达到的,但是用一些简单的Shell实现一些常[详细]
-
炒作还是赌未来?量子技术深陷淘金狂潮
所属栏目:[优化] 日期:2019-10-15 热度:172
量子技术的概念出现之后,几乎所有的科幻小说、电影里都有它的身影。不管到底是不是强相关,只要遇见了没法解释说明的问题,就套用量子技术的概念来解释,仿佛量子技术是万能的。 随着技术的进步,量子技术也逐渐从虚无缥缈的概念变得真实可触,来自全球的[详细]
-
Java中牛逼哄哄的消息队列到底有什么用?
所属栏目:[优化] 日期:2019-10-15 热度:171
最近小千会听到很多学员说,在面试大型互联网公司的时候,很可能会被问到消息队列的问题: 在何种场景下使用了消息中间件? 为什么要在系统里引入消息中间件? 如何实现幂等? 链式调用是我们在写程序时候的一般流程,为了完成一个整体功能,会将其拆分成多个[详细]
-
如何避免新代码变包袱?阿里通用方法来了
所属栏目:[优化] 日期:2019-10-15 热度:193
什么是设计?什么是架构?从零开始建立一个新的系统,新写的每行代码都可能成为明天的历史包袱?如何能有效的在遗留代码上工作?今天,阿里资深技术专家辉子为我们带来NBF框架下软件工程架构设计通用方法论,值得细细品读。 Note:本文讨论的是基于服务化前提[详细]
-
还不懂微服务原理?阿里高级技术专家带你看透微服务的来龙去脉
所属栏目:[优化] 日期:2019-10-15 热度:74
我们先看下维基百科和百度百科给出的定义: 维基百科:2014年,Martin Fowler 与 James Lewis 共同提出了微服务的概念,定义了微服务是由以单一应用程序构成的小服务,自己拥有自己的行程与轻量化处理,服务依业务功能设计,以全自动的方式部署,与其他服[详细]
-
9款Kubernetes的无服务器工具,收藏了
所属栏目:[优化] 日期:2019-10-15 热度:91
继续分享Kubernetes的有用工具,本文为大家介绍9款Kubernetes的无服务器工具,朋友们喜欢的话,请多多评论转发,给更多的朋友。 1.Kubeless Kubeless是Kubernetes原生的无服务器框架,可让你部署少量代码,而不必担心基础架构的问题。Kubeless有开箱即用的[详细]
-
9月份Github上热门的Python开源项目
所属栏目:[优化] 日期:2019-10-14 热度:146
9 月份 GitHub 上最热门的Python开源项目排行已经出炉啦,下面就是本月上榜的12个开源项目,一起来看看吧: 1. mlcourse.ai https://github.com/Yorko/mlcourse.ai Star 6008 mlcourse.ai是OpenDataScience提供的开源机器学习课程。你还可以参加课程中举行[详细]
-
从写下第1行代码到拿下谷歌百万年薪 ,我是如何在8个月内做到的?
所属栏目:[优化] 日期:2019-10-14 热度:89
本文作者非计算机科班出身,在写下第一行 Javascript 代码后不到一年,他先后收获了来自谷歌、Lyft、Yelp、云计算独角兽 Rubrik、IBM 人工智能和 JP Morgan 的录用通知书。他的求职经历可能会对你找工作有所帮助。 我希望我的故事能够激励当今的软件工程求[详细]
-
优化Python代码的4种方法
所属栏目:[优化] 日期:2019-10-14 热度:204
介绍 我是一个程序员。从大学时代开始我就一直在进行编程,而我仍然对使用简单的Python代码所开辟的道路之多感到惊讶。 但是我并不总是那么高效。我相信这是大多数程序员(尤其是刚起步的程序员)共有的一个特征,编写代码的快感始终优先于效率和简洁性。虽[详细]
-
我所理解的架构,看这篇就对了
所属栏目:[优化] 日期:2019-10-14 热度:208
什么是架构? 个人所理解的架构的含义应该是:定义一个完整系统中所需的组件以及实现组件间的交互策略。那么很明显,架构设计应该是考虑如何定义和划分好每个组件,然后考虑它们是如何基于不同的交互策略来实现我们业务需要的场景。 什么是组件? 个人认为,[详细]
-
架构漫谈:从架构的角度看如何写好代码
所属栏目:[优化] 日期:2019-10-14 热度:172
软件架构实际上包括了:代码架构,以及承载代码运行的硬件部署架构。实际上,硬件部署架构最终还是由代码的架构来决定。因为代码架构不合理,是无法把一个运行单元分拆出多个来的,那么硬件架构能分拆的就非常的有限,整个系统最终很难长的更大。 所以我们[详细]
-
六个步骤,封装你喜爱的Python代码包
所属栏目:[优化] 日期:2019-10-14 热度:119
假设你很喜欢用同一段Python代码,里面有几个相关的小型函数,或者是含有几百行代码的中型模块。程序员可能会把它复制到不同的项目或存储库中,或者从特别设置的实用工具代码文件夹中导入这段代码。 这很正常。程序员在编写代码的过程中都会不断积累这些个[详细]
-
9月份Github上热门的Java开源项目
所属栏目:[优化] 日期:2019-10-14 热度:158
9 月份 GitHub 上最热门的Java开源项目排行已经出炉啦,在本月的名单中,有阿里巴巴开源的COLA、easyexcel,去哪儿网的Java应用生产问题诊断工具bistoury等,下面就是本月上榜的12个开源项目: 1. eladmin https://github.com/elunez/eladmin Star 3591 该[详细]
-
中彩票比雷劈还难?用算法提升概率试试
所属栏目:[优化] 日期:2019-10-14 热度:148
靠玩彩票谋生的可能性有多大? 2005年,麻省理工学院的一群学生一起组成了一个博彩组织。他们确定了想赌的游戏,计算了赔率,并获得了数百万美元的利润。 谈一谈可能性 每当强力球开奖奖金达到5亿美元时,就会如雨后春笋般冒出宣称中奖可能性的文章,调侃每[详细]
-
学 Java 网络爬虫,需要哪些基础知识?
所属栏目:[优化] 日期:2019-10-14 热度:190
说起网络爬虫,大家想起的估计都是 Python ,诚然爬虫已经是 Python 的代名词之一,相比 Java 来说就要逊色不少。有不少人都不知道 Java 可以做网络爬虫,其实 Java 也能做网络爬虫而且还能做的非常好,在开源社区中有不少优秀的 Java 网络爬虫框架,例如[详细]
-
不会这几个库,都不敢说我会Python爬虫
所属栏目:[优化] 日期:2019-10-12 热度:105
很多朋友不知道Python爬虫怎么入门,怎么学习,到底要学习哪些内容。今天我来给大家说说学习爬虫,我们必须掌握的一些第三方库。 废话不多说,直接上干货。 1.请求库 1. requests GitHub:https://github.com/psf/requests requests库应该是现在做爬虫最火[详细]
-
Zookeeper技术:分布式架构详解、分布式技术详解、分布式事务
所属栏目:[优化] 日期:2019-10-12 热度:202
一、分布式架构详解 1、分布式发展历程 1.1 单点集中式 特点:App、DB、FileServer都部署在一台机器上。并且访问请求量较少 1.2 应用服务和数据服务拆分 特点:App、DB、FileServer分别部署在独立服务器上。并且访问请求量较少 1.3 使用缓存改善性能 特点[详细]
-
分享一款Docker可视化管理工具DockerUI
所属栏目:[优化] 日期:2019-10-11 热度:196
概述 之前都是使用命令行进行Docker的管理,这里简单介绍一下Docker的图形界面管理。之所以说简单介绍,是因为在生产环境都是集群,很少使用图形界面管理单台Docker主机,所以就演示记录一下,平时自己测试时还是可以用到的。 这里演示的是使用Docker UI进[详细]
