`
thinkry
  • 浏览: 39531 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Web后台开发的问题分析方法

阅读更多

Web后台开发中遇到的问题五花八门,分析问题涉及到的方方面面挺多的,不容易下手。本文分享工作中遇到的一些解决问题的方法仅供参考。如果您有好方法和案例,欢迎分享。

1一些系统知识

  • ulimit -a里的各种限制,特别是open files和core file size
  • 共享内存大小受/proc/sys/kernel/shmmax控制
  • 32位OS下默认写文件超过2G会coredump,可通过定义宏来解决
  • 32位OS下,受低端内存大小(800M,所有进程共享)的影响,单机socket大概超过9~10万会产生OOM(Out of Memory),系统会杀掉些进程,而且还没有coredump。可查阅slabinfo和slabtop。
  • 网卡收发数据包会产生软中断,一般会绑定到CPU0处理。这就决定了网卡收发包的性能有限。在KM上看到有提到过用多网卡提高网络吞吐量的做法。
  • 物理内存不够用时会使用到交换分区,很影响系统性能
  • socket有内核缓冲区,缓冲区的大小对网络收发包
  • 读写文件时系统可以合并磁盘IO操作,这个可以通过iostat -x看到。读写文件越分散,合并率越低。

linux内核、TCP/IP、DB这类知识了解越多,解决问题越顺手!

2常用工具

  • strace:查看进程的系统调用
  • ltrace:查看进程的库函数调用
  • lsof:查看系统已打开的文件句柄
  • netstat:查看网络信息
  • tcpdump:抓包工具
  • top:查看CPU和Load
  • uptime:查看系统运行时间和Load
  • iostat:磁盘IO统计
  • ulimit:查看进程的系统资源限制
  • free:查看内存和交换分区
  • mpstat:查看中断分布情况
  • gprof:性能分析工具
  • gdb:调试工具


3日志和信息

  • /proc:查看或修改系统信息和配置,上面的命令有不少就是读写/proc下的文件。不少网络参数都可以通过这里修改(本地端口范围、读写缓冲区大小、TIME_WAIT)
  • /proc/PID/:查看进程的相关信息
  • /var/log/messages:查看系统及内核日志
  • apache访问日志和错误日志
  • mysql的binlog


4查找规律
对业务产生的日志和统计数据,有时需要分析其中的规律,才好找到问题。可以从用户IP、来源IP、目标IP、时间、业务ID、号段特征这些方面来寻找。另外需要注意,没有规律也是一种规律。

 

分享到:
评论
3 楼 axbyzc 2010-03-22  
lz 总结的很好!
linux内核、TCP/IP、DB这类知识了解越多,解决问题越顺手! 呵呵
2 楼 benjiam 2010-03-19  
很好! 总结很全面。

基本都是linux 的基本点
1 楼 ThinkingInAll 2010-03-10  
比较高深,先mark一下

相关推荐

    python web开发.pdf

    1. **理解Python Web开发流程**:了解从项目构思到上线的完整流程,包括需求分析、设计、编码、测试和部署。 2. **熟悉常用工具**:掌握使用Virtualenv、Mercurial、Jenkins和Ansible等工具,提升开发效率。 3. *...

    后台开发 核心技术与应用实践_wangzhan_

    《后台开发核心技术与应用实践》一书,由徐晓鑫撰写,主要涵盖了Web后端开发的关键技术和实际操作,旨在帮助读者深入理解Web架构的核心概念,提升后端开发能力。本书内容丰富,理论与实践相结合,适合对Web后端开发...

    Python Web接口开发与测试

    Python Web接口开发与测试是一个涵盖了从基础的Python学习到Web接口测试的完整过程。本书首先介绍了Python语言的基础知识,包括如何在不同的操作系统上安装Python,如何安装和使用扩展库,以及如何选择合适的Python...

    php网站开发后台

    5. 安全性:在网站后台开发中,安全性是不可忽视的。PHP开发者需要掌握防止SQL注入、XSS攻击(跨站脚本)和CSRF(跨站请求伪造)的方法,如使用预编译语句、参数绑定、过滤用户输入等。 6. 错误和日志:有效的错误...

    web后台管理模板

    首先,"web后台"是指网站或应用程序的非公开部分,用于管理员执行诸如内容管理、用户管理、数据分析等操作。后台模板通常包括登录页面、仪表盘、表单处理、数据列表和各种管理功能。 此模板的描述提及“非常实用”...

    网上商城 Web开发

    通过这个项目,初学者不仅可以掌握Java Web开发的基本技能,还能了解到一个完整Web项目的生命周期,包括需求分析、设计、编码、测试和部署。这是一个极好的实战平台,能够帮助你将理论知识转化为实际操作能力。

    Web网站前台后台模版

    总的来说,"Web网站前台后台模版"是Web开发中的宝贵资源,它们帮助开发者专注于业务逻辑和创新,而不是从零开始创建基本的界面设计。理解并熟练运用这些模版,将有助于提升开发效率,同时保证网站的质量和用户体验。...

    PythonWeb开发实战(董伟明著)

    书中内容从Web开发的基础知识讲起,逐步深入到更复杂的高级主题,包含Web框架的使用、测试技术、数据库应用、消息队列处理、服务化架构设计以及持续集成方法等多个方面。这不仅为Web开发工程师提供了从零开始构建...

    Python web接口开发与测试

    7.3 开发Web接口实践:实际演示如何使用Python的Django框架开发Web接口,包括接口的设计和实现。 综合以上知识点,我们可以了解Python基础学习、Django框架的搭建与应用、Django的视图和模型开发、模板的使用和...

    基于php的ThinkPhp3.2.3框架开发的微信企业号后台管理系统.zip

    7. **毕业设计与课程设计**:作为毕业设计或课程设计项目,这个系统展示了实际项目开发的过程,包括需求分析、系统设计、编码实现、测试和部署等阶段,对于学习者来说,是一个很好的实践机会。 总结,这个项目涵盖...

    基于Delphi Web 应用开发.pdf

    - **原理-实例-分析模式**:本书采用了一种非常有效的教学方法——“原理-实例-分析”,先介绍理论基础,然后通过具体实例进行演示,最后对实例进行深入分析,使读者能够深刻理解每个组件的工作机制及其在Web开发中...

    企业深度协同的Java Web应用开发课程研究.pdf

    课程体系的建设是高校人才培养的关键,必须反映当前企业对于Java Web开发人才的技能要求,文章建议通过分析外网招聘平台的职位需求来构建课程体系。 文章还提出,要打破传统教学模式中内容耦合、内在课程关联的壁垒...

    基于java web开发的餐厅点餐系统 后台.zip

    这个项目为学习者提供了实践Java Web开发、数据库操作、前端交互和软件工程方法的良好机会,同时也涵盖了软件生命周期的多个阶段,如需求分析、设计、编码、测试和维护。通过参与这样的项目,开发者可以提升自己的...

    HTML5移动Web开发实战

    "HTML5移动Web开发实战"书籍可能会包含多个实际项目案例,指导读者如何将上述理论知识应用于实践中,解决实际开发中的问题,提升技能。 总之,HTML5移动Web开发不仅涉及技术的掌握,还需要对用户体验、性能优化和跨...

    JS调用后台带参数的方法

    在Web开发中,前端(通常是JavaScript)与后台(服务器端脚本如PHP、Java等)进行数据交换是非常常见的需求。这种交互可以通过AJAX技术实现异步请求,而不需要重新加载整个页面。当从前端向后台传递参数时,通常会...

    HTML5移动Web开发指南

    Web Workers用于在后台执行耗时任务,提高Web应用的响应速度。Web Storage(包括Session Storage和Local Storage)提供比Cookie更大的存储空间,使得临时或永久数据的管理更为便捷。 6. Web Components: HTML5的...

    Python web接口开发与测试.pdf

    ### Python Web接口开发与测试知识点概述 #### 一、Python Web接口开发与测试概览 ...通过上述内容的学习,开发者可以系统地了解Python Web接口开发与测试的关键技术和实践方法,为实际项目开发打下坚实的基础。

    IntraWeb技术在Web报表开发中的应用.pdf

    此外,文中还提到了使用IntraWeb技术进行Web报表开发的具体实现方法,并分析了其在提高报表灵活性、降低开发难度方面的显著效果。 #### 关键词 - IntraWeb技术 - AJAX技术 - Web报表 - Delphi - 客户机/服务器架构...

    中小学生信息技术大赛WEB平台包(含全部后台PHP源程序|整站资源)

    通过分析这些资源,可以学习到网页布局、色彩搭配、响应式设计以及动态效果的实现方法。同时,这也是一个很好的实践机会,让开发者了解Web前端开发的全过程。 五、NOC初赛模拟测试平台 NOC(National Olympiad in ...

Global site tag (gtag.js) - Google Analytics