web技术栈中不可或缺的Linux技术

随着第三次信息浪潮的冲击,web技术在近年来可谓发生了天翻地覆的变革。从单向信息的web1.0时代,逐步过渡到信息和人交互的web2.0再到数据主动与人*的web3.0时代,这些成就无疑归功于Web技术的迅速发展。

Web技术最重要的载体便是服务器,服务器运行在公共的网络环境下,为广大的用户提供网页浏览、信息通讯、消息推送等服务,从最开始的硬件服务器到虚拟主机技术,再到虚拟化技术的出现和云概念的兴起,绝大部分都是基于Linux操作系统的,因此web工程中,Linux也是一枚举足轻重的角色,不过掌握一门Linux技术也是重中之重,个人认为《Linux就该这么学》这本书拿来入门还是挺不错的,下面将开始介绍Linux作为web技术的重要角色的几个要点。

1、应用部署

绝大多数Web应用都承载在各大Linux发行版(如ubuntu 、redhat、centos)上,因此掌握Linux环境下的应用部署和日常维护尤为重要。下面列举一些典型的应用部署解决方案:

PHP:Nginx/LAMP(Linux+Apache+Mysql+PHP),提供HTTP(S)服务并提供PHP解析的Fastcgi;

JAVA WEB:Tomcat/Jboss,提供HTTP(S)服务、Servlet和JSP容器;

Node.js:pm2/nodemon:提供守护进程和集群管理服务,Node.js应用本身即可开启Server;

那么我们需要如何进行应用部署的技能补充呢?事实上,学习WEB应用部署并不难,首先我们需要扎实Linux的基本功:了解Linux操作系统概念和发行版、掌握基本的命令和程序安装的方法(通常我们会通过包管理器或者源码安装的方式进行)。接下来的步骤简化来说就是安装应用部署所需的环境、进行环境的配置、拉取项目代码、启动应用。

或许我们可以再前卫一些,通过虚拟化或者容器等技术去进行web应用的部署,都是依赖于上述这些最基本的套路。至于一些技术上细节和进阶的内容,可以通过相关的专业网站或书籍参考。

2、日常维护

往往我们的Web应用在运行状态下,偶有意外发生,如服务不可用、性能瓶颈等,这时候我们便需要对应用的生产环境进行现场勘查。

通常情况下,我们首先会进行系统运行状态的检查,通过工具或命令采集和查看机器运行状态指数(CPU利用率、物理内存占用率、网络、IOPS等)、服务运行状态(服务可用性、响应速度、最大并发数等),基于以上的参数,我们可以建立监控系统和可视化平台,通过脚本收集参数信息,再通过WEB前端进行可视化的展示(nagios、zabbix等)。

接下来的重头戏则是日志系统,web应用中日志里保存了用户的操作和结果反馈,可以快速进行场景和行为的还原。一般我们会将日志分为两类:结构化日志和非结构化日志。非结构化日志(如log4j)主要是提供给开发者和维护者人工审阅和快速查询的,往往当用户量和数据量达到一定数量级时,会变得不利于阅读和分析,因此并不适合大规模的web应用场景。结构化日志(如bunyan)通过代码生成和序列化之后进行持久化存储,我们可以通过相应的工具进行海量日志的分析和挖掘,甚至可以直接和业务耦合,进行集中化的日志分析(如ELK的日志实时分析),缺点是需要通过工具转换成人工可阅读的文档。

基于日志分析和实时监控,我们可以从而建立警报系统,(当然监控以上提及的监控平台均提供了警报功能)通过邮件等方式将服务器运行状态、故障、意外事件等进行推送。

3、性能优化和架构

一款好的产品总不会一成不变,web产品在发展过程中通常会遇到性能瓶颈,这时候我们便需要对应用进行优化,甚至对整体架构进行升级。

撇开Web应用本身的业务代码和逻辑上的优化点不说,且讲一下在Linux环境下的优化策略,而其最重要的便是参数调优,主要解决Linux默认配置带来的性能问题,其中主要的一些调优点为:打开文件树(limits)、内核参数调优(协议栈中的各参数、网络接口队列等),通常情况下,我们需要对实际的服务环境进行参数的调整。

当我们的web应用在不断的遇到性能瓶颈和升级优化之后,整体架构也会随之演化,从最开始的单机的架构到横向扩展(升级硬件配置、增加机器数量)架构,再到纵向扩展(数据库读写分离、业务切分等)架构,然后成为面向服务的分布式集群,甚至结合新兴的大数据等技术建立高可用的集群。

对于web开发者而言,Linux的知识和技能掌握是非常重要的,我们尤其需要一套渐进式的学习路径去熟悉和巩固,其中为代表的书籍《Linux就该这么学》提供了大部分的Linux基础学习和实战教程,非常值得阅读几番。当遇到一些难以处理的场景,需提高自身解决问题的能力,合理利用Linux开源社区的资源快速找到解决方案。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:SEO优化专员,转转请注明出处:https://www.chuangxiangniao.com/p/903147.html

(0)
上一篇 2025年1月4日 03:13:42
下一篇 2025年1月4日 02:38:01

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • H5页面制作软件评测:iH5,Hype和Adobe Animate

    在H5的设计制作上,中国和美国的差距有多大? 大家知道国内有很多轻便型的H5页面制作工具,上手快、操作傻瓜式,却不一定了解国内外同类软件或工具的最高水准。 先透露一下答案吧——这可能是你没料到的,国内技术水平已经逼近美国,而且某些领域远远领…

    编程技术 2025年1月4日
    100
  • 竞价网站被攻击的完美解决方法

    我是火焰,从事互联网这些年,服务器被DDOS已经是家常便饭,也习已为常了。 做竞价的朋友都有过服务器被攻击的经验,在原本就推广费用奇高,而转化率不高的情况下,碰到这种事情,可谓雪上加霜。 相信大家很多时候是恨得咬牙切齿却又无可奈何!特别是刚…

    编程技术 2025年1月4日
    100
  • 真实分享记录我学习Linux系统遇到的问题

    对于linux,又爱又恨,也有自己的一些看法,毕竟已经接触了快两年了。但是,说出来都是伤,为什么呢?如果您想知道请让我给您慢慢道来。 最开始接触linux是在高考完后,由于我家的台式电脑太卡,于是我就在网上找什么系统对电脑配置要求比较第一点…

    编程技术 2025年1月4日
    100
  • 技术宅学习Linux系统还是很有前途的

    老实说,我之所以入了Linux的坑,纯粹只是为了追我现在的男朋友,也就是技术宅。如果不是为了追我男朋友的话,我估计我这辈子都不会去接触linux。好吧,今天写一写过往事情,也是为了怀念当初追男友的一些故事吧。 我大学专业是金融管理,现在的男…

    编程技术 2025年1月4日
    100
  • 初学Linux系统最应该做对的4件事情

    “闲来无事,逛逛贴吧”已经是本人无事消磨时间的最佳选择了。五花八门的问题,各式各样的回答,总能给自己带来无限的欢乐。当然也有些问题值得自己去思考或者回答。之前就有人在贴吧里问到“Linux好难啊!该怎么学习呢?”针对此问题本人谈谈个人的想法…

    编程技术 2025年1月4日
    100
  • 人工智能看走眼的图像都长什么样?

    威廉·吉布森(William Gibson)写于 2010 年的小说《零历史(Zero History)》中有这样一个场景:一个角色穿着迄今为止「最丑陋的 T-shirt」展开了危险的突袭,T-shirt 可使其对闭路电视(CCTV)隐身。…

    编程技术 2025年1月4日
    100
  • 外媒速递:Windows 3.1——微软发展历程中的一座丰碑

    【51CTO.com原创稿件】外媒速递是核子可乐精选的近日国外媒体的精彩文章推荐,希望大家喜欢! 本期给大家推荐的是微软操作系统Windows 3.1的历史回顾、对联网车辆持悲观态度的五大误区、开发者热爱容器技术的五个理由和五项顶级编程语言…

    编程技术 2025年1月4日
    100
  • 在线支付系统的流程和概念探讨

    我们以收银台为例,详细说明支付的正确打开方式。 当用户提交订单后,就会被引导到收银台上。 以某东为例,手机上是这样的: PC上是这样的: 从这里我们可以看出,用户进入收银台之后,首先需要选择默认的支付方式。 支付方式指消费时付款的方式,比如…

    编程技术 2025年1月4日
    100
  • 如何找到适合自己阅读的源码

    看到「为什么我们要阅读源码?」文章写的非常不错,所以就转载了。有些同学可能看的一脸懵逼,其实这很正常,这篇文章写的都是理论和方法,缺少源码阅读的实践。只有在你源码阅读达到一定的量以后,你才会真正明白这篇文章是对阅读源码很好的归纳和总结。 我…

    编程技术 2025年1月4日
    100
  • 中国云计算:未成曲调 已有硝烟

    继VR之后,云计算被捧热。尤其是在深圳,一个产业是否热门,有一个很重要的因素可以体现,就是能不能时常在街上听到有人在热论。很显然,云计算做到了。一连好多天,记者的腿都跑软了,各种云计算产业论坛、技术论坛,阿里腾讯轮番上场,岂止是热闹,简直就…

    编程技术 2025年1月4日
    100

发表回复

登录后才能评论

联系我们

156-6553-5169

在线咨询: QQ交谈

邮件:253000106@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

联系微信