后端系统开发之懒人思维

2023-12-20 04:10
文章标签 开发 思维 懒人 端系统

本文主要是介绍后端系统开发之懒人思维,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

最近在研究程序运行方式的技术细节,看了一个让程序以daemon方式运行的函数,内部调用了fork、open、dup2等函数,约有20行代码,看完csdn一篇博客后发现,其实这个deamon实现并不严谨,而且可以直接调用unistd.h头文件中的daemon函数,于是忍不住感慨,勤奋的程序员会重复造轮子啊。

开发的时候还是得有"懒人思维",尽量避免重复造轮子,优先考虑使用系统调用、各种公共库函数、第三方工具。人的精力是有限的,节约下来的时间和精力可以花在其他地方,比如为公司干更多的活。《计算广告》作者刘鹏(北冥乘海生)的一句话说的特别对,想要提高自己的薪资待遇,就要努力提升自己的价值,以便公司能剥夺更多的剩余价值。想想是不是这个理?

本周轮到我值班排查客户投诉,在分析问题过程中,忽然意识到80%的问题都是广告无展现,而排查问题的步骤几乎是固定的:先看广告投放单元是否有效,再在调试系统尝试召回广告,然后从大量输出中找到对排查问题有价值的信息,分析广告没有展现的原因,最后写邮件回复。

产品经理问我,能否提供一个更好用的问题排查系统呢?作为本份的开发人员,自然不敢接这样的活儿,我委婉拒绝后,自己也开始思考,如何避免大量重复枯燥的体力劳动,提高问题排查效率?

重新设计一个调试系统吗?除了实现功能外,还得考虑高可靠、高可用,想想都觉得工作量太大,况且最近本来就加班,何必要跟自己身体过不去呢。有没有偷懒一点的代替方案呢?忽然想到只要把广告gateway模块的代码简单修改,就能变成一个简易调试系统,而且gateway基于openresty实现高并发,因此只需要专注lua语言的业务代码开发就可以了。

动手尝试了一下,只改了十几行代码,就实现了根据广告投放单元来过滤特定的广告,结果真是令人兴奋。接下来只需要提取对排查问题有用的字段,并自动输出问题分析结论(以便粘贴到邮件中),就能提高问题排查效率了!

生活在开源时代是幸福的,优秀的开源软件极大简化了构建大型系统的工作,诸如rpc框架、微服务框架、消息队列、日志模块、高效的编译工具等,开发人员大可不必再模仿造轮子,而是可以做"懒人",集中精力在丰富和完善产品功能上,同时也有精力去研究某项感兴趣的技术,做一个能提供更多剩余价值的员工。

底层技术永远有用,但是产品需求变化太快,导致对开发效率要求很高,逼得我们去学习和使用更快、更好、更强大的高级开发语言和技术工具。摩尔定律揭示了硬件的提升规律,而软件方面的开发语言、技术工具的发展规律也一直存在,只是不像硬件那样淘汰的惨烈和彻底而已。

愿天底下程序员加班都不是因为排查问题和重复造轮子,而是在完善产品和提高技术。

金句分享

面试造核弹,工作拧螺丝。

——出自网络流行语。

解读:网友对大公司面试考察很全面深入,但是工作分工很细的一种调侃。

这篇关于后端系统开发之懒人思维的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/514730

相关文章

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版

使用docker搭建嵌入式Linux开发环境

《使用docker搭建嵌入式Linux开发环境》本文主要介绍了使用docker搭建嵌入式Linux开发环境,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录1、前言2、安装docker3、编写容器管理脚本4、创建容器1、前言在日常开发全志、rk等不同

Python实战之SEO优化自动化工具开发指南

《Python实战之SEO优化自动化工具开发指南》在数字化营销时代,搜索引擎优化(SEO)已成为网站获取流量的重要手段,本文将带您使用Python开发一套完整的SEO自动化工具,需要的可以了解下... 目录前言项目概述技术栈选择核心模块实现1. 关键词研究模块2. 网站技术seo检测模块3. 内容优化分析模

基于Java开发一个极简版敏感词检测工具

《基于Java开发一个极简版敏感词检测工具》这篇文章主要为大家详细介绍了如何基于Java开发一个极简版敏感词检测工具,文中的示例代码简洁易懂,感兴趣的小伙伴可以跟随小编一起学习一下... 目录你是否还在为敏感词检测头疼一、极简版Java敏感词检测工具的3大核心优势1.1 优势1:DFA算法驱动,效率提升10

Python开发简易网络服务器的示例详解(新手入门)

《Python开发简易网络服务器的示例详解(新手入门)》网络服务器是互联网基础设施的核心组件,它本质上是一个持续运行的程序,负责监听特定端口,本文将使用Python开发一个简单的网络服务器,感兴趣的小... 目录网络服务器基础概念python内置服务器模块1. HTTP服务器模块2. Socket服务器模块

Java 与 LibreOffice 集成开发指南(环境搭建及代码示例)

《Java与LibreOffice集成开发指南(环境搭建及代码示例)》本文介绍Java与LibreOffice的集成方法,涵盖环境配置、API调用、文档转换、UNO桥接及REST接口等技术,提供... 目录1. 引言2. 环境搭建2.1 安装 LibreOffice2.2 配置 Java 开发环境2.3 配

Python38个游戏开发库整理汇总

《Python38个游戏开发库整理汇总》文章介绍了多种Python游戏开发库,涵盖2D/3D游戏开发、多人游戏框架及视觉小说引擎,适合不同需求的开发者入门,强调跨平台支持与易用性,并鼓励读者交流反馈以... 目录PyGameCocos2dPySoyPyOgrepygletPanda3DBlenderFife

使用Python开发一个Ditto剪贴板数据导出工具

《使用Python开发一个Ditto剪贴板数据导出工具》在日常工作中,我们经常需要处理大量的剪贴板数据,下面将介绍如何使用Python的wxPython库开发一个图形化工具,实现从Ditto数据库中读... 目录前言运行结果项目需求分析技术选型核心功能实现1. Ditto数据库结构分析2. 数据库自动定位3

Django开发时如何避免频繁发送短信验证码(python图文代码)

《Django开发时如何避免频繁发送短信验证码(python图文代码)》Django开发时,为防止频繁发送验证码,后端需用Redis限制请求频率,结合管道技术提升效率,通过生产者消费者模式解耦业务逻辑... 目录避免频繁发送 验证码1. www.chinasem.cn避免频繁发送 验证码逻辑分析2. 避免频繁

Spring Boot集成/输出/日志级别控制/持久化开发实践

《SpringBoot集成/输出/日志级别控制/持久化开发实践》SpringBoot默认集成Logback,支持灵活日志级别配置(INFO/DEBUG等),输出包含时间戳、级别、类名等信息,并可通过... 目录一、日志概述1.1、Spring Boot日志简介1.2、日志框架与默认配置1.3、日志的核心作用