前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开发者的悲观性思维

开发者的悲观性思维

作者头像
CainGao
发布2020-04-14 14:56:28
5950
发布2020-04-14 14:56:28
举报
文章被收录于专栏:指尖数虫

做开发者时间长了对于事物的看法总是跟别人不一样的。开发者的思维是一步一步的养成的。或者说在一次次的踩坑过程中锻炼出来的。开发者的思维变成了什么样子?很多其他行业的朋友对开发者的思维非常的不理解。总是觉得开发者想的太多。

在与朋友经过多次沟通后,得到反馈:我总是会把一些问题想的复杂化了、而且对于某些问题想的太过于悲观、有些问题又需要反复的确认,或许可能是真的我的思维有问题... 晚上老婆在做饭让我出去买几个馒头,去之前就要先确认:

  1. 买几个?
  2. 馒头没有了咋办?
  3. 都没有了买啥?
  4. 既然已经开始做饭了为啥不确认一下主食到底有没有?
  5. ...滚!

我确实存在这种思维,可能把一些简单的事情复杂化了。但是我总是辩称是系统化。我们总是在不知不觉中把一些生活中的问题代入到了我们做思考的系统化工作中。但是这也是由来已久的。或者说我认为这就开始开发者的思维训练。理由如下:

备份与容灾

容灾与备份对于开发者来说比较熟悉的场景,我们在进行开发工作时都会用到这些场景。 容灾:当出现灾难的时候,能够实现系统的正常运行保证数据的不丢失。例如地震、火灾、铲车、挖掘机...

作为开发者来说,确实需要进行此类灾难发生时的保障性机制。所以慢慢演进出多机房多活同城多活异地多活三地五中心等高可用架构。 既然这样那么数据,业务就会存在各种各样的备份节点。同步、异步等各种方式来保障应用、数据的可用性。 非开发者怎么可能会想到一个数据还要防地震、防挖掘机呢。

防攻击

防攻击就比较好理解了,很多人都会知道网络攻击的意思。但是可能更多人没有感受过网络攻击。 但是至少我们都知道网络攻击会造成什么样子的后果,我们常用的电脑如果被安装了木马或病毒简单的利用杀毒软件进行查杀就好了。复杂的大不了重装一下系统。 但是开发者的服务器上受到攻击的时候还有客户正在使用呢...用户的钱支付了,但是订单还没有生成就被攻击了,例如你用支付宝在超市买东西,钱从你账户上扣了,但是超市没有收到...

面向开发者来说防攻击要做的东西就会更多更复杂。没有一个绝对安全的系统。所以开发者在开发代码的时候要注意各种防攻击:SQL注入、XSS、CSRF等这类攻击都需要进行防止。应用服务器,数据服务器等同样需要防止DDOS、CC、ARP、勒索病毒等等。

可能非开发者根本没有遇到过电脑被攻击。但是当你购买一个服务器时,你就知道攻击其实是无处不在的。 本人数据库有幸被黑客三次光临,数据库端外网开放,帐号root/123456。勒索0.5个比特币、我想了一下...数据不值钱,DDL语句又都在。干掉重装了...

总结

可能以上所讲到的点不是很全面,还有更多其他的场景。例如技术调研阶段、技术开发阶段都会想的很多。我们大部分在开发技术产品的时候想的可能不仅仅是实现,而更多的是能够在更多的异常场景下同样能够稳定的提供服务。或者简单的一个单元测试都要求各种场景的测试覆盖率。好好的接收个数字为啥非得要考虑用户会扔过来个乱码呢。业务开发完成为啥还要考虑可扩展呢?可能谁都不想大半夜睡觉的时候被运维的电话吵醒吧?

哥,你的服务出问题了!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-11-23,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 指尖数虫 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 备份与容灾
  • 防攻击
  • 总结
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档