-
Java工程师必须搞明白:BeanFactory与FactoryBean是个啥?
所属栏目:[优化] 日期:2019-09-13 热度:78
副标题#e# 1.前提概要 很多java开发者在使用Spring框架中都见过后缀为FactoryBean的类,比如Mybatis-Spring中的SqlSessionFactoryBean。说到这里就不得不提BeanFactory。FactoryBean和BeanFactory特别容易让人混淆,面试还经常问到这两种概念。其实它们的作[详细]
-
Java随机数的陷阱
所属栏目:[优化] 日期:2019-09-13 热度:76
前言 随机数我们应该不陌生,业务中我们用它来生成验证码,或者对重复性要求不高的id,甚至我们还用它在年会上搞抽奖。今天我们来探讨一下这个东西。如果使用不当会引发一系列问题。 Java中的随机数 我们需要在Java中随机生成一个数字。java开发中我们通常[详细]
-
如何在Ubuntu上安装和使用R语言
所属栏目:[优化] 日期:2019-09-13 热度:150
副标题#e# 这个教程指导你如何在 Ubuntu 上安装 R 语言。你也将同时学习到如何在 Ubuntu 上用不同方法运行简单的 R 语言程序。 R,和 Python 一样,它是在统计计算和图形处理上最常用的编程语言,易于处理数据。随着数据分析、数据可视化、数据科学(机器学[详细]
-
使用Python为中秋节绘制一块美味的月饼
所属栏目:[优化] 日期:2019-09-13 热度:110
对于在外的游子,每逢佳节倍思亲。而对于996ICU的苦逼程序猿们,最期待的莫过于各种节假日能把自己丢在床上好好休息一下了。这几天各公司都陆续开始发中秋礼品了。朋友圈各种秀高颜值的月饼,所以今天我也提前给大家送去一份中秋的美味月饼吧! python turt[详细]
-
企业Docker实施面面观
所属栏目:[优化] 日期:2019-09-12 热度:58
副标题#e# 概述 当下Docker容器化的架构备受欢迎,越来越多的企业开始利用容器来构建自己的基础架构。通常是自己建立了Docker注册表,部署在服务器上安装Docker,安装Jenkins通过Docker插件Jenkins CI管道管理Docker容器。更大一点规模的则会使用K8S或者Swa[详细]
-
Google员工吐槽TypeScript:我觉得你的类型检查不太好
所属栏目:[优化] 日期:2019-09-12 热度:131
近日名为 Evan Martin 的 Google 员工在 TypeScript 的 GitHub repo 中发表了对 TypeScript 的吐槽(就是提了一个 issue),说吐槽可能不太合适,准确来说是对 TypeScript 3.5 的使用反[详细]
-
浏览器垃圾回收机制与 Vue 项目内存泄漏场景分析
所属栏目:[优化] 日期:2019-09-12 热度:197
副标题#e# 1. 介绍 浏览器的 Javascript 具有自动垃圾回收机制(GC:Garbage Collecation),也就是说,执行环境会负责管理代码执行过程中使用的内存。其原理是:垃圾收集器会定期(周期性)找出那些不在继续使用的变量,然后释放其内存。但是这个过程不是实时的[详细]
-
腾讯正式开源面向 Unity 项目的 Bug 修复神器 InjectFix
所属栏目:[优化] 日期:2019-09-12 热度:105
副标题#e# InjectFix是腾讯最新对外开源的Unity代码逻辑热修复方案,可实现在Unity线上客户端内,不用迭代新版本,就能快速修复游戏的线上bug。 先说几个亮点: 直接在Unity工程上修改C#即可更新;老项目无需修改原有代码即可使用; 更符合苹果热更新条款;[详细]
-
Nginx何防止流量攻击,大部分程序员都收藏了...
所属栏目:[优化] 日期:2019-09-12 热度:137
两种实现方式分别是基于Ehcache和Redis的session管理策略。 大家都知道服务器资源有限的,但是客户端来的请求是无限的(不排除恶意攻击), 为了保证大部分的请求能够正常响应,不得不放弃一些客户端来的请求,所以我们会采用Nginx的限流操作, 这种操作可以[详细]
-
谁说 Vim 不好用?送你一个五彩斑斓的编辑器!
所属栏目:[优化] 日期:2019-09-12 热度:86
副标题#e# 相信大家在使用各种各样强大的 IDE 写代码时都会注意到,代码中各种类型的关键字会用独特的颜色标记出来,然后形成一套语法高亮规则。这样不仅美观,而且方便代码的阅读。而在上古神器 Vim 中,我们通常看到的是黑底白字,没有任何其它颜色。难道[详细]
-
技术面试时该反问什么问题?灵魂50问,GitHub日入2500星
所属栏目:[优化] 日期:2019-09-12 热度:93
本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。 看了那么多技术类岗位面试攻略,好不容易到了最后一步。部门leader/HR反问一句: 你还有什么要问我的? 没有问题,略显尴尬,显得你对这份工作不上心。如何问出水平,问出更多信息,加[详细]
-
K8s集群架构与高可用解析
所属栏目:[优化] 日期:2019-09-11 热度:150
基本工作过程 Kubernetes 的核心工作过程: 资源对象:Node、Pod、Service、Replication Controller 等都可以看作一种资源对象 操作:通过使用 kubectl 工具,执行增删改查 存储:对象的目标状态(预设状态),保存在 etcd 中持久化储存; 自动控制:跟踪、对[详细]
-
同样是高并发,QQ/微博/12306的架构难度一样吗?
所属栏目:[优化] 日期:2019-09-11 热度:179
开篇同一个用户并发扣款时,有一定概率出现数据不一致,可以使用CAS乐观锁的方式,在不降低吞吐量,保证数据的一致性: UPDATEt_yueSETmoney=$new_money WHEREuid=$uidANDmoney=$old_money; 更详细的描述,详见《并发扣款,如何保证数据的一致性?》。 不能[详细]
-
浏览 GitHub 太卡了?教你两招
所属栏目:[优化] 日期:2019-09-11 热度:52
老实说,GitHub 在国内的使用体验并不算太好,这其中很大的原因就是网络了。 GitHub 访问起来比较卡,这个看起来貌似无解。国内的 gitee 网速倒是可以,但是无法代替 GitHub,个人感觉 gitee 上还是开源项目多一些,工具类库要少一些。 在网络比较卡的情况[详细]
-
微服务架构中常用的解决方案,总结了传统服务发现方案
所属栏目:[优化] 日期:2019-09-11 热度:125
副标题#e# 正常情况下当我们要访问服务时需要知道服务实例地址和端口,如果服务实例地址和端口都是固定的我们可以直接将其配置在文件中使用,但大多数线上生产环境尤其容器部署情况下服务实例地址都是动态分配的,只有当服务实例实际部署之后才能获得地址,[详细]
-
理解微服务的定义,概念以及微服务的原理
所属栏目:[优化] 日期:2019-09-11 热度:149
微服务是业界比较新的流行语,似乎每个人都在以这样或那样的方式谈论它。让我们理解一下什么是微服务?通过这篇教程我们将理解微服务的定义,概念以及微服务的原理。 微服务的定义 如今,微服务是SOA(面向服务的架构)之后越来越流行的架构模式之一,如果您[详细]
-
教师节送什么?Python教你挑选礼物
所属栏目:[优化] 日期:2019-09-11 热度:178
副标题#e# 又到了一年一度的教师节,每次教师节大家都会烦恼不知道送什么礼物?尤其是对于理工男来说,更是一个让人头大的问题。我今天就和大家分享一个用Python爬取淘宝商品信息的项目,希望可以给大家选礼物时提供一个参考。 1.爬取目标 本次项目利用selen[详细]
-
GitHub 宣布已经顺利升级到 Rails 6.0
所属栏目:[优化] 日期:2019-09-11 热度:115
GitHub 宣布它顺利升级到了 Rails 6.0。GitHub 平台是用 Rails 构建的,而 Rails 也是最早托管在 GitHub 上大型开源项目之一。GitHub 称他们的开发者与上游紧密合作,参与了新版本的开发。 在 Rails 6.0 开发期间,GitHub 工程师递交了 100 多个 pull requ[详细]
-
计算机组成原理:计算机的层次与编程语言
所属栏目:[优化] 日期:2019-09-11 热度:84
计算机基础方面的知识,对于一些非科班出身的同学来讲,一直是他们心中的痛,而对于科班出身的同学,很多同学在工作之后,也意识到自身所学知识的不足与欠缺,想回头补补基础知识。关于计算机基础的课程很多,内容繁杂,但无论是相关书籍还是大学课程,都[详细]
-
Python 2大限来了!113天后自生自灭 | 附升级指南
所属栏目:[优化] 日期:2019-09-11 热度:183
副标题#e# 本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。 Python 2终于走到了尽头。 官方宣布,新一年的钟声响起之时(2020年1月1日),就是Python 2落幕之日。 之后,Python 2自生自灭,就算天塌下来,官方也不会再改进了。 他们解[详细]
-
Netflix应用架构之用于个性化和推荐的系统架构
所属栏目:[优化] 日期:2019-09-06 热度:78
副标题#e# 本文我们将探索如何创建一个能够交付并支持快速创新的软件架构。提出一种能够处理大量现有数据、响应用户交互并易于试验新的推荐方法的软件体系结构并非易事。在这篇文章中,我们将描述我们如何解决Netflix面临的一些挑战。 首先,我们在下图中展[详细]
-
编程语言Nim 中文官网现已上线
所属栏目:[优化] 日期:2019-09-06 热度:136
近期 Nim 中文官网现已上线!大家可以通过https://nim-lang-cn.org来访问。 Nim 是一个新型的静态类型、命令式编程语言,支持过程式、函数式、面向对象和泛型编程风格而保持简单和高效。Nim 从 Lisp 继承来的一个特殊特性--抽象语法树(AST)作为语言规范的[详细]
-
Puppet 搭建与部署,看这一篇就够了
所属栏目:[优化] 日期:2019-09-06 热度:91
副标题#e# Puppet工作原理 让管理员只集中于要管理的目标,而忽视实现的细节。puppet既可以在单机上使用,也可以以C/S结构使用。在大规模使用puppet的情况下,通常使用C/S结构,在这种结构中puppet客户端只运行puppetclient,Puppet服务端只运行puppetmaste[详细]
-
并发扣款一致性优化,CAS下ABA问题,这个话题还没聊完!!!
所属栏目:[优化] 日期:2019-09-06 热度:118
上一篇答星球水友提问,《并发扣款,如何保证数据的一致性?》中提到:用CAS乐观锁,可以在尽量不影响吞吐量的情况下,保证数据的一致性。 大家有非常多的留言,大概有这么几类: 是否存在ABA问题? 为什么不能用: UPDATEt_yueSETmoneymoney=money-$diffAND[详细]
-
让线程按顺序执行8种方法
所属栏目:[优化] 日期:2019-09-06 热度:145
副标题#e# 一.前言 本文使用了8种方法实现在多线程中让线程按顺序运行的方法,涉及到多线程中许多常用的方法,不止为了知道如何让线程按顺序运行,更是让读者对多线程的使用有更深刻的了解。使用的方法如下: [1] 使用线程的join方法[ 2] 使用主线程的join方[详细]
