-
微服务架构一直火,为什么服务化要搞懂?
所属栏目:[优化] 日期:2019-09-20 热度:55
微服务架构,这 5 年左右一直被认可,是软件架构的未来方向。需要大家理解的是,为什么需要服务化。比如微服务架构对企业来说,带来什么价值?有啥弊端? 这里浅谈一下微服务架构,主要还是在理解 Why :为什么需要服务化? 一、对微服务架构的理解 1.1 微服[详细]
-
Python代码又报错了?看下这个方法
所属栏目:[优化] 日期:2019-09-20 热度:130
刚学习python的同学经常会遇到一个问题: 已经安装了特定的包或者第三库,但是pycharm总是提示没有找到。 比如我已经有ddt了,可运行脚本的时候却告诉我没有这个模块: 出现这种问题,你需要去检查一下你实际使用的python环境和你正在配置的环境是否是同一[详细]
-
一文悟透备受争议的 Go 语言错误处理
所属栏目:[优化] 日期:2019-09-20 热度:95
写过 C 的同学知道,C 语言中常常返回整数错误码(errno)来表示函数处理出错,通常用 -1 来表示错误,用 0 表示正确。 而在 Go 中,我们使用 error 类型来表示错误,不过它不再是一个整数类型,是一个接口类型: typeerrorinterface{ Error()string } 它表[详细]
-
Linux下如何实现不活动用户登录超时自动退出?
所属栏目:[优化] 日期:2019-09-20 热度:123
概述 今天主要分享几种linux系统实现不活动用户登录超时后自动登出的方法。 方法一:通过修改.bashrc或.bash_profile文件来实现 通过修改home目录下的.bashrc或.bash_profile文件来实现。这两个文件选择其中一个在末尾加入如下一行,具体操作如下: echoTM[详细]
-
一个引发程序员们干架的问题
所属栏目:[优化] 日期:2019-09-20 热度:103
在一个分布式系统的开发团队中,有一些问题是很容易产生程序员之间矛盾的。 其中之一就是「业务归属」,就是当新加/修改一个业务的时候,代码变更应该放到你负责的系统还是我负责的系统里? 一些业务轮廓很清晰的就不用说了,大家的认定都是一样的。比如商[详细]
-
技术分享:详解Docker负载均衡和服务发现
所属栏目:[优化] 日期:2019-09-20 热度:146
Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目,自开源后受到广泛的关注和讨论,以至于dotCloud 公司后来都改名为 Docker Inc。 Docker 是一个使用Go语言开发的开源的应用容器引擎,是PaaS提供商dotCloud开源的一个容[详细]
-
项目中为什么一定要用Spring?什么是Spring四种策略?
所属栏目:[优化] 日期:2019-09-20 热度:160
相信每个Java开发人员在工作、学习中都了解Spring怎么使用,但对于一个初级的开发工程师来说,仅仅了解怎么使用,能够很快的通过Spring来完成任务,这应该是足够了,但是呢,如果你还想向更高的级别去前进,系统的学习,掌握它的底层原理是必不可少的。 每[详细]
-
2019年流行的6大优秀DevOps工具
所属栏目:[优化] 日期:2019-09-20 热度:191
DevOps作为对开发和运维人员都极为重要的系统,有望在2019年甚至更长时间内保持稳定增长。事实上,据IDC预测,到2022年,全球DevOps软件市场将达到80亿美元,比2017年的39亿美元有所增长。 DevOps工具的选择对组织来说也非常重要,以下是一些堪称 优秀 的D[详细]
-
铁打的Python连续3年第一,PHP跌出前十:IEEE编程语言排行榜出炉
所属栏目:[优化] 日期:2019-09-18 热度:152
Python势头不减,依旧第一,而且进一步拉开了与其他语言的差距。 这一结果,来自IEEE Spectrum2019年度编程语言排行榜。 这已经是Python连续3年保持第一。 在Python之下,第二交椅的位置再度发生变化:变成了Java。 这一位置,去年属于C++,前年属于C。 可[详细]
-
深入理解递归,是你误解了递归
所属栏目:[优化] 日期:2019-09-18 热度:94
递归是一个神奇的算法,它是编程书籍中讲解的最尴尬部分。这些书籍通常会展示一个递归的阶乘实现,然后警告你,虽然它能运行但是它非常的慢并且可能会堆栈溢出而崩溃。虽然大家对它持怀疑态度,但是这不影响递归是算法中最强大的想法。 让我们来看看经典的[详细]
-
如何保证前端项目代码质量
所属栏目:[优化] 日期:2019-09-18 热度:96
What 什么是代码本身的质量? 代码本身的质量: 包括复杂度, 重复率, 代码风格等。 复杂度: 项目代码量,模块大小,耦合度等 重复率: 重复出现的代码区块占比,通常要求在5%以下(借助平台化工具如Sonar) 代码风格: 代码风格是否统一(动态语言代码如JS, Pytho[详细]
-
值得收藏!16段代码入门Python循环语句
所属栏目:[优化] 日期:2019-09-18 热度:188
循环语句又称为重复结构,用于反复执行某一操作。面对大数量级的重复运算,即使借助计算机,重复编写代码也是费时的,这时就需要借助循环语句。使用循环语句一般要用到条件判断,根据判断式的返回值决定是否执行循环体。 循环分为两种模式,一种是条件满足[详细]
-
简单地理解区分CountDownLatch与CyclicBarrier--高并发编程
所属栏目:[优化] 日期:2019-09-18 热度:87
本文主要讨论在高并发编程中两非常实用工具CyclicBarrier(同步屏障)和CountDownLatch(倒计时锁),两者都是java.util.concurrent并发包内非常有用的并发工具类,为了帮助理解会结合一些有趣的比喻,下面将对两者进行讨论。 一、CountDownLatch倒计时锁(一个[详细]
-
16岁成为全栈开发者:我从开发游戏到写加密货币投资机器人的心路历程
所属栏目:[优化] 日期:2019-09-18 热度:146
全栈开发者听起来是个很高大上的程序员岗位,似乎没有几年工作经验是 Hold 不住的。但是,有个葡萄牙少年 16 岁就成为了全栈开发者,这是他从接触编程开始经历的故事。 我叫 Nuno,今年 16 岁,来自葡萄牙。今天我想跟大家聊聊我是如何成为一名全栈开发者[详细]
-
每秒100W请求,12306秒杀业务,架构如何优化?
所属栏目:[优化] 日期:2019-09-17 热度:90
如《同样是高并发,QQ/微博/12306的架构难度一样吗?》一文所述,同样是高并发场景,三类业务的架构挑战不一样: QQ类业务,用户主要读写自己的数据,访问基本带有uid属性,数据访问锁冲突较小 微博类业务,用户的feed主页由别人发布的消息构成,数据读写有[详细]
-
8个优秀Docker容器监控工具,收藏了
所属栏目:[优化] 日期:2019-09-17 热度:91
Docker是目前使用最广泛的容器之一,但它并不总是像物理硬件一样可见。而使用docker容器监控工具有助于消除这种透明度的缺失。以下介绍8种优秀Docker容器监控工具。 1.SolarWinds ServerApplication Monitor SolarWinds ServerApplication Monitor是一个应[详细]
-
Java 中的 T,E,K,V, 别傻傻分不清楚!
所属栏目:[优化] 日期:2019-09-17 热度:197
前言 Java 泛型(generics)是 JDK 5 中引入的一个新特性, 泛型提供了编译时类型安全检测机制,该机制允许开发者在编译时检测到非法的类型。 泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。 泛型带来的好处 在没有泛型的情况的下,通[详细]
-
软件架构五大原则,确保你的项目100%成功
所属栏目:[优化] 日期:2019-09-17 热度:83
方案架构师是负责系统架构以及特定产品的技术标准(包括技术、平台、基础架构)的专家。他们为产品设定前景,他们的分析也是产品的定义、设计、交付和永久支持的成功关键。因此,构架师不仅需要了解业务需求,还需要了解符合企业技术总目标的逻辑性、可扩展[详细]
-
采用Kubernetes有哪些关键点?
所属栏目:[优化] 日期:2019-09-17 热度:190
Kubernetes之所以成为流行趋势,是因为它可以实现基础设施的弹性扩展能力,而不是让IT团队花费大量时间去维护服务器、存储、网络设备等,K8s可以把每个应用打包成一个容器镜像,其中所有实例的管理、发现、访问等细节,都不需要IT运维人员进行复杂的干预,[详细]
-
编写Dockerfiles的优秀实践
所属栏目:[优化] 日期:2019-09-17 热度:57
本文档介绍了构建高效镜像的优秀实践和方法。 Docker通过从Dockerfile(按顺序包含构建给定镜像所需的所有命令的文本文件)读取命令来自动构建镜像。Dockerfile遵循特定的格式和一组命令,您可以在Dockerfile reference中找到这些命令。 Docker镜像由只读层[详细]
-
七个开源的 Spring Boot 前后端分离项目
所属栏目:[优化] 日期:2019-09-17 热度:154
前后端分离已经在慢慢走进各公司的技术栈,根据松哥了解到的消息,不少公司都已经切换到这个技术栈上面了。即使贵司目前没有切换到这个技术栈上面,松哥也非常建议大家学习一下前后端分离开发,以免在公司干了两三年,SSH 框架用的滚瓜烂熟,出来却发现自[详细]
-
GitHub上找到的更适合初学者的几本Docker免费电子书
所属栏目:[优化] 日期:2019-09-17 热度:101
Docker 是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目,自开源后受到广泛的关注和讨论,以至于 dotCloud 公司后来都改名为 Docker Inc。 作为一种新兴的虚拟化方式,Docker 跟传统的虚拟化方式相比具有众多的优势。有了Docke[详细]
-
为什么时至今日编码面试依然这么糟糕?
所属栏目:[优化] 日期:2019-09-17 热度:79
作为候选人,最重要的是要记住:45 分钟的编码面试并不能准确评估你是否会胜任这份工作。 高错误否定比率意味着你绝不应该为被拒绝而感到难过。拒绝通常只意味着在一个人工设定的、时间紧迫的环境中,你需要更多练习来展示你已具备的技术能力。 我们有 90%[详细]
-
常用排序算法总结
所属栏目:[优化] 日期:2019-09-17 热度:79
概述 在计算器科学与数学中,一个排序算法(英语:Sorting algorithm)是一种能将一串数据依照特定排序方式进行排列的一种算法。本文将总结几类常用的排序算法,包括冒泡排序、选择排序、插入排序、快速排序和归并排序,分别使用Java代码实现,简要使用图例[详细]
-
微服务架构中常用的解决方案,总结了传统服务发现方案
所属栏目:[优化] 日期:2019-09-14 热度:86
正常情况下当我们要访问服务时需要知道服务实例地址和端口,如果服务实例地址和端口都是固定的我们可以直接将其配置在文件中使用,但大多数线上生产环境尤其容器部署情况下服务实例地址都是动态分配的,只有当服务实例实际部署之后才能获得地址,服务调用[详细]
