Skip to content

Commit

Permalink
legacy-system: add summary
Browse files Browse the repository at this point in the history
  • Loading branch information
evan361425 committed Jun 16, 2023
1 parent aa13b71 commit 9672bb9
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 17 deletions.
3 changes: 3 additions & 0 deletions src/feedback/site-reliability-workbook/index.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
# 網站可靠性的工作手冊

The Site Reliability Workbook, Practical Ways to Implement SRE

- [勞動力](./toil.md)
- [處理舊有系統](./legacy-system.md)
36 changes: 20 additions & 16 deletions src/feedback/site-reliability-workbook/legacy-system.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,25 +7,24 @@ image: https://i.imgur.com/ahOz6F6.png
# 處理舊有系統

舊有系統(Legacy system)對許多開發者來說,是場惡夢。
它通常有幾個特點:

舊有系統通常有幾個特點:

- 這個系統從早期便有;
- 和很多既有的系統有些隱晦的聯繫;
- 通常是個不重要的系統;
- 這個系統從早期便存在;
- 和很多既有的系統有隱晦的聯繫;
- 是個在商務邏輯中不重要的系統;
- 長期穩定的運行,沒有發生過什麼會導致多系統崩潰的情況。

由於他的穩定,導致沒必要去改,由於他的盤根錯節,導致要去改很困難。
進而引起它變成舊有系統:使用舊的運行系統、舊的語言版本、舊的相依套件等等。

在處理舊有系統時,通常會有五個方法。
這些方法並不僅僅只是獨立的方法,更有甚者,它們可能是一系列處理舊有系統的步驟
這些方法並不僅僅只是獨立的方法,更有甚者,它們可能是[一系列處理舊有系統的步驟](#方法的整合)

- 擱置(Avoidance)
- 包裝(Encapsulation)
- 擴充(Augmentation)
- 替換、撤除(Replacement、Retirement)
- 託管(Custodian)
- [擱置](#擱置)(Avoidance)
- [包裝](#包裝)(Encapsulation)
- [擴充](#擴充)(Augmentation)
- [替換、撤除](#替換撤除)(Replacement、Retirement)
- [託管](#託管)(Custodian)

## 擱置

Expand Down Expand Up @@ -70,8 +69,13 @@ image: https://i.imgur.com/ahOz6F6.png

上面提到的這些方法其實也可以整合成一整套的改動步驟:

- 我們意識到舊有系統的改動要付出大量精力,於是擱置。
- 後來決議還是要改,於是你先把舊有系統包裝起來。
- 並且配合一些新的資安規範,例如使用新版的套件來解決 [CVE](https://www.cvedetails.com/)
- 逐漸替換部分功能,並使用線上資料確保正確性,最後完整撤除舊的。
- 當舊有系統對某個團隊仍是必要的,就把保管權託管於它。
- 我們意識到舊有系統的改動要付出大量精力,於是 *擱置*
- 後來決議還是要改,於是你先把舊有系統 *包裝* 起來。
- 並且配合一些新的規範或要求來 *擴增*,例如使用新版的套件來解決 [CVE](https://www.cvedetails.com/)
- 逐漸 *替換* 部分功能,並使用線上資料確保正確性,最後完整 *撤除* 舊的實作。
- 當舊有系統對某個團隊仍是必要的,就把保管權 *託管* 於它。

## 總結

舊有系統是需要跨單位之間的努力,在處理的過程很有可能是曠日費時的。
對他抱有耐心並持續一小段一小段的解決,這便是處理舊有系統的心法。
13 changes: 13 additions & 0 deletions src/feedback/site-reliability-workbook/toil.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
tags: SRE-workbook
---

# 勞動力

通常公司長到一定程度,很可能會花很多時間在勞動力的付出,例如人工手動的流程等等。

在減少這些勞動力的過程是個有趣而艱難的問題,大致分成三段:

- identify,定義勞動力
- quantify,賦予指標,確保減少勞動力是必要或者有成效的
- work toward eliminating it,自動化的實踐
2 changes: 1 addition & 1 deletion src/latest-works.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,6 @@

![處理舊有系統](https://i.imgur.com/ahOz6F6.png)

> 透過 [Bing Image Creator](https://www.bing.com/images/create) 去產生。
> [Bing Image Creator](https://www.bing.com/images/create)
[處理舊有系統](feedback/site-reliability-workbook/legacy-system.md),舊有系統對許多開發者來說是場惡夢,有什麼好方法處理它嗎?。

0 comments on commit 9672bb9

Please sign in to comment.