nginx“线程池模式”探讨;据说有9倍性能提升
相对于Apache的同步IO模型,Nginx由于采用了NIO的缘故,性能上碾压前者。Nginx是轻量级的,占用的系统资源更少,天然支持高并发。 今天我们就简单的讨论一下nginx的线程模型。注意不是进程模型哦。 nginx的IO模型,大家应该都有所了解。 nginx是以多进程模…
云服务器基本指标信息查看及命令
通过前几章内容的学习,我们已经可以很容易地进入云服务器及从 github 拉取代码。本章内容将会为你介绍如何查看云服务的基本配置。 关于云服务器系统的基础信息,在购买时就会有标明,至于一些资源的使用情况在云服务器服务商的控制台上也有相应的监控。 load average 指单位…
鸟,水螅,计算机。CPU给我们的启示
作为一只鸟,可以边吃东西边拉屎么?这对一个养过鹦鹉的人来说,答案是肯定的。 从鸟嘴到鸟大肠,整个过程是串行的。虽然有些曲折,但方向是单一的,出口是一定的。只要鸟能够克服一些心理上的不悦,它就能办得到。 这种情况在一些原始的物种身上显得有些尴尬。比如水螅,它属于腔肠动物,无性生殖…
工作累了,用java写个游戏吧!开源一款游戏引擎
吃喝玩乐是人类的基本需求,只有繁重的工作,生活完全没有乐趣,与上世纪的奴隶没什么区别。游戏作为一种生活的调剂品,占据了大部分人的生活。凡事过犹不及,all work || all play都会对个体造成不可磨灭的损伤。工作累了,不如使用熟悉的开发语言,自己做一款游戏。虽然粗糙,…
一图解千愁,jvm内存从来没有这么简单过!
看到这张图的同学,千万不要到处分享。我们仅限于小范围讨论,因为这张图威力很大,是我花了10年时间才画出来的! 了解了这张图,会让你对JVM内存的划分有更深入的理解,而不仅限于什么虚拟机栈、程序计数器等比较浅显的认知。 那么这张图有什么用呢?在进行内存排查的时候,我们需要了解到底…
实力解剖一枚挖矿脚本,风骚操作亮瞎双眼
公司有几台机器,最近cpu一直在疯转,就像是吃了春药,一直在发热。由于机器实在是太多,有这么几台安全性防护没有到位,就一直躺在角落里疯狂运转。 直到统一的监控脚本接管了这几台机器,异常情况才得以浮出水面。最后发现了多个奇奇怪怪的进程,发现是一个挖矿脚本。下载下来学习了一下,发现…
云服务器 ssh key 管理以及 github 的配置
程序员经常挂在嘴边的一句话是: 面向 github 编程。如果没有 github 对程序员而言万古如长夜,github 对程序员的重要性可见一斑。 与 github 进行协同的工具是 git,在上一章 云服务器上 git 安装及基本配置 对它在服务器上按照也有了基本介绍。虽然 …
4个代码中,出现频率最高的字符串
在程序员的代码里,字符串是经常出现的形式。有些语句虽然没有什么意义,但却无孔不入,我们经常见到它的身影。 在介绍某一种新的语言时,教材往往会在开始,给出能够输出hello world程序的例子。据说最早出现于1972年,贝尔实验室成员布莱恩·柯林汉撰写的内部技术文件《A Tut…
高效简单的云服务器登录配置
当你拥有了属于自己的一个云服务器后,首先需要做的事情就是登录服务器。而登录服务器,作为新手可以通过云厂商提供的 dashboard 进行登录操作。但是,最简单及最方便的方式还是通过终端,使用 ssh 命令快速登录 把以下 IP 地址替换为你云服务器的公网地址,并提供密码即可登录…
云服务器上 git 自动化安装及配置
git 对于开发者来说属于必备工具中的必备工具了。何况,没有 git 的话,面向 github 编程 从何说起,如同一个程序员断了左膀右臂。 如果使用 yum 来安装 git 的话,那实在没有必要单开一篇文章了,但好事多磨。那使用 yum 的弊端在哪里?我们知道,yum 为了保…
Node 全栈阿里头条面试小计 | 掘金技术征文
本人四年经验的杂活全干工程师,年后疫情原因居家办公,因此面试时也无需到场面试。在这个空隙面试了几家大厂,结果差强人意。 自己在面试前准备不足,面试效果差强人意。印象最深刻的是当问到我性能优化常见的指标时,DomContentLoad 这个词死活没有想起来,只记得了 DCL 这个…
Serverless,会将工程师带入“不归路”!
别被标题吓尿了。 技术的发展,从来不以个人的意志为主转移,程序员的某些分工也必将随着技术的演进而消失。 在开始之前,我们首先来看一下Serverless是个什么概念。 Serverless直译为“无服务器”,并不是说代码运行就不需要在服务器上跑了。它的意思是,未来的开发,无需关…
又一P1故障,锅比脸圆
好久没遇到故障了,以至于技术老大在公司会议上,都成了隐形的存在,除了汇报进度一无是处,这是不能容忍的。 只有有问题才能驱动团队的成长。风平浪静的时候,公司领导以为你做的不好,没有暴露风险:既然已经做的这么完美了,要你何用。 所以做的太好了,对团队来说未必是一件好事---尤其是对…
传统企业的人才们,先别忙着跳“互联网”了
最近有创业的朋友咨询,说手里有钱,但不知道要干些啥。想到的点子,放眼四顾,早已经被人实现了。我推荐他去当网红,但他又比较内向,抹不开面子,还是想在轻车熟路的互联网行业捞一把块钱。 但现在,很难了。 经验并不总是有效的,今日不比往常。一个不小心,就得把过去赚的钱,全部给吐出来。 …
摸着良心说,你是领导青睐的“技术好手”么?
公司里有很多好手,代码写的漂亮,工具玩的贼6,知识面也很广。可惜事务缠身,只能在虚拟机里左捣鼓一点,右调试一通,没有用武之地。 能碰到一个好手,是非常难得的。一些正在茁壮成长的苗子,由于我们一直在喂他屎吃,可能就被熏跑了----大多数宁可换个地方去吃屎,也不会蹲在一个茅坑里。 …
再深一点:面试工作两不误,源码级理解Spring事务
Spring有5种隔离级别,7种传播行为。这是面试常问的内容,也是代码中经常碰到的知识点。这些知识枯燥而且乏味,其中有些非常的绕。如果栽在这上面,就实在是太可惜了。 其实,数据库一般只有4种隔离机制,Spring抽象出一种default,根据数据设置来变动。 这是因为,Spri…
ZK客户端Curator使用详解
zookeeper不是为高可用性设计的,但它使用ZAB协议达到了极高的一致性。所以它经常被选作注册中心、配置中心、分布式锁等场景。 它的性能是非常有限的,而且API并不是那么好用。xjjdog倾向于使用基于Raft协议的Etcd或者Consul,它们更加轻量级一些。 Curat…
《调教命令行08》一文搞懂Linux权限体系
随着年龄的增加,我的经验越来越丰富,而记忆力却越来越差。为了应付繁重的日常事务,我不得不准备了长长的任务清单。每一条事项的背后,都在不断的提醒我:无论生活中充满什么惊喜,还是逃离不了它平庸的本质。 而我对时间,会更加的敏感。每次一次敲击键盘,都会调动骨关节的扭动,留下一洗不可撤…
使用 serverless 与 next 开发第一个 next 应用
在上一章,我介绍到了 如何使用 serverless 部署第一个 koa 应用。对于一个后端(Node)项目使用 serverless 的方式要接收巨大的挑战,其中最大的挑战来自于传统的并已完善与成熟的架构。 而对于一个弱存储弱状态的 SSR 项目或者纯前端项目,通过 zeit…
面试官很牛,逼我尿遁
庚子年庚辰月,狂风肆虐,飞沙走石。似在风中藏了把刀子,砍翻了我头顶的连衣帽。 今天等来了久违的面试。在我的印象里,面试就是要面对面的。因为疫情的缘故,过去几周我经历了太多的视频和电话面试,总是凉凉。想到一本正经的面试官,下半身可能藏在被子里,或者蹲在马桶上,我就满脸的不自在。 …