Неодамна започнавме мал проект за да го исчистиме начинот на кој делови од нашите системи комуницираат зад сцената во Buffer. Некој брз контекст: користиме нешто што се нарекува SQS (Amazon Simple Queue Service. Овие редици делуваат како чекални за задачи. Еден дел од нашиот систем испушта порака, а друг ја зема подоцна. Сметајте на тоа како да му оставите белешка на колегата, кога ќе добиете шанса, кога ќе добиете шанса, тој ќе го обработи системот. не мора да чекаме наоколу за одговор. Нашиот проект беше да извршиме рутинско одржување: ажурирање на алатките што ги користиме за локално тестирање на редиците и чистење на нивната конфигурација Корисно. Еве зошто е тоа важно, како ги најдовме и што направивме во врска со тоа. Зошто ова е повеќе важно отколку што мислите Да, водењето на непотребната инфраструктура чини пари. Чистење, би рекол дека финансискиот трошок е всушност најмалиот дел од проблемот. Секој пат кога нов инженер се придружува на тимот и ги истражува нашите системи, тие се среќаваат со овие мистериозни процеси. Повремено има потреба од ажурирања за безбедност, поправки на компатибилност кога нешто друго се менува. Се случува природно во кој било долготраен систем. Функцијата е застарена, но работата во заднина што ја поддржуваше продолжува да работи Целата база на податоци за родендени што одговара на тековниот датум и им испративме на клиентите персонализирана е-пошта за време на рефактор во 2020 година, ја сменивме нашата трансакциска алатка за е-пошта, но заборавивме да го отстраниме овој работник - тој продолжи да работи уште пет години. движење (популарен пристап каде што компаниите го поделија својот код на многу мали, независни услуги). Консолидирано во едно складиште со повеќе услуги. Услугите сè уште постојат како логични граници. Во едно складиште, конечно, можевме да ја видиме секоја редица до нејзините потрошувачи и производители.Откритието е речиси неизбежно. Што всушност направивме Откако ги идентификувавме процесите без родители, требаше да одлучиме што да правиме со нив. Еве како му пристапивме. Прво, го проследивме секој до неговото потекло. Копавме низ историјата на git и старата документација за да разбереме зошто секој работник е создаден на прво место. Во повеќето случаи, првичната цел беше јасна: еднократна миграција на податоци, функција која доби зајдисонце, привремен начин за заобиколување што ја надживеа својата корисност. Потоа потврдивме дека тие се навистина неискористени. Пред да отстраниме нешто, додадовме евиденција за да потврдиме дека овие процеси тивко не прават нешто важно што сме го пропуштиле. Набљудувавме неколку дена за да се увериме дека воопшто не се повикани и постепено ги отстранувавме. Не избришавме сè одеднаш. Ги отстранивме процесите еден по еден, внимавајќи на какви било неочекувани несакани ефекти. (За среќа, ги немаше.) Конечно, го документиравме она што го научивме. Додадовме белешки во нашите внатрешни документи за тоа што првично направил секој процес и зошто е отстранет, така што идните инженери нема да се прашуваат дали исчезнало нешто важно. Што се смени по чистењето Сè уште сме рано во мерењето на целосното влијание, но еве што видовме досега. Нашиот инфраструктурен инвентар сега е точен. Кога некој ќе праша: „Кои работници трчаме? ние всушност можеме да одговориме на тоа прашање со сигурност. Разговорите за влез во авионот исто така станаа поедноставни. Новите инженери не се сопнуваат низ мистериозни процеси и не се прашуваат дали им недостасува контекст. Базата на кодови го рефлектира она што всушност го правиме, а не она што го правевме пред пет години. Третирај ги рефакторите како археологија и превенција Мојот најголем дел од овој проект: секој значаен рефактор е можност за археологија. Кога сте длабоко во системот, навистина разбирате како се поврзуваат парчињата, вие сте во совршена позиција да се запрашате што сè уште е потребно. Тој ред од некој стар проект? Работникот кој некој го создал за еднократна миграција на податоци? Закажаната задача што упатува на функција за која никогаш не сте слушнале? Тие можеби сè уште работат. Еве што вградуваме во нашиот процес понатаму: за време на кој било рефактор, прашајте: што друго го допира овој систем што не сме го погледнале подолго време? Кога ја отфрлате функцијата, следете ја до нејзините процеси во заднина, а не само кодот свртен кон корисникот. Кога некој ќе го напушти тимот, документи кои сè уште не се мигрирани во единственото складиште. Како што продолжуваме да се консолидираме, уверени сме дека ќе најдеме повеќе од овие скриени реликвии. Но, сега сме подготвени да ги фатиме и да спречиме да се формираат нови. Кога целиот ваш код живее на едно место, инфраструктурата сираче нема каде да се сокрие.
Што научивме откако пронајдовме 7 заборавени работни места кои работат 5 години
By Social Media
·
·
6 min read
·
502 views
Read in:
aa
ace
af
ak
alz
am
ar
as
awa
ay
az
ba
ban
be
bew
+191 more
bg
bho
bik
bm
bn
brx
bs
bug
ca
ceb
cgg
ckb
co
crh
cs
cv
cy
da
de
din
doi
dv
dyu
dz
ee
el
en
eo
es
et
eu
fa
ff
fi
fj
fo
fr
fur
fy
ga
gd
gl
gom
gn
gu
ha
haw
he
hi
hil
hne
hmn
hr
hrx
ht
hu
hy
id
ig
ilo
is
it
ja
jam
jv
ka
kab
kbp
kg
kha
kk
kl
km
kn
ko
kri
ku
ktu
ky
la
lb
lg
li
lij
ln
lo
lmo
lt
ltg
lua
luo
lus
lv
mai
mak
mg
mi
min
mk
ml
mn
mni-mtei
mos
mr
ms
mt
my
nd
ne
nl
nn
no
nr
nso
nus
ny
oc
om
or
pa
pag
pam
pap
pl
ps
pt
pt-br
qu
rn
ro
ru
rw
sa
sah
sat
sc
scn
sg
si
sk
sl
sm
sn
so
sq
sr
ss
st
su
sus
sv
sw
szl
ta
tcy
te
tg
th
ti
tiv
tk
tl
tn
to
tpi
tr
trp
ts
tt
tum
ty
udm
ug
uk
ur
uz
ve
vec
vi
war
wo
xh
yi
yo
yua
yue
zap
zh
zh-hk
zh-tw
zu