请选择 进入手机版 | 继续访问电脑版

ITIL,DevOps,ITSS,ITSM,IT运维管理-ITIL先锋论坛

 找回密码
 立即注册

扫描二维码登录本站

QQ登录

只需一步,快速开始

查看: 185|回复: 0

如何搭建一个拖垮公司的技术架构?

[复制链接]
发表于 2021-5-14 12:26:50 | 显示全部楼层 |阅读模式
本帖最后由 蓉ZXM 于 2021-5-14 12:32 编辑
2 M" x2 d0 Q6 q
' K1 A9 f, {, i/ o' f. d4 m      架构师不仅拿钱多,还受到程序员的崇拜、妹子的仰慕。他们走路带风、出场自带BGM,吹啊吹,我的骄傲放纵。唯一的缺点,就是费头发。架构师虽好,却不是人人都能当的,除了聪明绝顶,还要有扎实的技术功底,经过多年的努力,我做到了一点,我已经绝顶了。一名架构师,必须身经百战,经历过无数重大宕机事故。因为神枪手都是子弹喂出来的,身上的每一块肥肉都是你亲口吃出来的,无他,唯手熟尔。我作为技术Leader中最懂架构的骑手,不仅送得一手好外卖,还搞宕过不少大型系统。下面结合自己的经历谈一谈:如何搭建一个拖垮公司的技术架构?4 E" m/ [' Z' a6 [- h% H% z
3 X% O# _/ }. F7 s# r4 ~/ ]

9 t; b2 h/ `1 o; s. m6 v
   一、系统主链路尽可能单点
, J$ Z' ?; p: Z, j1 H- M! |' L: z

" l  F- M. [6 O6 q! e& |
单点系统,就像苏伊士运河一样,一旦航道出故障,整个运输系统都瘫痪,非常酸爽。
1 Y: V$ K1 P' M* b1 V6 L) ~4 P6 W2 P. ]6 a单点就像单身,开始的时候滋味不好受,但是不用担心,因为后面你就习惯了。
- n) C0 @( l8 K% @3 n9 e$ J
- w) m+ Q7 x; I' {6 J; M, m/ L
/ Z6 Y5 T# u( |8 e. s  b! \2 s
* S, _. c, J4 Q6 g3 Y; i; j
% S$ B1 S& {+ ]: k
二、程序中多用循环
; R  F' @- H$ k7 N  `
3 {/ ~/ s/ S* L/ @

1 q& K- {" w6 q) g" o6 e0 H( r3 T1 ~

' z1 U. w: f* ]
无限死循环,是老K最爱用的编程技巧之一,当你看到CPU利用率百分百的时候,你就知道应该甩锅给运维了。
9 K4 }0 S6 H( q- M8 W8 Z4 y这年头,没点特长技能还真不行。比如我,玩得一手好乐器----退堂鼓,打得特好。
' M/ ?; a  ?+ a9 t

# n, O; \1 s5 ~- y  a) Z5 P
3 z$ Y/ H$ N* Y2 q7 e; b

4 _  O& A, Q6 S5 m
三、系统间增加依赖

8 a5 A( w* }$ X# c; B" j$ U8 `9 s& i1 \2 E* P

2 ?; K, n; p1 a' D. \# W$ c
在系统里增加内部依赖、外部依赖、第三方依赖。总之,能依赖的,不自己动手写。( o" i8 ?0 H4 v+ g) I( G( {7 Y
老K有今天的成就,主要是因为我的动手能力强,我这辈子只有两件事不会:这也不会,那也不会。
- g0 _/ A( `8 F8 f) b7 f8 v
( I' o. o" s( ]5 M/ v% s
  N" O9 S1 n3 A/ ]6 u

# p9 N4 Y% s5 a

3 c4 E) v, v8 C3 c: a- X" B3 y3 ]2 x; x7 S9 v" b0 Y

& Q: l( }( W# h  c6 y: g

! `, a$ F  W- R/ w! B3 l
四、不做服务补偿
3 X+ y6 i$ ]/ o+ e5 {, F4 q
* D0 ~' E& p% f/ M. n. A& L

# D+ r0 B1 t8 R, O
很多东西,错过就是错过,没法补偿,这就是人生。$ q& R+ Y5 P" n0 t8 W
作为架构师,要有哲学高度。所以说小伙子,你只看到了第二层,而你把我只想成了第一层,实际上我是第五层,你知道我讲的是什么意思吗?# o  v# V# W3 ~; U( j1 G

& S. W8 z% h+ n4 I2 ]

) t& v( _9 K: H4 E: g5 X
! P' T4 f4 i0 K) M" F( l3 }
五、不做幂等设计
3 i6 Q% G3 k# R+ g! j

* G& n2 U8 n7 k( L
6 X1 c9 J$ J: n+ ?
' w* J/ e+ G7 s. K3 c
" _3 v/ h% D  T7 u
凭啥后端接口要做幂等性设计?前端提交的时候不做判断吗?全都丢给后端开发做?& R6 b: ~: l; {3 m3 [6 _! p
大家都是打工人,人要脸,树要皮,电线杆子要水泥。, G# |9 q; `- o$ {! c
# m- p6 g  T5 u) {0 J$ S9 d

$ t& V- L9 P  _# E  P; G
六、不设置超时

9 i1 B  O$ g3 |8 ^2 L
& ]* b  R( {. h$ p& Q5 O

* a% m  q, s+ ^0 }8 ^
/ _/ s! u* }; D
连接超时、读超时,有多大设置多大,不管内部调用还是外部调用,都设置成60分钟。
# ~# ?1 N+ z' u只要努力搞,没有时间搞不砸的事情。做不成时间的朋友,就做时间的炮友。
! k) r1 Q2 N/ w! o6 T9 x) S
  Y! J" q, r: H) j* v' v
7 K' V8 q; b) C2 P7 j* Z% |' Z) W7 N$ p

" t5 p. B2 J, t4 c, i% _" w- A( E; A5 }

6 j1 r4 s' s4 t5 X* N" Z
七、不控制流量
; {5 b# `% F7 ?

1 }+ p1 i) [0 g6 t) `, J0 M7 ~
/ s; W  x0 p/ ^! c, N
让流量来得猛烈一些吧,千万别限流,什么漏桶算法、令牌桶算法,那都不如啤酒桶算法----喝完就睡,爱谁谁。
, m" s! E% d0 P' w: A6 k# Y6 X( y( c还控制啥流量啊?你连体重都控制不了,趁早放弃吧。你看看八戒,走了十万八千里也没见瘦下来,而且,他还吃素。
6 {! T- N( N6 d
; J( n  ]# m/ g  R( S

+ W# E& m# o- ~. h/ O* h/ V
( U: n: A4 t' U' L5 I/ J8 h; `/ M
! \" k9 n1 o2 v" o5 W4 T
八、不做监控预警

$ R. G3 [/ M: V( x* e! g1 O+ N, H# D( M6 i: n! \( z

9 F2 W% `( X+ I# P& ?+ L7 m6 q
大家都是职场成年人,做好分内事,别多管闲事。0 Z9 z+ Q. ?9 C' S6 }0 v+ ~  o
工作几年以后,我明白一个道理:熟练的运用“关我屁事”和“关你屁事”,可以省下人生80%的时间。6 h4 X' V5 l# L! @8 ]; Y! i
8 S5 E6 T1 D( {# F) p

& M' e( u; i! ^9 ^  e: W4 Z/ e8 X$ t* w, \
  K5 E( h* ], \7 Z: T" B

4 a) `: D# W! M2 U/ W) H. |3 I; n2 U% B
九、没有重试策略

0 b3 i' A  }5 \  t5 f4 Y
7 z8 z- A/ b  Q- S: b4 @

0 ~4 _# Y; n' B  l& l
6 c8 m+ A/ K* |
服务调用失败,你还想重试?我可不是随便的口。
; [, M( M  M& ^; Z2 @1 J( H; t人生不能重来,更不能乱来。不信?你让医生,给你开点后悔药,再来杯忘情水,医生立马送你去精神病院。
, U$ U& X# O- T+ ~
, T+ K. S- h# v" O
0 s" E5 Z: _/ f  k: T
十、不做系统隔离

0 d' _, {; J: L
! ?  d1 k  P, y- J0 B3 D

3 h6 ~) Z. h8 m0 r# o8 R- B- C! v% t
千万别做系统隔离,要挂一起挂。
; w7 n. B" W3 _! ?; E1 Y; L+ C0 C什么是真正的兄弟?就是当兄弟需要女人的时候,挺身而出做他的女人。面对困男,要排除万男,迎男而上。" y' m. R- @1 [6 X7 ?" }& B0 @( {6 ]
1 \4 v) |- z4 O: O# z# q0 y; n' D7 W
& @! f& Z" d2 F" P' G
十一、代码同步调用

) F( T* ]: l9 {3 o) w" u

: I& S% ~- C7 y
. m& u+ ?( q4 h% @, _/ H8 R

& b' ?0 f) O  a! @
( }2 w9 Q5 A2 {6 ], k; \
做系统就要步调一致、讲究和谐,尽量同步调用,多写bug。
; f; j) g# a+ j7 l  I通常我写bug的时候,喜欢中午写,知道为什么吗?因为早晚会有报应。- d4 {! V. w/ j/ ^

8 L2 Z$ M  n* S3 I
' O4 p5 J% d2 a; [2 [
十二、不做热数据缓存
! e& Y- H9 H# s4 [# [
  + ~6 l( k# U% b0 f, L8 s
RPC的意义是什么?就是被调用啊。疯狂地调用,是对一个服务最起码的尊重。  N4 j- a" P( E2 M8 |0 {, v  [
你知道为什么大项目上线都要选个好日子吗?这么说吧,你认为上线以后还会有好日子吗?  s1 f+ i1 q. M" S

! W8 E7 z" E4 y% }
2 W  ^! s4 o$ t. i$ s- N, {
十三、不做系统分级

/ @/ p  l/ _4 X) w* u/ C0 m' f$ f, \6 ?6 c1 o# d% U- n/ E
# V) P9 O" N* A: m& N7 ?, c4 L. L
对系统要一视同仁,不要区分核心系统、非核心系统,你有考虑过系统的感受吗?
9 j+ q# Y/ z9 Q: z$ ]" Z如果你被分门别类,你会开心吗?回想起来,小时候我们都很快乐,就是因为那个时候的我们,丑和穷得都还不是那么明显。
  K3 ^9 h2 W2 t  H* u

/ E& A. t" Y+ }2 [7 i! x+ _
7 Q7 N% V3 c% [' w8 d
, C4 c7 O* Q- S1 `
8 Y7 S; X3 S2 |4 S2 i, r
/ t9 H4 y1 V) [) V" ]
十四、没有服务降级
" E% G, Z& ?/ g3 S0 w+ e# F8 W
) B, u/ ~$ x6 W2 s+ ~* \

: l2 M' C6 c- S+ c3 W2 I
服务降级就low了,就算宕机也要一起扛。
9 A: e3 s: W5 H6 `( g7 w, Q人生没有白走的路,如果有,那就是微信运动出bug了。
; d$ d+ A$ X7 {
$ b: {8 h9 `2 g1 h
- ~# T" L7 A* l) j* y2 ^& {  T

- c+ Y; X! Q1 Q! A3 e7 p
- m5 H4 c+ Q8 N: b

* n3 d) y- Q! m( {
五、无灰度和回滚方案
" Q! k" ], l" H7 x* Y; _

3 z& f! E+ U! F* \
+ o, b0 m7 ]5 a6 @

1 _- S1 q# S: @' V4 `* o/ Q
  d& S# C, o3 M# E. P$ f2 W5 ?
上线全凭运气,没有回滚方案!就是那么自信。0 x/ }3 o9 g8 X- i
我这个人,长这么大没学到别的本事,就掌握了一项特殊技能,白天不用安眠药也能安眠,晚上不用兴奋剂也能兴奋。论熬夜发布,我从来没服过谁。
" h4 p: R9 z! V0 ?/ W5 N
5 W% n. l" d/ B3 {  ]" o1 {

! z" F* h6 Q. X( v( r" n* s, R3 [3 g3 d5 p( w3 y0 \8 W$ g: H0 k* b
3 ]) L9 ^' C. O3 O4 H6 L

4 p4 ?  n6 V+ F8 j
$ ]9 H0 _0 k. i  o  S% G

" V. y1 H0 m1 i2 p2 ]( u: j
  十六、程序多做远程调用

6 W/ o* o/ v, |  v! J  9 w# d/ p: {, Z% B) g! q

6 s" W5 ^) \  e5 U5 A
  Q1 \$ |6 F# o( H) Z; l  H  B; O
/ _+ Z; a, p$ h7 i
6 Q. l1 }1 |  m) B$ `3 L
能远程调用的,绝不本地调用,都5G时代了,网络延迟那点事不算什么。
2 T7 S0 `+ B# H! e8 _8 a8 Z再说了,做人要有点耐心,女朋友约会迟到一小时,你敢发火吗?不敢就对了,千万别惹女人,她们是流血一周都不会死的动物。
2 a- w1 I) b- N
. ?" x- [9 B4 I. m9 s
$ V  Q2 _4 a, m! H* r3 K2 c
8 F# y2 I  H* w4 K6 Q5 S- |' ?

+ Z$ c" r. R& o5 ^3 A- G
十七、不做熔断机制

# a" X! _) N& ~9 A( C
/ G1 h* |/ c8 _0 l  H
* @5 b2 t1 g4 Z* P5 s: k

/ {4 t4 a8 u5 D
4 i6 D! [- J2 u$ v
$ d. q  f- X8 b+ V
炒股炒昏头了吧,做啥熔断机制?
! z5 h% S1 b- h, b! t你问过韭零后吗?基金都绿成啥样了,他喊熔断了吗?作为韭菜,学费还是要交的,趁年轻的时候多交点,这样到老了再交你就习惯了。, k! x, }  G0 ~2 `" u7 {( v% O  z, K

+ N+ ?5 R5 W& h! z, N! T1 a) C8 \1 [% N
' e( x- d8 V9 Q3 ?' f4 Z, e
- s/ V" H9 d" [/ [. y' R
十八、不做代码扫描

; y# n* \9 g  Q6 x# ^+ Q) Y; q
' u3 Y( {* J( E5 d! f
' H5 e4 x% I" t1 a' G- Q5 C
要有工匠精神,自己代码自己review,机器哪里懂得欣赏你的代码艺术?$ N1 ?& b* ~2 X' b8 M0 S
我那骚气的注释、奇妙的函数、神乎其技的Copy/Paste。每次看代码,都被自己的才华吓到。
0 r4 u1 D2 K/ h7 x
/ s, \0 s5 K# l. [6 D- |
" W" M$ Z0 P$ Q, u# Y5 X  u

. x+ }- V- H* O5 \: v# \
: Q& L/ E# g/ a( F
( @5 M! n' K% A, l2 @
十九、不做线上压测

7 q: F' {  o+ }: J3 C3 ]" z
/ \6 _2 o5 W6 U

8 O/ M# m0 r0 v
上线就完事了,后面的事情交给菩萨吧。3 A: e# A& j* s; }, G+ |2 M: e
一分耕耘,一分收获。天下没有免费的午餐,所以我一般都睡到下午才起床。2 H4 i, A9 A2 P6 H% P4 y
/ ?! _  z2 S  q
( _1 _5 B7 Z* A: ^' ]& C0 l
; f  ~! _. D6 Q" e+ `: ?0 g& h
' M7 v) g6 M; ?; O( |! r

) H* E; E' j2 Q/ X8 l8 R. G
结 语
6 {: N+ B* q+ F2 O
7 P; C! l+ T" F# r  B& Z3 m0 w

2 F9 e! U2 ?4 A* S' I& [
7 Z1 y% o, ^8 t( k% U- p
架构设计的骚操作还有很多,以上任意一项玩到极致,都足以把公司搞垮。
  d. m" L! X3 v' @5 R$ |% a架构师是最接近圣人的职业,优秀的架构师每天都三省吾身:早饭吃什么,午饭吃什么,晚饭吃什么。最后,愿上帝保佑每一位吃饱饭的架构师。(IDCF)
9 g& x& O0 I. r6 |5 c5 ]9 G, Q
8 M1 t0 {$ i- ?7 F




上一篇:DataOps、MLOps 和 AIOps,你要的是哪个Ops?
下一篇:高效接口测试的策略、原则、结构与实践技巧
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

参加 ITIL 4 基础和中级专家认证、v3专家升级、DevOps专家认证、ITSS服务经理认证报名
本站关键字: ITIL| ITSM| ISO20000| ITIL培训| ITIL认证| ITIL考试| ITSS| ITSS培训| ITSS认证| IT运维管理| DevOps| DevOps培训| DevOps认证| itop| itil4| sre| 开源ITSM软件

QQ|ITIL先锋论坛 ( 粤ICP备11099876号 )|appname

Baidu

GMT+8, 2021-8-6 08:22 , Processed in 0.106700 second(s), 26 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表