અમે તાજેતરમાં બફર પર અમારી સિસ્ટમના ભાગો પડદા પાછળ કેવી રીતે સંચાર કરે છે તે સાફ કરવા માટે એક નાનો પ્રોજેક્ટ શરૂ કર્યો છે. કેટલાક ઝડપી સંદર્ભ: અમે SQS (એમેઝોન સિમ્પલ કતાર સેવા. આ કતારો કાર્યો માટે વેઇટિંગ રૂમની જેમ કામ કરે છે. અમારી સિસ્ટમનો એક ભાગ સંદેશ છોડી દે છે, અને બીજો તેને પછીથી ઉપાડે છે. તેના વિશે વિચારો, જ્યારે "કોઈ ડેટા મેળવવા માટે, જ્યારે તમે આ ડેટા મેળવો છો, ત્યારે "કોઈ" ડેટા મેળવવાની તક છોડો. નોંધ મોકલતી સિસ્ટમને પ્રતિસાદ માટે રાહ જોવી પડતી નથી. અમારો પ્રોજેક્ટ નિયમિત જાળવણી કરવાનો હતો: કતારોને સ્થાનિક રીતે ચકાસવા અને તેમના ગોઠવણીને સાફ કરવા માટે અમે ઉપયોગમાં લેવાતા ટૂલ્સને અપડેટ કરીએ છીએ. પરંતુ જ્યારે અમે ખરેખર કઈ કતારોનો ઉપયોગ કરીએ છીએ તે મેપ કરી રહ્યા હતા, ત્યારે અમને કંઈક એવું મળ્યું જે અમે ધાર્યું ન હતું: સાત અલગ અલગ પૃષ્ઠભૂમિ પ્રક્રિયાઓ (અથવા ક્રૉન જોબ્સ, જે આપમેળે ચાલતી હોય છે અને કામદારો માટે પાંચ વર્ષ સુધી સુનિશ્ચિત કરવામાં આવે છે) તે બધા કંઈપણ ઉપયોગી નથી કરી રહ્યા. તે શા માટે મહત્વનું છે, અમે તેને કેવી રીતે શોધી કાઢ્યું અને અમે તેના વિશે શું કર્યું. હા, બિનજરૂરી ઈન્ફ્રાસ્ટ્રક્ચર ચલાવવા માટે પૈસા ખર્ચ થાય છે, મેં એક ઝડપી ગણતરી કરી અને તેમાંથી એક માટે, અમે 5 વર્ષમાં ~ 360-600 ચૂકવ્યા હોત, પરંતુ આ અમારી સૌથી મોટી રકમ છે એવી પ્રક્રિયા માટે કચરો જે કંઈ કરતું નથી. જો કે, હું એવી દલીલ કરીશ કે નાણાકીય ખર્ચ એ સમસ્યાનો સૌથી નાનો ભાગ છે. દરેક વખતે જ્યારે કોઈ નવો એન્જિનિયર ટીમમાં જોડાય છે અને અમારી સિસ્ટમની શોધખોળ કરે છે, ત્યારે તેઓ આ રહસ્યમય પ્રક્રિયાઓનો સામનો કરે છે, "આ કાર્યકર શું કરે છે તે એક પ્રશ્ન બની જાય છે જે અમને ટચ કરવા માટે ડર લાગે છે." કારણ કે તે કદાચ કંઈક અગત્યનું કરી રહ્યું છે. કેટલીકવાર સુરક્ષા અપડેટ્સ, નિર્ભરતા બમ્પ્સ, સુસંગતતા સુધારણાની જરૂર પડે છે, જેના કારણે અમારી ટીમ કોઈ હેતુ માટે જાળવણી ચક્રમાં ખર્ચ કરે છે પહેલા, અને સંદર્ભ તેમની સાથે રહે છે. આ કેવી રીતે થાય છે? આંગળી ચીંધવી સરળ છે, પરંતુ સત્ય એ છે કે કોઈ પણ લાંબા સમય સુધી ચાલતી સિસ્ટમમાં આ કુદરતી રીતે થાય છે. એક વિશેષતા દૂર થઈ જાય છે, પરંતુ તેને સમર્થન આપતી પૃષ્ઠભૂમિની નોકરી કોઈ વ્યક્તિ સ્થળાંતર સંભાળવા માટે "અસ્થાયી રૂપે" ચાલુ રાખે છે, અને તે પછી કોઈ શેડ્યૂલ બદલાતું નથી ચેક કરવા માટે વિચારે છે. અમે બફર પર જન્મદિવસની ઉજવણીના ઇમેઇલ્સ મોકલતા હતા, અમે એક સુનિશ્ચિત કાર્ય ચલાવ્યું હતું જેણે વર્તમાન તારીખ સાથે મેળ ખાતા જન્મદિવસ માટે સંપૂર્ણ ડેટાબેઝ તપાસ્યો હતો અને 2020 માં રિફેક્ટર દરમિયાન ગ્રાહકોને વ્યક્તિગત ઇમેઇલ મોકલ્યો હતો, પરંતુ આ કાર્યકર્તાની નિષ્ફળતાના વધુ પાંચ વર્ષ માટે તેઓને દૂર કરવાનું ભૂલી ગયા હતા. અમે કેવી રીતે કામ કરીએ છીએ તેમાં ઇરાદાપૂર્વકની સફાઈ કર્યા વિના, એન્ટ્રોપી જીતે છે. ઘણી કંપનીઓની જેમ, બફરે માઇક્રોસર્વિસિસ ચળવળને સ્વીકારી હતી (એક લોકપ્રિય અભિગમ જ્યાં કંપનીઓ તેમના કોડને ઘણી નાની, સ્વતંત્ર સેવાઓમાં વિભાજિત કરે છે). ટીમો વચ્ચે સ્પષ્ટ સીમાઓ સાથે, તેના પોતાના પર તૈનાત કરવામાં આવે છે. પરંતુ વર્ષોથી, અમે જોયું કે ડઝનેક રિપોઝીટરીઝનું સંચાલન ટીમ માટેના ફાયદાઓ કરતાં વધુ છે તેથી અમે એક બહુ-સેવા સિંગલ રિપોઝીટરીમાં એકીકૃત થઈ ગયા છીએ, પરંતુ તે એક જ જગ્યાએ રહે છે. આ દરેકની પોતાની શોધ છે એક રેપોમાં કામ કરતા ઇજનેરો દ્વારા કદાચ કોઈ એક જગ્યા ન હોય, જ્યાં શું ચાલી રહ્યું છે તે અંગે કોઈ એકીકૃત દૃશ્ય ન હોય. એક રીપોઝીટરીમાં અમે દરેક કતારને તેના ઉપભોક્તાઓ અને ઉત્પાદકોને શોધી શકીએ છીએ જે હવે અસ્તિત્વમાં નથી એકીકરણ એ ઝોમ્બી ઈન્ફ્રાસ્ટ્રક્ચર શોધવામાં મદદ કરવા માટે ડિઝાઇન કરવામાં આવ્યું ન હતું — પરંતુ તે તે બનાવ્યુંશોધ લગભગ અનિવાર્ય છે. અમે ખરેખર શું કર્યું એકવાર અમે અનાથ પ્રક્રિયાઓને ઓળખી લીધા પછી, અમે નક્કી કરવાનું હતું કે તેમની સાથે શું કરવું. અમે તેનો સંપર્ક કેવી રીતે કર્યો તે અહીં છે. પ્રથમ, અમે દરેકને તેના મૂળ માટે શોધી કાઢ્યા. દરેક કાર્યકરને પ્રથમ સ્થાને શા માટે બનાવવામાં આવ્યો હતો તે સમજવા માટે અમે ગિટ ઇતિહાસ અને જૂના દસ્તાવેજો ખોદ્યા. મોટા ભાગના કિસ્સાઓમાં, મૂળ હેતુ સ્પષ્ટ હતો: એક વખતનો ડેટા સ્થળાંતર, એક સુવિધા જે સૂર્યાસ્ત પામી, એક અસ્થાયી ઉકેલ જે તેની ઉપયોગીતા કરતાં વધુ જીવે છે. પછી અમે પુષ્ટિ કરી કે તેઓ ખરેખર બિનઉપયોગી હતા. કંઈપણ દૂર કરતા પહેલા, અમે ચકાસવા માટે લોગીંગ ઉમેર્યું છે કે આ પ્રક્રિયાઓ શાંતિથી કંઈક અગત્યનું કામ કરી રહી નથી જે અમે ચૂકી ગયા છીએ. તેઓને બિલકુલ બોલાવવામાં આવ્યા ન હતા તેની ખાતરી કરવા માટે અમે થોડા દિવસો માટે મોનિટર કર્યું, અને અમે તેમને ઉત્તરોત્તર દૂર કર્યા. અમે એક જ સમયે બધું કાઢી નાખ્યું નથી. અમે એક પછી એક પ્રક્રિયાઓ દૂર કરી, કોઈપણ અણધારી આડઅસર માટે જોઈ રહ્યા છીએ. (સદભાગ્યે, ત્યાં કોઈ નહોતું.) છેવટે, અમે જે શીખ્યા તેનું અમે દસ્તાવેજીકરણ કર્યું. અમે અમારા આંતરિક દસ્તાવેજોમાં દરેક પ્રક્રિયા મૂળ રૂપે શું કર્યું હતું અને તેને શા માટે દૂર કરવામાં આવ્યું હતું તે વિશે નોંધો ઉમેરી છે, જેથી ભવિષ્યના એન્જિનિયરો આશ્ચર્ય પામશે નહીં કે કંઈક મહત્વપૂર્ણ ખૂટે છે. સફાઈ કર્યા પછી શું બદલાયું છે અમે હજી પણ સંપૂર્ણ અસરને માપવામાં પ્રારંભિક છીએ, પરંતુ અમે અત્યાર સુધી જે જોયું છે તે અહીં છે. અમારી ઇન્ફ્રાસ્ટ્રક્ચર ઇન્વેન્ટરી હવે સચોટ છે. જ્યારે કોઈ પૂછે કે "અમે કયા કામદારો ચલાવીએ છીએ?" અમે ખરેખર તે પ્રશ્નનો આત્મવિશ્વાસ સાથે જવાબ આપી શકીએ છીએ. ઓનબોર્ડિંગ વાતચીત પણ સરળ બની ગઈ છે. નવા ઇજનેરો રહસ્યમય પ્રક્રિયાઓમાં ઠોકર ખાતા નથી અને આશ્ચર્ય પામતા નથી કે શું તેઓ સંદર્ભ ગુમાવી રહ્યાં છે. કોડબેઝ એ પ્રતિબિંબિત કરે છે કે અમે ખરેખર શું કરીએ છીએ, અમે પાંચ વર્ષ પહેલાં શું કર્યું નથી. રિફેક્ટર્સને પુરાતત્વ અને નિવારણ તરીકે ગણો. આ પ્રોજેક્ટમાંથી મારો સૌથી મોટો ઉપાડ છે: દરેક નોંધપાત્ર રિફેક્ટર્સ પુરાતત્વ માટે એક તક છે. જ્યારે તમે સિસ્ટમમાં ઊંડા હોવ ત્યારે, ટુકડાઓ કેવી રીતે જોડાય છે તે ખરેખર સમજો છો, તમે હજી પણ શું જરૂરી છે તે પ્રશ્ન કરવા માટે યોગ્ય સ્થિતિમાં છો. કોઈ જૂના પ્રોજેક્ટમાંથી તે કતાર? એક સમયના ડેટા સ્થળાંતર માટે કોઈએ બનાવેલ કાર્યકર? સુનિશ્ચિત કાર્ય કે જે તમે ક્યારેય સાંભળ્યું ન હોય તેવી સુવિધાનો સંદર્ભ આપે છે? તેઓ હજુ પણ ચાલી રહ્યા હોઈ શકે છે.અહીં અમે અમારી પ્રક્રિયામાં આગળ જઈ રહ્યા છીએ તે અહીં છે:કોઈપણ રિફેક્ટર દરમિયાન, પૂછો: આ સિસ્ટમને બીજું શું સ્પર્શે છે કે જેને અમે થોડા સમય પહેલા જોયું નથી? જ્યારે કોઈ સુવિધાને અવમૂલ્યન કરતી વખતે, તેને તેની પૃષ્ઠભૂમિ પ્રક્રિયાઓ સુધી ટ્રેસ કરો, માત્ર વપરાશકર્તા-ફેસિંગ કોડ જ નહીં. જ્યારે કોઈ ટીમ છોડી દે છે, ત્યારે દસ્તાવેજ કરો કે તેઓ હજી પણ અમારી જૂની સામગ્રીનો હવાલો સંભાળતા હતા તે પૃષ્ઠભૂમિના પાર્ટ્સનો તેઓ શું હવાલો સંભાળતા હતા. કોડબેઝ કે જે હજુ સુધી સિંગલ રિપોઝીટરીમાં સ્થાનાંતરિત કરવામાં આવ્યું નથી. જેમ જેમ અમે એકીકૃત કરવાનું ચાલુ રાખીએ છીએ તેમ, અમને વિશ્વાસ છે કે અમે આ છુપાયેલા અવશેષોમાંથી વધુ શોધીશું. પરંતુ હવે અમે તેમને પકડવા અને નવા બનવાથી રોકવા માટે સેટઅપ છીએ. જ્યારે તમારો તમામ કોડ એક જ જગ્યાએ રહે છે, ત્યારે અનાથ ઇન્ફ્રાસ્ટ્રક્ચરને છુપાવવા માટે ક્યાંય નથી.

You May Also Like

Enjoyed This Article?

Get weekly tips on growing your audience and monetizing your content — straight to your inbox.

No spam. Join 138,000+ creators. Unsubscribe anytime.

Create Your Free Bio Page

Join 138,000+ creators on Seemless.

Get Started Free