首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

眼中Linux基础

Linux 几乎无处不在,不论是服务器构建,还是客户端开发,对操作系统基本理解和基础技能掌握对全栈来说都是必备。...Linux 分层体系 Linux 有kernel和user两种模式,内核、shell和文件系统一起形成了基本操作系统结构,Linux 内核由如下几部分组成:内存管理、进程管理、设备驱动程序、文件系统和网络管理等...Linux内核 了解linux内核,可以充分利用资源,在系统调优时有目标感。 ? Linux 将内存划分为容易处理内存页,提供了对 4KB 缓冲区抽象,例如 slab 分配器。...linux 文件系统 Linux系统能支持多种目前流行文件系统,推荐用EXT4。Linux文件类型主要有: 1) 普通文件,分为纯文本和二进制。 2) 目录文件,存储文件地方。...BASH是GNUBourne Again Shell,是GNU操作系统上默认shell,大部分linux发行套件使用都是这种shell。 Linux 命令很多,下面给出了一个简单分类。 ?

79530

眼中网络编程基础

码农深以为然,编程实践就是从具体到抽象,再到具体,循环往复,螺旋式上升过程。了解前世今生,只是为了可能触摸到“势”。基础越扎实,建筑就会越有想象空间。...对于网络编程基础,大概要从OSI七层协议模型开始了。...在Linux世界,“一切皆文件”,操作系统把网络读写作为IO操作,就像读写文件那样,对外提供出来编程接口就是Socket。...epoll相关系统调用是在Linux 2.5 后某个版本开始引入。该系统调用针对传统select/poll不足,设计上作了很大改动。...或许,码农说都是错,了解了所谓网络基础,也不一定写出漂亮代码,不了解所谓网络基础,也不一定写不出漂亮代码,全当他自言自语吧。 ----

33430
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    眼中Git

    为什么使用Git Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发一个开放源码版本控制软件。大神就是大神,在开发了Linux之后,Git 是又一抗鼎之作。...软件配置管理:通过执行版本控制、变更控制规程,以及使用合适配置管理软件,来保证所有配置资源完整性和可跟踪性。配置管理是对工作成果一种有效保护。没有软件配置管理,最大麻烦是工作成果无法回溯。...它基本目标包括: 1. 软件配置管理各项工作是有计划进行。 2. 被选择项目产品得到识别,控制并且可以被相关人员获取。 3. 已识别出项目产品更改得到控制。 4....版本控制 版本控制是软件配置管理核心功能。所有位于配置资源库中元素都应自动予以版本标识,并保证版本命名唯一性。版本在生成过程中,自动依照设定使用模型自动分支、演进。...版本控制中基本概念 1)签入,提交,检出 2)冲突,解决,合并 3)分支,版本 4)锁定,hook 常见版本控制工具 作为一个码农,枚举一下曾经使用过版本控制工具。 1.

    54230

    眼中Lambda世界

    λ 读作Lambda,是物理上波长符号,放射学衰变常数,线性代数中特征值……在程序和代码世界里,它代表了函数表达式,系统架构,以及云计算架构。...Python 与Java语言不同,PythonLambda表达式函数体只能有唯一一条语句,也就是返回值表达式语句。Python编程语言使用lambda来创建匿名函数。...一个典型例子是求一个列表中所有元素平方。...Speed Layer作用包括: 对更新到serving layer带来高延迟一种补充 快速、增量算法 最终Batch Layer会覆盖speed layer 大数据系统一般具有如下属性: *...ETL 是数据挖掘与数据分析中必备环节,可以方便通过AWSLambda实现,示例如下: ? 其实,在spark 上实现Lambda 云服务也不是太费力事。

    40620

    眼中负载均衡

    于是,对于实体,有了通信帧或者报文中数据字段内容被称为信息负载(payload),网络负载指就是网络中继承载流量以及网络设备承载用户量。...转化被进一步阐释为资源使用情况,操作系统平均负载是CPULoad 即workload,它所包含信息不是CPU使用率状况,而是在一段时间内CPU正在处理以及等待CPU处理进程数之和统计信息。...HAProxy能够补充Nginx一些缺点比如Session保持,Cookie引导等工作,支持url检测后端服务器,对于问题排查会有很好帮助。...负载测试是模拟实际软件系统所承受负载条件系统负荷,通过不断增加负载载(如逐渐增加模拟用户数量)或其它加载方式来观察不同负载下系统响应时间和数据吞吐量、系统占用资源等,以检验系统行为和特性,并发现系统可能存在性能瓶颈...云服务负载均衡 云时代到来,使负载均衡成了平台级服务,几乎所有的云服务提供商都提供了负载均衡服务。下面是阿里云负载均衡基础框架图: ?

    91151

    眼中CRM 图解

    CRM 是企业“以客户为中心”价值观核心体现之一, 各种2B应用都无可避免,而企业应用具有一定复杂性,理解CRM系统也不是轻而易举事情。...在码农眼中,CRM 系统可能是这样: 业务组成 业务单元组成是第一位, 业务单元是企业实在需求,也是采用CRM系统主要因素。...CRM中技术特点 由于约束不同,CRM中技术特点如下: 工作流是CRM中最大特点,需要流程配置,内置多形式提醒,任务分配,工作流个性化。...实施 CRM 和云化以及SaaS形态使实施便利了很多,但需要注意还有: 实施中首先要具备批量集成和业务流程集成能力,有预定义集成点,系统基础配置工具和标准。...用户评价首先是用户满意度,然后是公开评价和用户内部评估意见,最后是用户沟通交流程度。每一次成功交付都是一个成功案例,即成功用户和样板案例。 这是码农眼中CRM, 枯燥却并不乏味吧!

    1.1K40

    眼中缓存技术

    ,是一组被保存起来以备将来使用东西,介于应用开发和系统开发之间,是产品经理们经常顾及不到地方,算是技术架构中非功能性约束吧。...很多技术都打着缓存旗号,所以谈起缓存往往似是而非,与语境有着紧密关系,换个说法,来看一看缓存在不同场景分类。...对于Web代理而言,曾经流行是Squid,它支持建立复杂缓存层级结构能力,详细日志、高性能缓存以及用户认证支持。...Squid 内部机制如下: ? 边缘缓存 边缘缓存位于应用服务器前面,可以处理来自不同用户请求,主要用于向用户提供静态内容,以减少应用服务器介入。...边缘缓存商业化服务就是CDN了,例如AWS Cloud Front,我国ChinaCache等。 边缘缓存一个有名开源工具就是varnish,在默认情况下进行保守缓存。

    91721

    眼中敏捷开发

    相对于软件开发流程,有一门专门学科——软件工程。最早接触软件工程,是20年前在北电贝尔北方实验室工作时候,当时开发流程是这样: ? 其他主流瀑布式开发流程也大致如此。...然而,随着技术演进,尤其是互联网发展,BS架构广泛应用,用户反馈及时响应成为了可能。...演示会议是至关重要。演示是跨团队,会产生不同团队之间交流。不要关注太多细节,以主要功能为主,一定要让老板或者客户看到。演示会议 非常重要,绝对不可以被忽略。...Scrum主要缺陷有,团队压力大,不方便跨时区和跨语言协同团队,而且一旦启动无法被中断,更重要是程序维护成本偏高,对工程师要求较高,尤其是应用架构和可扩展性。...眼中敏捷开发,还是以我喜欢一行python 代码作为共勉: $ python -c "import this" The Zen of Python, by Tim Peters Beautiful

    47830

    眼中MySQL调优

    从LAMP兴起,到Mariadb出现,甚至PG到来,熟练MySQL技能都是大有用武之地。...运行环境调优 这里是Linux天下,MySQL 运行环境调优往往和Linux内核调优一并完成。当然了,对云服务RDS 也有一定参考作用。 调整Linux默认IO调度算法....IO调度器总体目标是希望让磁头能够总是往一个方向移动,移动到底了再往反方向走,这恰恰就是现实生活中电梯模型,所以IO调度器也被叫做电梯 (elevator),而相应算法也就被叫做电梯算法.而Linux...IO对数据库影响较大,linux默认IO调度算法为cfq,需要修改为deadline,如果是SSD或者PCIe-SSD设备,需要修改为noop,可以使用下面两种修改方式。...修改swappiness设置 swappiness是linux一个内核参数,用来控制物理内存交换出去策略.它允许一个百分比值,最小为0,最大为100,改值默认是60.这个设置值到底有什么影响呢

    47430

    眼中面向数据架构

    数据是系统核心,在面向服务架构之外,也可以考虑一下面向数据架构方式。...一般地,为了不影响业务系统正常运行,会将不同数据源汇集起来,技术采集与摄取,然后进行数据存储及一系列操作处理, 最终通过各种解决方案形成数据应用衍生数据产品。...从开发角度看,可以分成基础设施,运营工具,开发工具和解决方案四层,从数据自身来看,也可以分为数据源,动态数据,静态数据和数据应用4个层次,相互是有交叠。...数据源 数据源决定了数据宽度, 数量量决定了数据厚度。即使是做数据应用,也是和具体业务领域相关,数据价值不是凭空出现。所以, 业务系统数据是第一位,也是最容易获得,直接价值也较高。...不论是客户网站还是竞品网站,同样需要爬虫技术帮助,这些数据将对业务系统数据形成有益补充。 文档数据大多是非结构化数据,一般是文件系统和NoSQL 胜场。

    47040

    眼中研发管理二三事

    研发管理有着广义和狭义定义,总的来说,研发管理就是在研发体系基础之上,借助信息平台进行团队建设、流程设计、绩效管理、风险管理、成本管理、项目管理和知识管理等活动。 大道易得,小术难求。...论道容易务虚,谈术又往往让人有支离破碎感觉。这里只从亲身感受出发,希望可以做到抛砖引玉。 眼中研发管理,首先是管理,是在研发领域管理。管理是什么?...每人将最重要2-3个改进点,成为下一轮产品需求一部分。 小结 眼中研发管理既需要道指引,又需要实战方法,以及那些看似微不足道雕虫小技。...2017年1月10日周二晚8点30分,“中生代技术”社区带来了主题为“眼中研发管理二三事”交流。以下是主持人赫阳整理问题精华,记录了和读者间问答精彩片段。...---- 问:您眼中技术总监是应该具备什么样技术能力?该如何面试一位技术总监呢?

    58610

    眼中Git

    为什么使用Git Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发一个开放源码版本控制软件。大神就是大神,在开发了Linux之后,Git 是又一抗鼎之作。...软件配置管理:通过执行版本控制、变更控制规程,以及使用合适配置管理软件,来保证所有配置资源完整性和可跟踪性。配置管理是对工作成果一种有效保护。没有软件配置管理,最大麻烦是工作成果无法回溯。...它基本目标包括: 1. 软件配置管理各项工作是有计划进行。 2. 被选择项目产品得到识别,控制并且可以被相关人员获取。 3. 已识别出项目产品更改得到控制。 4....版本控制 版本控制是软件配置管理核心功能。所有位于配置资源库中元素都应自动予以版本标识,并保证版本命名唯一性。版本在生成过程中,自动依照设定使用模型自动分支、演进。...版本控制中基本概念 1)签入,提交,检出 2)冲突,解决,合并 3)分支,版本 4)锁定,hook 常见版本控制工具 作为一个码农,枚举一下曾经使用过版本控制工具。 1.

    60220

    码农眼中存储

    存储,是我们码农每天都要打交道事情,而当我们面对RAID,SAN,对象存储,分布式数据库等技术时候,又往往似是而非,存储成了我们熟悉陌生人。 在码农眼中,存储仿佛是这个样子。...对于存储网络而言,对带宽要求非常高,因此 SAN 网络下,光纤成为连接基础。光纤上协议比以太网协议更简洁,性能也更高。 从数据层面来看,存储空间共享可以体现为文件共享。...NAS出发点是在应用、用户和文件以及它们共享数据上;而SAN出发点在磁盘以及联接它们基础设施架构。 三者之间关系如下图所示: ?...LinuxBlock Device接口或者QEMU提供Block Driver接口,如AWSEBS,青云云硬盘,百度云云磁盘等等 文件存储: 支持POSIX接口,提供了并行化能力,如Ceph...幸运是,分布式存储系统已经成为了云服务基础能力,尤其是对象存储,如七牛、S3、OSS、BOS 等等, 已经是标配了。

    79530

    码农眼中区块链

    大家可能已经听说过比特币、莱特币、以太币等等,以及它们作为一种新货币在市场上潜力。 有趣是,很多投资比特币的人也提到了区块链之类东西。 显然,这项技术是比特币等其他东西"基础"。...现实生活基础: 维基百科或百度百科 如果这个概念还是有点难以理解的话,试着把 blockchain 想象成维基百科或谷歌文档。...区块链在策略上是去中心化(没有人控制它们),而且在架构上去中心化(没有基础设施中心点故障) ,但它们在逻辑上是中心化(有一个共同商定状态,系统行为就像一台电脑),如图2所示: ?...这里列举了两个码农自己有实际感知两个区块链应用。...根据经济激励原则设计了整个系统,使矿工能够最大限度地利用闲置存储资源,并以低成本和便利性促进去中心化大数据计算。 图6显示了 DxChain 高层次基础架构。

    86410

    码农眼中数字孪生

    数字孪生技术架构 数字孪生技术架构可以按技术特性分解为专业分析层、虚实交互层和基础支撑层 ,以安全互联和高性能并行计算作为数字孪生技术基础,利用基于PLM 数据管理技术支撑产品全生命周期数据管理...基于PLM数据管理指以平台架构为基础, 形成集成产品信息框架,使所有与产品相关 数据高度集成、协调、共享。...与物联网技术架构类似, 数字孪生也可以按照应用实现视角形成4层以及5层架构。 从基础数据采集层到顶层应用层,每一层实现都建立在前面各层基础之上,是对前面各层功能进一步丰富和拓展。 3....数据是整个能力模型基础,五大能力围绕数据来发挥作用和效能,数据与五大能力之间联系主要由高性能传感器数据采集、高速数据传输和全寿命周期数据管理3个部分支撑。...数字孪生产品生命周期管理 通过构建与实物产品完全对应数字孪生体, 在安全互联技术、高性能并行计算技术提供支撑基础上,利用基于PLM 数据管理技术对产品全生命周期数据进行管理,可以从设计、生产、

    22610

    码农眼中简明AI

    就像每个人眼中都有一个自己哈姆雷特一样,每一个看AI 都是不一样。...作为一个程序员,也只是一个工作时间长一些程序员而已,本没有什么资格定义AI,但是面对这样问题, 还是强作镇定,从一个工程师角度阐述一下,“什么是AI?”...AI 结构 AI 载体是机器,在计算机无所不在今天(作为一个通信专业学生,大学读书时候,老师说过“通信技术计算机”),在计算机网络无所不在今天(网络对生活影响巨大,以至于有了“互联网+”...业界有很多“智脑”项目,以及基于AI存储、计算和控制能力应用,例如大名鼎鼎alpha狗。 因此, AI 基于计算机和网络能力大概是这样: ?...总的来说, 一个程序员眼中AI 大致是这样: ?

    38130

    全栈技术栈设想

    全栈(full stack developer)好像起源于facebook中对工程师一种称谓,全栈架构师估计是杜撰。...工其事必利其器,环境在效率中是第一位。具体可看《眼中开发学习环境》,不在赘述。 ? 全栈应该掌握4种编程语言:Java,Objc/C/C++, Python,JavaScript。...从下向上看一下 全栈所需技能,第一个就是操作系统,可参考《眼中Linux基础》。 ?...基本上,可以从传输,网络,代码和数据四个层面掌握有关安全基础知识。 ? 至于架构方法,现在最热莫过于微服务架构了。...可以从客户端,网络侧,服务端三个环节对缓存进行分类,具体可以参考《眼中缓存技术》。 ? 负载均衡同样是一种以空间换时间技术,具体可参考《眼中负载均衡》。 ?

    70530

    带你做大神之走进奇妙工控世界(一)

    今天开始,每周二由带领大家一步一步进入到自动化控制系统奇妙世界;一步一步告诉大家如何从一张P & ID(Piping and Instrumentation diagram)图设计一套PLC控制系统...今天首先带领着大家做IO点统计和IO表设计,我们以一个废水零排放项目来从P & ID图中获取有效信息,生成IO设备清单,并设计成IO表: 一、IO设备(控制对象)统计 上图是一张废水零排放系统PID...IO清单就统计完了; 今天内容就讲到这里,下一节指导大家通过IO清单统计IO点数,并进行PLC设计选型。...工业通讯领域沉浸十数年,深喑各种工业通讯协议和工业网络架构以及国内外多种主流PLC应用和操作、熟知罗克韦尔、施耐德、西门子、GE等知名品牌冗余系统,对工业无线通讯、工业物联网、工业IT与OT融合,有着前瞻性独到见解和务实实践经验...努力为中国工业信息化、数字化、智能化深入发展做出贡献。

    52210

    带你做大神之走进奇妙工控世界(二)

    每周二,由带领大家一步一步进入到自动化控制系统奇妙世界;一步一步告诉大家如何从一张P & ID(Piping and Instrumentation diagram)图设计一套PLC控制系统,其中包括...上一讲我们讲到如何从P&ID图上获取控制对象(带你做大神之走进奇妙工控世界(一)),通过控制对象整理IO清单,这一节我们来讲将IO清单统计成IO点数,由IO点数进行PLC选型: 三、IO点数统计...点数如下: DI 160 DO 86 AI 23 AO 4 第三步:统计IO点数基础上增加15%备用点,则IO点数变为: DI 184 DO 99 AI 27 AO 5 第四部:根据增加备用点后...IO点数取整 这里说取整不是四舍五入取整,而是将开关量信号点数取16整数倍,模拟量信号取8整数倍;这么做原因是控制系统中不管是PLC还是DCS开关量模块和模拟量模块点数基本上都是8整数倍(小型...工业通讯领域沉浸十数年,深喑各种工业通讯协议和工业网络架构以及国内外多种主流PLC应用和操作、熟知罗克韦尔、施耐德、西门子、GE等知名品牌冗余系统,对工业无线通讯、工业物联网、工业IT与OT融合,有着前瞻性独到见解和务实实践经验

    53130
    领券