foundation

全球当下最厉害的14位程序员,说没听过简直离谱~

99封情书 提交于 2021-01-31 09:01:14
Python实战社群 Java实战社群 长按识别下方二维码, 按需求添加 扫码关注添加客服 进Python社群▲ 扫码关注添加客服 进Java社群 ▲ 来源丨IT World整理自网络 全球最厉害的14位程序员都有哪些人?接下来让我们一起来看一下让业界膜拜的这十几位顶级编程大神。 注意,排名不分先后。 01 Jon Skeet 个人名望: 程序技术问答网站Stack Overflow总排名第一的大神,每月的问答量保持在425个左右。 个人简介/主要荣誉: 谷歌软件工程师,代表作有《深入理解C#(C# In Depth)》。 网络上对Jon Skeet的评价: “他根本不需要调试器,只要他盯一下代码,错误之处自会原形毕露。” “如果他的代码没有通过编译的时候,编译器就会道歉。” “他根本不需要什么编程规范,他的代码就是编程规范。” 02 Gennady Korotkevich 个人声望: 编程大赛神童 个人简介/主要荣誉: 年仅11岁时便参加国际信息学奥林比克竞赛,创造了最年轻选手的记录。在2007-2012年间,总共取得6枚奥赛金牌;2013年美国计算机协会编程比赛冠军队成员;2014年Facebook黑客杯冠军得主。 截止目前,稳居俄编程网站Codeforces声望第一的宝座,在TopCoder算法竞赛中暂列榜眼位置。 网络上对Gennady Korotkevich的评价:

Linux虚拟化与容器化

耗尽温柔 提交于 2021-01-20 00:01:57
随着云计算的不断发展,计算资源不断集中于大规模的服务器集群上。为了充分发挥硬件潜力,提高服务器性能,虚拟化技术由此诞生。 所谓虚拟化技术,是指将计算元件和硬件隔离开来,隐藏底层的硬件物理特性,为用户提供抽象、统一的模拟计算环境,从而可以适应庞大的硬件资源而不至于浪费性能。如Intel-VT和AMD-V技术可以单CPU模拟多CPU运行,允许同一平台同时运行多个操作系统,且应用程序和服务在相互独立的空间内运行而不影响,从而尽可能的压榨硬件性能并提高工作效率。 虚拟化级别可分为:硬件抽象层、指令集层、操作系统层、基础运行库层、应用程序层。 指令集层:使用类似代码解释的方法实现不同平台计算资源的通用,但是效率极低,如Bochs,可以实现Unix like系统中模拟X86平台(指令集、I/O、内存、BIOS等等),例如在Android上运行Windows。 硬件抽象层:将底层硬件虚拟化,如VMware ESXi,Windows Hyper-V,Xen,Linux KVM等,可以使同一硬件平台上运行多个不同的操作系统;又可分为全虚拟化和半虚拟化(下文详解)。目前I/O和内存的虚拟化较为成熟,CPU方面由于指令集在设计时未考虑到特权指令(hypervisor)和非特权指令(用户)区分的原因(主要是X86)会造成性能下降,因此开发出了Intel-VT等CPU虚拟化技术(硬件辅助虚拟化)

SpringCloud应用在Kubernetes上的最佳实践——高可用(弹性伸缩)

只谈情不闲聊 提交于 2021-01-18 06:54:19
作者 | 三未 前言 弹性伸缩是一种为了满足业务需求、保证服务质量、平衡服务成本的重要应用管理策略。弹性伸缩让应用的部署规模能够根据实时的业务量产生动态调整,在业务高峰期扩大部署规模,保证服务不被业务冲垮;在业务低谷期缩减部署规模,避免资源浪费。 由于大部分云资源是按需取用,按量计费模式,相比使用 IDC,使用云的用户从弹性伸缩获得的成本优势是非常明显的,弹性伸缩也是大多数云上用户的选择。而关于如何用好弹性伸缩,一直是用户非常关心的问题,本文尝试围绕这个话题,给出一些相关的思考和优化实践。 有两种实现弹性伸缩方法,一种是“ 垂直弹性 ”,即“Scale Up”,另一种是“ 水平弹性 ”,也就是“Scale Out”。 1. 垂直弹性伸缩 垂直弹性伸缩一般是指通过升降服务器的规格来实现的弹性伸缩。这种伸缩方式对应用本身几乎没有约束,可以被大部分应用或组件使用,它的问题主要在两个方面: 动态调整服务器的规格而不影响上层部署的应用,对基础设施要求比较高,对于许多云厂商而言是个难题,并不能实现业务完全无感的动态变配; 垂直弹性无法突破单台物理设备的规格限制,面向巨量的突发业务增长,垂直弹性的应对能力是有上限的。 2. 水平弹性伸缩 而水平弹性伸缩恰恰相反,它依靠增减服务器的数量来实现弹性伸缩,对基础设施的要求不高,水平弹性除了可以解决容量上限的问题,多副本部署还能带来更高的可靠性

他拥有当今世界最高智商,从出生就一路开挂,然而,获得数学最高奖的他却说自己只是个热爱数学的普通人...

删除回忆录丶 提交于 2021-01-16 12:48:45
全世界只有 3.14 % 的人关注了 爆炸吧知识 今天就讲讲这位 平易近人的顶级天才 吧。 1975年,陶哲轩出生在澳大利亚,父母均毕业于香港大学,父亲陶象国是一名儿科医生,母亲梁蕙兰是物理和数学专业的高材生,曾当过中学数学教师。 从很小的时候,陶哲轩就展现出了“ 神童 ”特质。 年仅2岁的小哲轩就已经拿着数字积木在教别人如何用积木计算。 于是,在3岁半的时候,父母就送他去上小学了。。。 不过,去到私立小学的小哲轩发现,所有同学都比自己大两岁,只有自己是最矮小、最“幼稚”的那一个,他不懂得如何跟这群哥哥姐姐们相处。。。 母亲见状,只好将小哲轩送回幼儿园,然后自己亲自指导儿子自学小学课程。 而在幼儿园的一年半时间里,小哲轩不仅自学完了整个小学数学课程,还加入了南澳大利亚天才儿童协会,认识到很多天才小朋友。 终于在小哲轩刚满5岁的时候,在一家公立小学校长“ 可以为陶哲轩提供灵活的教育方案 ”的承诺下,父母决定将小哲轩送进这间学校就读。而且,小哲轩是从二年级开始读起,数学课就直接上五年级的课程。 到7岁时,小学的数学课程已经无法满足小哲轩了,于是,学校答应让他每天去附近的一所中学听数学课。并且,在这个时候,小哲轩已经开始自学微积分了! 父亲陶象国说:“这不是我们逼他看的,是他自己感兴趣。” 一年后,小哲轩直接升入高中,跟一群年龄是他两倍的同学一起学习。而如今的小哲轩已经完全可以跟这些

iOS面试题总结

有些话、适合烂在心里 提交于 2021-01-10 14:08:46
[TOC] 1. 多线程的底层实现? 1. 首先搞清楚什么是线程、什么是多线程 2. Mach是第一个以多线程方式处理任务的系统,因此多线程的底层实现机制是基于Mach的线程 3. 开发中很少用Mach级的线程,因为Mach级的线程没有提供多线程的基本特征,线程之间是独立的 4. 开发中实现多线程的方案 C语言的POSIX接口:#include <pthread.h> OC的NSThread C语言的GCD接口(性能最好,代码更精简) OC的NSOperation和NSOperationQueue(基于GCD) 2. 线程间怎么通信? 1. performSelector:onThread:withObject:waitUntilDone: 2. NSMachPort 3. 网络图片处理问题中怎么解决一个相同的网络地址重复请求的问题? 利用字典(图片地址为key,下载操作为value),具体可以查看SD缓存机制 4. 用NSOpertion和NSOpertionQueue处理A,B,C三个线程,要求执行完A,B后才能执行C,怎么做? NSOperationQueue *queue = [[NSOperationQueue alloc] init]; NSOperation *A = [NSBlockOperation blockOperationWithBlock:^{ NSLog

Linux基金会的ACRN Hypervisor与TTTech Industrial实现首次商业产品集成

谁都会走 提交于 2021-01-09 21:49:51
ACRN 在 Nerve Blue 边缘计算平台上的工业应用 2020 年 12 月 9 日 - 物联网解决方案提供商 TTTech Industrial 今天发布了第一款基于 Linux Foundation ACRN ™虚拟机管理程序的商业产品,用于工业市场 。 凭借其最新版本的 Nerve Blue 工业边缘计算平台, TTTech Industrial 正在通过 全 商业软件解决方案向客户提供 ACRN 2.0 ,该解决方案可在一系列工业应用中的各种 Intel 处理器上运行。 ACRN 项目的成员包括凌华科技, Aptiv ,英特尔公司, LGE 和东软公司。 ACRN ™是 一款 灵活 的 轻量级 Hypervisor 参考软件 , 以实时性和关键安全性为设计出发点 。 在 ACRN 2.0 开发过程中 ,社区优先考虑了工业物联网和边缘环境中 对 H ypervisor 的三个关键要求:功能安全性,实时处理 , 和 资源共享,以提高灵活性。 TTTech Industrial 和 英特尔 积极参与该项目,并共同致力于塑造 ACRN 技术并将其快速集成到 Nerve Blue 边缘计算平台中。 “ ACRN 社区正在加速嵌入式开发,以在边缘环境中集成异构实时应用程序。 这个里程碑确实代表了 ACRN 与众不同的技术特征。” Linux 基金会项目总经理兼高级副总裁

Docker安装MySql-挂载外部数据和配置

久未见 提交于 2021-01-08 23:00:11
环境 CentOS:7 Docker:1.31.1 MySql:5.7 拷贝mysql配置文件 1.首先创建mysql容器 sudo docker run --name mysql5. 7 -p 3306 : 3306 -e MYSQL\_ROOT\_PASSWORD= 123456 -d mysql: 5.7 2.创建成功,查看一下运行状态 [root@localhost ~]# docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c84a366e3abf mysql: 5.7 " docker-entrypoint... " 4 minutes ago Up 15 seconds 33060 /tcp, 0.0 . 0.0 : 4306 -> 3306 /tcp mysql5. 7 3.可以看到我们的容器正在运行中,现在进入容器,查看一下配置文件 [root@localhost ~]# docker exec -it mysql5. 7 /bin/ bash root@c84a366e3abf: /# cat /etc/mysql/ my.cnf # Copyright (c) 2016 , Oracle and/ or its affiliates. All rights reserved. # #

【深度】Kubernetes v1.16 最值得工程师关注的改动

≯℡__Kan透↙ 提交于 2021-01-07 04:47:44
昨天,Kubernetes 发布 2019 年的第三个新版本 1.16,才云第一时间对新版本重要更新做了精选整理,之后这篇文章 被 CNCF 转发 。经过一天的升级体验和对文档的细致阅读,才云现推出 Kubernetes v1.16 深度解读,以飨读者! 发布 | 才云 Caicloud 编译 | littlepoint & zls & bot 审核 | ddysher 随着周三官方发布的 Kubernetes v1.16 进入普遍可用状态,相信很多读者已经体验了由新版本带来的诸多新变化。在官方文档中,开发团队表示 新版本主要围绕以下四个主题 : CRD 正式步入通用可用性(GA); Admission webhook 正式步入 GA; 关于 metrics 的改动; 大量和 Volume 相关的改进。 以上我们已在昨天做了 详细介绍 (点击跳转)。 而除此之外,Kubernetes v1.16 中的其他更新,如对 Windows 支持的改进、API 变化等,也非常有价值,它们显示了开发团队对增强 Kubernetes 可扩展性 的一贯努力。 在这篇文章中,才云工程师将从实践角度出发,总结对新版本的心得。 01 节点 新版本对 K8s-clusters 节点(Kubelet)做了很多相关改进和创新,如 Ephemeral Containers(短暂容器)、节点拓扑管理器和

Kubernetes v1.16 重磅发布 | 新版本亮点 & 紧急升级说明

旧时模样 提交于 2021-01-07 04:29:26
来源:GitHub 翻译:bot(才云) 技术校对:Lichuan(才云) 美国时间 9 月 18 日,Kubernetes 迎来了 2019 年的第三个新版本 1.16 。K8sMeetup 中国社区第一时间整理了 Kubernetes v1.16 的亮点内容,为大家详细介绍此版本的主要功能。 根据 Release Note 介绍, Kubernetes v1.16 由 31 个增强功能组成: 8 个进入稳定,8 个进入 Beta,15 个进入 Alpha 。 新版本四大主题 新版本主要围绕以下主题: Custom resources :CRD 是对 Kubernetes 的扩展,用以服务于新的资源类型,自 1.7 版本以来,CRD 已经在 Beta 版中可用。 在 1.16 版本中,CRD 正式步入通用可用性(GA) 。 Admission webhook :Admission webhooks 作为 Kubernetes 扩展机制被广泛使用,并且自 1.9 版本以来已经在 Beta 版中可用。 在 1.16 版本中,Admission webhook 也正式步入通用可用性(GA) 。 Overhauled metrics : Kubernetes 广泛使用一个全局 metrics registry 来注册要公开的 metrics 。通过实现 metrics registry

Tomcat下jsp页面过大报错 is exceeding the 65535 bytes

▼魔方 西西 提交于 2020-12-30 10:04:12
这个错误是因为JSP文件太大了导致的。 如果是纯粹的Tomcat,找到Tomcat安装目录下conf文件夹下的web.xml文件,在如下位置,添加红色字体的参数。 (D:\Program Files\Apache Software Foundation\Tomcat 6.0\conf\web.xml) <servlet> <servlet-name>jsp</servlet-name> <servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class> <init-param> <param-name>fork</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>xpoweredBy</param-name> <param-value>false</param-value> </init-param> <init-param> <param-name>mappedfile</param-name> <param-value>false</param-value> </init-param> <load-on-startup>3</load-on-startup> </servlet>