-
信号量限流,高并发场景不得不说的秘密
所属栏目:[优化] 日期:2019-07-31 热度:132
限流可以认为是一种降级,一般是根据后台的负载提前预估的一个阈值(也可以动态调整)。超过了这个值,就要进行一些旁路处理。根据业务形态,会有直接拒绝、延迟处理、保持等待、部分穿透、默认返回等响应方式。 concurrent包中的信号量,由于使用简单,易于[详细]
-
一个书呆子为黑学校电脑,搞出全球级操作系统,成就谷歌,让微软头疼不已
所属栏目:[优化] 日期:2019-07-31 热度:130
副标题#e# 本文来自微信公众号魔铁的世界(ID:jiangpeiyu0916),作者魔铁,首发于腾讯科技,未经授权,不得转载。 划重点: 1、让谷歌和IBM两家大公司爱恨难舍的Linux系统,最早只是芬兰一个叫林纳斯.托瓦兹的黑客玩出来的结果; 2、上中学时,林纳斯数学超[详细]
-
华人学者解开计算机领域30年难题:布尔函数敏感度猜想
所属栏目:[优化] 日期:2019-07-30 热度:59
近日,美国艾默里大学计算机与数学科学系教授黄皓(Hao Huang)用一篇短短 6 页的论文「轻松」证明了困扰理论计算机领域数十年的布尔函数敏感度猜想,引发了计算机和数学领域社区的广泛关注。布尔函数敏感度猜想是理论计算机科学中近三十年来最重要,最令[详细]
-
Python与C语言、Java、Nodejs、Golang进行性能测试比较
所属栏目:[优化] 日期:2019-07-30 热度:81
背景说明 在最近的项目开发中,遇到一个Python处理性能问题: 由于实时数据量较大(每秒有2100条日志,且每条日志平均大小在1kB左右),且受制于硬件资源限制,使用Python做实时数据处理,无法完成当前规模的数据集处理能力,数据越积越多,数据入库延时越[详细]
-
年薪200万,43岁被裁员!面对2019年全球裁员:3件事越早明白越好
所属栏目:[优化] 日期:2019-07-30 热度:194
最近在网上看到一则炒的特别火的新闻,43岁的Michael Wu,北大数学系本科,美国芝加哥大学计算机系硕士,是高科技芯片巨头公司C中国区负责大客户芯片销售的Director,在该公司工作了5年,年薪200万,今年3月被裁掉了。 和他一起被裁掉的,还有平行部门的另[详细]
-
灵魂拷问:Java对象的内存分配过程是如何保证线程安全的?
所属栏目:[优化] 日期:2019-07-30 热度:76
JVM内存结构,是很重要的知识,相信每一个静心准备过面试的程序员都可以清楚的把堆、栈、方法区等介绍的比较清楚。 上图,是一张在作者根据《Java虚拟机规范(Java SE 8)》中描述的JVM运行时内存区域结构画的。 很多人都知道Java对象是在堆内存中分配空间的[详细]
-
这5种可立即使用的Python框架,用户可根据实际需求使用任意框架
所属栏目:[优化] 日期:2019-07-30 热度:97
由于简单的学习曲线、越来越快的应用程序以及机器学习辅助功能等附加优势,Python已经成了IT行业的流行词。 到目前为止,几乎每个IT工程师和开发人员都必须了解Python的强度和功能。Python本身是一种编程语言,也许你已经掌握了这种令人惊叹的编程语言的一[详细]
-
只需一行代码完成多语言切换
所属栏目:[优化] 日期:2019-07-30 热度:175
副标题#e# 背景 之前总是有开发者反馈我应用切换了语言,可是工具类获取的 string 却没有发生改变。其实这个问题很简单,你切换语言的 Context 只作用在了你的 Activity 上,并没有对你的 Application 做同样的操作,知道了这点,那么解决问题就很简单了,[详细]
-
Java中的集合框架大总结
所属栏目:[优化] 日期:2019-07-27 热度:72
副标题#e# 直接上图: 从上面的集合框架图可以看到:Java集合框架主要包括两种类型的容器,一种是集合(Collection),存储一个元素集合;另一种是图(Map),存储键/值对映射。Collection接口又有两个子接口,List和Set,再下面是一些抽象类,最后是具体实现类[详细]
-
如何在Windows上做Python开发?微软出了官方教程
所属栏目:[优化] 日期:2019-07-27 热度:128
在 Windows 上做 Python 开发太痛苦?微软最近发布了一系列官方教程,终于 教程地址:https://docs.microsoft.com/zh-cn/windows/python/ 这些教程将指导使用者如何设置开发环境、是否在原生 Windows 或 Windows Subsystem for Linux (WSL) 系统上安装自己[详细]
-
JavaScript 究竟是如何工作的?
所属栏目:[优化] 日期:2019-07-27 热度:139
副标题#e# 前言 什么是 V8?JavaScript运行的背后发生了什么? 如果你是一个 JS 开发者或者是正在学习这门语言的学生,很大概率上你会遇到双字母词V8。在这篇文章中,我将会为你简述不同的 JS 引擎并深入探究 V8 引擎的工作机制。文章的第二部分涵盖了内存管[详细]
-
国内首本《Flutter 实战》中文电子书开源了!
所属栏目:[优化] 日期:2019-07-27 热度:105
Flutter 是 Google 面向移动端应用推出的一套跨平台开发工具,可以快速在iOS和Android上构建高质量的原生用户界面。 Flutter可以与现有的代码一起工作。 在2018年12月份正式发布Flutter 的 1.0 版本正式发布!凭借强大的跨平台 UI 框架得到了开发者们的热[详细]
-
换一种角度:从架构层面来看设计模式
所属栏目:[优化] 日期:2019-07-27 热度:103
副标题#e# 大部分讲解设计模式的书或者文章,都是从代码层面来讲解设计模式,看的时候都懂,但是到真正用的时候,还是理不清、想不明。 本文尝试从架构层面来聊一聊设计模式。通过将使用设计模式的代码和不使用设计模式的代码分别放到架构中,来看看设计模[详细]
-
一篇文章彻底搞懂Base64编码原理
所属栏目:[优化] 日期:2019-07-27 热度:160
开始 在互联网中的每一刻,你可能都在享受着Base64带来的便捷,但对于Base64的基础原理又了解多少?今天这篇文章带领大家了解一下Base64的底层实现。 Base64是什么东东呢? Base64编码是网络上常见的用于传输8bit字节数据的一种编码方式之一,所以可以依据概[详细]
-
前端有必要去学Node.js吗?
所属栏目:[优化] 日期:2019-07-27 热度:65
Node近两年已经成为前端知识栈必备技能之一。随便点开招聘网站找个岗位几乎都会要求会Node,更不用提一些高级岗位了。 可能你看过Node是什么,看过Node的文档,用Node写过一些小项目。但是你知道在一线互联网企业里,Node真正是怎么用的吗?是拿来做什么的?[详细]
-
Python基础必备知识:同步异步阻塞非阻塞
所属栏目:[优化] 日期:2019-07-27 热度:133
一、状态介绍 在了解其他概念之前,我们首先要了解进程的几个状态。在程序运行的过程中,由于被操作系统的调度算法控制,程序会进入几个状态:就绪,运行和阻塞。 就绪(Ready)状态:当进程已分配到除CPU以外的所有必要的资源,只要获得处理机便可立即执行[详细]
-
2019 年 7 月编程语言排行榜
所属栏目:[优化] 日期:2019-07-27 热度:105
7 月排名前十的分别是:Java, C, Python, C++, C#, Visual Basic .NET, JavaScript, PHP, SQL 和汇编语言。和上个月的不同之处主要是 C# 以微弱的优势超过了 Visual Basic .NET 的排名,再次进入 TOP 5,而宇宙语言 PHP 下滑到第八位。 Java 的地位依然稳[详细]
-
聊聊JavaScript中调用栈
所属栏目:[优化] 日期:2019-07-27 热度:192
1:基本概念 栈(stack):用来保存简单的数据字段。 堆(heap):用来保存栈中简单的数据字段对指针的引用。 队列:是一种先进先出的线性数据结构。 函数的调用的进栈和出栈的顺序,遵循 先进后出 的原则。 空间分配: 堆:一般由程序员释放,如果程序员不释[详细]
-
微软解释为什么Rust是系统编程的最佳选择
所属栏目:[优化] 日期:2019-07-27 热度:68
上周,MSRC(微软安全响应中心)透露出拥抱 Rust的打算,随后他们将这个话题扩展为一个系列,进一步阐述了使用安全的系统编程语言的的必要性,以及选择 Rust 的原因。 在该系列最新一篇文章中,MSRC 团队首席云开发倡导者 Ryan Levick 解释了为什么他们认[详细]
-
Java类加载及对象创建过程详解
所属栏目:[优化] 日期:2019-07-27 热度:71
副标题#e# 类加载过程 类加载的五个过程:加载、验证、准备、解析、初始化。 加载 在加载阶段,虚拟机主要完成三件事: 通过一个类的全限定名来获取定义此类的二进制字节流。 将这个字节流所代表的静态存储结构转化为方法区域的运行时数据结构。 在Java堆中[详细]
-
后端开发实践系列——Spring Boot项目模板
所属栏目:[优化] 日期:2019-07-27 热度:187
副标题#e# 在我的工作中,我从零开始搭建了不少软件项目,其中包含了基础代码框架和持续集成基础设施等,这些内容在敏捷开发中通常被称为第0个迭代要做的事情。但是,当项目运行了一段时间之后再来反观,我总会发现一些不足的地方,要么测试分类没有分好,[详细]
-
来,告诉你Node.js究竟是什么?
所属栏目:[优化] 日期:2019-07-27 热度:156
副标题#e# 前言 如果你有一定的前端基础,比如 HTML、CSS、JavaScript、jQuery;那么,Node.js 能让你以最低的成本快速过渡成为一个全栈工程师(我称这个全栈为伪全栈,我认为的全栈也要精通数据库,不喜勿喷),从而触及后端和移动端的开发。当然,Node.js也[详细]
-
Python之父考虑重构Python解释器
所属栏目:[优化] 日期:2019-07-27 热度:84
7月22日,Python之父Guido在Medium上发表了他的第一篇博文《PEG Parser》。 在该文中,Guido说他正在考虑使用PEG Parser代替现有的类LL(1) Parser(名为pgen),来重构Python解释器。原因是现在的 pgen 限制了Python语法的自由度,使得一些语法难以实现,[详细]
-
MIT 推出编程语言 ,从方程式和手写代码上解放工程师
所属栏目:[优化] 日期:2019-07-27 热度:72
副标题#e# 本文转自雷锋网,如需转载请至雷锋网官网申请授权。 麻省理工学院的研究人员最近推出了一种新的概率编程语言 Gen,这种语言让研究人员在不需要处理方程式和手动编写高性能代码的情况下,编写应用人工智能技术的多个领域的模型和算法。软件科学家[详细]
-
一个系统,搞定闲鱼服务端复杂问题告警-定位-快速处理
所属栏目:[优化] 日期:2019-07-27 热度:106
副标题#e# 引言 服务端问题排查(服务稳定性/基础设施异常/业务数据不符合预期等)对于开发而言是家常便饭,问题并不可怕,但是每天都要花大量时间去处理问题会很可怕;另一方面故障的快速解决至关重要。那么目前问题排查最大的障碍是什么呢?我们认为有几个原[详细]
